Permessi su network manager 0.7

network_manager

network_manager

La guida ufficiale del wiki si trova a questo link.

pacman -S wireless_tools wpa_supplicant networkmanager


[~] groups
wheel dbus hal network video audio optical storage power users
[~]

Per eseguire l’applet nm-applet con i permessi di utente e senza che tutte le volte venga richiesta la password per sbloccare il portachiavi di gnome dobbiamo prima installare il pacchetto:

[~] yaourt -S gnome-keyring-manager

e lo eseguiamo da utente; una volta aperto andiamo su visualizza -> portachiavi, e cancelliamo tutto quello che si può cancellare selezionando uno ad uno gli elementi che si sono visualizzati nel menu di sinistra con “portachiavi -> elimina portachiavi”.

Poi dobbiamo modificare i file /etc/dbus-1/system.d/NetworkManager.conf e /etc/dbus-1/system.d/nm-applet.conf in questo modo (link della discussione):

[~] sudo cp /etc/dbus-1/system.d/NetworkManager.conf /etc/dbus-1/system.d/NetworkManager.conf.old

[~] sudo cp /etc/dbus-1/system.d/nm-applet.conf /etc/dbus-1/system.d/nm-applet.conf.old


[~] cat /etc/dbus-1/system.d/NetworkManager.conf


<!DOCTYPE busconfig PUBLIC
"-//freedesktop//DTD D-BUS Bus Configuration 1.0//EN"
"http://www.freedesktop.org/standards/dbus/1.0/busconfig.dtd">
<busconfig>
<policy user="root">
<allow own="org.freedesktop.NetworkManager"/>
<allow send_destination="org.freedesktop.NetworkManager"/>
<allow send_interface="org.freedesktop.NetworkManager"/>
<allow own="org.freedesktop.NetworkManager.PPP"/>
<allow send_destination="org.freedesktop.NetworkManager.PPP"/>
<allow send_interface="org.freedesktop.NetworkManager.PPP"/>
</policy>
<!-- My hack -->
<policy group="network">
<allow send_destination="org.freedesktop.NetworkManager"/>
<allow send_interface="org.freedesktop.NetworkManager"/>
</policy>
<!-- End of my hack -->
<policy at_console="true">
<allow send_destination="org.freedesktop.NetworkManager"/>
<allow send_interface="org.freedesktop.NetworkManager"/>
</policy>
<policy context="default">
<deny own="org.freedesktop.NetworkManager"/>
<deny send_destination="org.freedesktop.NetworkManager"/>
<deny send_interface="org.freedesktop.NetworkManager"/>
<deny own="org.freedesktop.NetworkManager.PPP"/>
<deny send_destination="org.freedesktop.NetworkManager.PPP"/>
<deny send_interface="org.freedesktop.NetworkManager.PPP"/>
</policy>
<limit name="max_replies_per_connection">512</limit>
</busconfig>
[~]


[~] cat /etc/dbus-1/system.d/nm-applet.conf

<!DOCTYPE busconfig PUBLIC
"-//freedesktop//DTD D-BUS Bus Configuration 1.0//EN"
"http://www.freedesktop.org/standards/dbus/1.0/busconfig.dtd">
<busconfig>
<policy user="root">
<allow own="org.freedesktop.NetworkManagerUserSettings"/>
<allow send_destination="org.freedesktop.NetworkManagerUserSettings"/>
<allow send_interface="org.freedesktop.NetworkManagerSettings"/>
<!-- Only root can get secrets -->
<allow send_interface="org.freedesktop.NetworkManagerSettings.Secrets"/>
</policy>
<!-- My hack -->
<policy group="network">
<allow own="org.freedesktop.NetworkManagerUserSettings"/>
<allow send_destination="org.freedesktop.NetworkManagerUserSettings"/>
<allow send_interface="org.freedesktop.NetworkManagerUserSettings"/>
<deny send_interface="org.freedesktop.NetworkManagerSetting.Secrets"/>
</policy>
<!-- end of my hack -->
<policy at_console="true">
<allow own="org.freedesktop.NetworkManagerUserSettings"/>
<allow send_destination="org.freedesktop.NetworkManagerUserSettings"/>
<allow send_interface="org.freedesktop.NetworkManagerSettings"/>
<!-- Only root can get secrets -->
<deny send_interface="org.freedesktop.NetworkManagerSettings.Secrets"/>
</policy>
<policy context="default">
<deny own="org.freedesktop.NetworkManagerUserSettings"/>
<allow send_destination="org.freedesktop.NetworkManagerUserSettings"/>
<allow send_interface="org.freedesktop.NetworkManagerSettings"/>
<!-- Only root can get secrets -->
<deny send_interface="org.freedesktop.NetworkManagerSettings.Secrets"/>
</policy>
<limit name="max_replies_per_connection">512</limit>
</busconfig>
[~]

Impostiamo che l’applet venga eseguita all’avvio, per openbox ad esempio:

[~] cat .config/openbox/autostart.sh
...
# blocco network-manager
ck-launch-session &
/usr/bin/nm-applet &
...

impostiamo che i demoni nell’ordine dhcdbd e networkmanager vengano eseguiti all’avvio e riavviamo.

Quando apparirà la finestra per inserire una password per cifrare le password in gnome, premere <invio> senza inserire niente, in questo modo quella finestra non comparirà più.

ath5k,madwifi e wpa1/2

Sono ancora troppo contento per essere riuscito finalmente a far funzionare la rete cifrata in wpa2 sia con il modulo ath_pci che con quello in sviluppo ath5k, quindi salvo subito le configurazioni pubblicandole nel blog, magari potranno servire anche ad altri :-)

Le configurazioni per netcfg2 sono quelle classiche e non richiedono alcun parametro aggiuntivo, comunque:

[~] cat /etc/network.d/home
#
# Network Profile
#
CONNECTION="wireless"
DESCRIPTION=""
# Network Settings
INTERFACE=wlan0 #per ath5k
#INTERFACE=ath0 #se si usa ath_pci
HOSTNAME="acerone"
# Interface Settings
IP="static"
IFOPTS="192.168.0.6 netmask 255.255.255.0 broadcast 192.168.0.255"
GATEWAY=192.168.0.1
# DNS Settings
DNS1=208.67.222.222
DNS2=208.67.220.220
# Wireless Settings
SECURITY="wpa-config"
ESSID="marinz's_net"
KEY=""
SCAN="no"
TIMEOUT=40
# WPA Specific Settings
WPA_OPTS=""
WPA_CONF="/etc/network.d/wpa_supplicant/home.conf"

e quella per wpa_supplicant:


[~] sudo cat /etc/network.d/wpa_supplicant/home.conf
ctrl_interface=/var/run/wpa_supplicant
ctrl_interface_group=0
fast_reauth=1
#ap_scan=2 #decommentare solo se si usa ath_pci
network={
ssid="marinz's_net"
key_mgmt=WPA-PSK
psk="di almeno 60 caratteri, max 63"
proto=WPA2
}
[~]

Aprire la mia rete WEP

Come si capisce dal titolo preciso subito che questa prova l’ho fatta sulla mia rete wireless per scopo autodidattico, e per vedere se è realmente così facile aprirla come trovo scritto in giro.

Il router (NETGEAR DG834g) per la prova l’ho configurato in questo modo: chiave wep a 128 bit, ESSID nascosto e controllo sui MAC ADDRESS abilitato.

Per la documentazione ho cercato su google e ho seguito i passi di questo articolo che si trova sui primi risultati di ricerca.

Quindi per prima cosa ho installato aircrack-ng già bello e pronto nei repository; poi mi sono scollegato dalla rete e ho avviato airodump-ng:

sudo airodump-ng wlan0

già qui le prime soprese: quel tool scansionando la zona riesce a rilevarmi dopo circa 200 pacchetti (2 minuti di scansione) non solo l’ESSID del router (ricordo che era stato impostato in modo da non venire trasmesso), ma anche il MAC ADDRESS della scheda di rete del computer connesso dove avevo lanciato azureus in download per generare più pacchetti possibili. Sapendo che esistono dei programmi per cambiare l’indirizzo mac di una scheda di rete, e conoscendo l’ESSID, fate voi..

Ho poi effettuato lo sniffing con il comando:

sudo airodump-ng -c 11 -b -w file.ivs wlan0

dove 11 è il canale che ho impostato sul router.
L’ho lasciato sniffare per una ventina di minuti:

CH 11 ][ Elapsed: 23 mins ][ 2009-02-11 10:00

BSSID PWR RXQ Beacons #Data, #/s CH MB ENC CIPHER AUTH ESSID

00:18: x x : x x : x x : x x : -64 100 13671 47543 42 11 54e WEP WEP A9754EE2A

BSSID STATION PWR Rate Lost Packets Probe

00: x x : x x : x x : x x : x x : 00: x x : x x : x x : x x : x x : -91 36- 1 0 58793 A9754EE2A

ho dunque lanciato aircrack-ng:

sudo aircrack-ng file.cap

ottenendo l'output seguente:

Aircrack-ng 1.0 rc2

[00:00:16] Tested 1045090 keys (got 47546 IVs)

KB depth byte(vote)
0 0/ 1 D4(66048 ) 49(57088 ) 5C(55040) 3C(54784) 37(54272) A6(54272) 04(54016)
1 0/ 1 A8(60416) 45(58368 ) 80(55808 ) 7E(55040) 90(55040) 49(54272) 74(54272)
2 0/ 1 EC(62464) D6(56576) 6A(56064) A2(55808 ) AF(55040) 26(53760) 1E(53504)
3 0/ 1 6E(69888 ) C5(58112) 92(57856) 95(57600) D3(57344) 46(56064) 67(55040)
4 0/ 5 FD(56320) CF(55552) C6(55296) 59(54784) 46(54528 ) 69(53760) 68(53504)
5 0/ 1 C4(62464) 1A(58112) 1F(55040) 8C(55040) 5B(54784) F7(54784) 84(54528 )
6 2/ 4 B4(56064) 38(55296) F3(55040) E7(54784) 09(54528 ) 23(54272) D9(54272)
7 0/ 1 AB(59392) 81(57600) 78(57088 ) 6A(56576) AF(55808 ) D7(55296) 26(54784)
8 0/ 1 CD(60160) 61(58368 ) A6(58368 ) 17(58112) 0F(57600) 45(57088 ) 38(56064)
9 0/ 1 7E(64000) 44(59648 ) 13(58880) CE(56064) 42(55296) 12(54784) EA(54528 )
10 0/ 1 10(60160) CB(55296) 9D(55040) 2D(54784) 38(54784) 18(54528 ) 30(54272)
11 0/ 1 B7(55808 ) 83(54528 ) 94(54528 ) 24(54272) 42(54272) 5B(54272) F8(54272)
12 0/ 1 92(56172) AB(53516) C5(53056) C8(52828 ) D8(52828 ) B2(52776) FB(52720)

KEY FOUND! [ D4:A8:EC:6E:FD:C4:A1:AB:CD:7E:F2:60:92 ]
Decrypted correctly: 100%

In una mezzora sono riuscito quindi a documentarmi, installare il programma, a trovare l’ESSID nascosto, il MAC ADDRESS dei pc collegati belli in vista, e la chiave wep a 128 bit, il tutto con una facilità sconvolgente.

Da questa prova ho capito che nascondere il router non serve praticamente a nulla, può allontanare chi ricerca reti con scansioni fatte da tool un pò più normali come wifi-radar, ma sicuramente non chi ricerca reti con questi programmi.

Il controllo sugli indirizzi MAC preferisco comunque tenerlo abilitato, così da rendere un pò più difficile una eventuale penetrazione, ed infine.. corro ad rimettere come cifratura la wpa2-psk :-)

Discovering wireless networks

Free Image Hosting at www.ImageShack.us

Che vicini in gamba.. wao :-(