Seguretat en xarxes inal.làmbriques

De wikijoan
Salta a la navegació Salta a la cerca

Referències

Desenvolupament

$ sudo apt-get install wireless-tools
$ lspci | grep Network
03:03.0 Network controller: Intel Corporation PRO/Wireless 2200BG [Calexico2] Network Connection (rev 05)

En el cas de què tinguis una interfície de xarxa inal.làmbrica USB:

$ lsusb
..
Bus 001 Device 003: ID 0ace:1211 ZyDAS 802.11bg
...

Primer de tot configurarem la xarxa inal.làmbrica com a Open. (feina per fer-la a casa, suposant que tinguis una connexió ADSL, no obligatori d'altra banda) Típicament... (Router Comtrend de Jazztel, model model AR-5381u)

http://192.168.1.1
admin/admin

Suposant que tenim la wireless de la nostra ADSL activada i encriptada, anem a fer una xarxa Oberta (sense seguretat) Anem a l'apartat wireless, i efectivament està activat l'opció Enable Wireless. El primer de tot és apuntar-se la nostra configuració actual. La majoria dels routers tenen l'opció de guardar la configuració del router en un fitxer. En l'apartat Wireless > Security canviem la Network Authentication de WPA-PSK a Open. Apply/Save

Ara ja et pots connectar a aquesta xarxa inal.làmbrica oberta.


Ubuntu ve amb les eines gràfiques de xarxa: network-admin. Com sempre, però, nosaltres mirarem de treballar en mode consola.

$ iwconfig
lo        no wireless extensions.

eth0      no wireless extensions.

eth1      IEEE 802.11g  ESSID:"JAZZTEL_8941"  
          Mode:Managed  Frequency:2.462 GHz  Access Point: 38:72:C0:82:89:41   
          Bit Rate:54 Mb/s   Tx-Power=20 dBm   Sensitivity=8/0  
          Retry limit:7   RTS thr:off   Fragment thr:off
          Power Management:off
          Link Quality=86/100  Signal level=-43 dBm  Noise level=-87 dBm
          Rx invalid nwid:0  Rx invalid crypt:2  Rx invalid frag:0
          Tx excessive retries:0  Invalid misc:0   Missed beacon:10

wlan0     IEEE 802.11bg  ESSID:"JAZZTEL_8941"  
          Mode:Managed  Frequency:2.462 GHz  Access Point: 38:72:C0:82:89:41   
          Bit Rate=1 Mb/s   Tx-Power=27 dBm   
          Retry  long limit:7   RTS thr:off   Fragment thr:off
          Power Management:off
          Link Quality=31/100  Signal level=31/100  
          Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0
          Tx excessive retries:0  Invalid misc:0   Missed beacon:0

$ man iwconfig

IWCONFIG(8)                    Linux Programmer's Manual                    IWCONFIG(8)

NAME
       iwconfig - configure a wireless network interface

SYNOPSIS
       iwconfig [interface]
       iwconfig interface [essid X] [nwid N] [mode M] [freq F]
                          [channel C][sens S ][ap A ][nick NN ]
                          [rate R] [rts RT] [frag FT] [txpower T]
                          [enc E] [key K] [power P] [retry R]
                          [modu M] [commit]
       iwconfig --help
       iwconfig --version

El professor treballa amb dues interfícies de xarxa inal.làmbrica, la segona és un llapis USB. Totes dues estan connectades a la ESSID JAZZTEL_8941.

Podem habilitar/deshabilitar les interfícies inal.làmbriques:

$ sudo ip link set wlan0 down

$ wlan0     IEEE 802.11bg  ESSID:off/any  
          Mode:Managed  Frequency:2.462 GHz  Access Point: Not-Associated   
          Tx-Power=27 dBm   
          Retry  long limit:7   RTS thr:off   Fragment thr:off
          Power Management:off

$ sudo ip link set wlan0 up

Evidentment amb ifconfig podem veure que aquestes interfícies inal.làmbriques tenen assignada una IP:

...
eth1      Link encap:Ethernet  HWaddr 00:13:ce:82:8b:b0  
          inet addr:192.168.1.132  Bcast:192.168.1.255  Mask:255.255.255.0
          inet6 addr: fe80::213:ceff:fe82:8bb0/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:5746 errors:2 dropped:2 overruns:0 frame:0
          TX packets:3821 errors:0 dropped:5 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:5248270 (5.2 MB)  TX bytes:433534 (433.5 KB)
          Interrupt:17 Base address:0x2000 Memory:dfcfd000-dfcfdfff 

...
wlan0     Link encap:Ethernet  HWaddr 00:02:e3:49:9e:64  
          inet addr:192.168.1.133  Bcast:192.168.1.255  Mask:255.255.255.0
          inet6 addr: fe80::202:e3ff:fe49:9e64/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:87 errors:0 dropped:0 overruns:0 frame:0
          TX packets:123 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:9866 (9.8 KB)  TX bytes:28876 (28.8 KB)

Podem fer un ping per saber que la interfície wireless (o qualsevol altra està funcionant). El ping té l'opció -I (i) per escollir una interfície:

$ ping -I wlan0 192.168.1.1
PING 192.168.1.1 (192.168.1.1) from 192.168.1.133 wlan0: 56(84) bytes of data.
64 bytes from 192.168.1.1: icmp_seq=1 ttl=64 time=2.19 ms

$ ping -I eth1 192.168.1.1
PING 192.168.1.1 (192.168.1.1) from 192.168.1.133 eth1: 56(84) bytes of data.
64 bytes from 192.168.1.1: icmp_seq=1 ttl=64 time=1.51 ms

Interessant:

$ ip link
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue state UNKNOWN 
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: eth0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc pfifo_fast state DOWN qlen 1000
    link/ether 00:12:3f:ec:2e:81 brd ff:ff:ff:ff:ff:ff
3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 00:13:ce:82:8b:b0 brd ff:ff:ff:ff:ff:ff
5: wlan0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 00:02:e3:49:9e:64 brd ff:ff:ff:ff:ff:ff

o bé

$ ip addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue state UNKNOWN 
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: eth0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc pfifo_fast state DOWN qlen 1000
    link/ether 00:12:3f:ec:2e:81 brd ff:ff:ff:ff:ff:ff
3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 00:13:ce:82:8b:b0 brd ff:ff:ff:ff:ff:ff
    inet 192.168.1.132/24 brd 192.168.1.255 scope global eth1
    inet6 fe80::213:ceff:fe82:8bb0/64 scope link 
       valid_lft forever preferred_lft forever
5: wlan0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 00:02:e3:49:9e:64 brd ff:ff:ff:ff:ff:ff
    inet 192.168.1.133/24 brd 192.168.1.255 scope global wlan0
    inet6 fe80::202:e3ff:fe49:9e64/64 scope link 
       valid_lft forever preferred_lft forever

Veiem que eth1 i wlan0 estan en estat UP.

Encriptació

Ara ja pots activar l'encriptació de la xarxa wireless amb la configuració original que havies guardat. En el cas del professor, seguretat WPA-PSK (la seguretat WEP ja ha quedat una mica anticuada).

La interfície wlan0 no coneixen la clau de seguretat, i no ha establert la connexió de forma automàtica (en el teu cas pots eliminar manualment la clau de pas de la xarxa inal.làmbrica)

$ iwconfig
eth1      unassociated  ESSID:"\x0B\xE1\x1A\x1C\x7F#\xF8)\xF8\xA4\x1B\x13\xB5\xCAN\xE8\x9828\xE0yM=4\xBC_Nw\xFA\xCBl\x05"  
          Mode:Managed  Frequency=2.462 GHz  Access Point: Not-Associated   
          Bit Rate:0 kb/s   Tx-Power=20 dBm   Sensitivity=8/0  
          Retry limit:7   RTS thr:off   Fragment thr:off
          Power Management:off
          Link Quality:0  Signal level:0  Noise level:0
          Rx invalid nwid:0  Rx invalid crypt:13  Rx invalid frag:0
          Tx excessive retries:0  Invalid misc:0   Missed beacon:0

wlan0     IEEE 802.11bg  ESSID:"\xAC\x86!+\xAA\x1AU\xA2\xBEp\xB5s;\x04\\xD36\x94\xB3\xAF\xE2\xF0\xE4\x9EO2\x15I\xFD\x82N\xA9"  
          Mode:Managed  Frequency:2.462 GHz  Access Point: Not-Associated   
          Tx-Power=27 dBm   
          Retry  long limit:7   RTS thr:off   Fragment thr:off
          Power Management:off

Fixar-se que posa Access Point: Not-Associated

La següent comanda ha funcionat a mitges amb la seguretat WPA-PSK (no barallar-s'hi massa...)

$ iwconfig eth1 essid JAZZTEL_8941 key s:MqxNJaQc9TfJ9Q54KGNP
$ iwconfig
eth1      unassociated  ESSID:"JAZZTEL_8941"  
          Mode:Managed  Frequency=2.462 GHz  Access Point: 38:72:C0:82:89:41   
          Bit Rate:0 kb/s   Tx-Power=20 dBm   Sensitivity=8/0  
          Retry limit:7   RTS thr:off   Fragment thr:off
          Power Management:off
          Link Quality:0  Signal level:0  Noise level:0
          Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0
          Tx excessive retries:0  Invalid misc:0   Missed beacon:0


En una xarxa cablejada, això seria equivalent a connectar el cable amb el connector RJ45 a la interfície de xarxa. Tenim accés al nivell 2 però la xarxa IP encara no està configurada. Ara aixequem la interfície i obtenim la configuració de la IP amb el client de DHCP, tot i que també hi podem ficar una IP fixa:

$ sudo ifconfig eth1 up
$ sudo ifconfig wlan0 up
$ ifconfig

eth1      Link encap:Ethernet  HWaddr 00:13:ce:82:8b:b0  
          inet addr:192.168.1.130
...

wlan0     Link encap:Ethernet  HWaddr 00:02:e3:49:9e:64  
          inet addr:192.168.1.129 

Aquests dos passos normalment no els distingim perquè quan es detecta la connexió física automàticament s'assigna una IP (això passa tant a wireless com amb connexió cablejada; però són dos passos lògics diferents).

amb iwlist podem obtenir més informació sobre una interfíci wireless

$ iwlist
Usage: iwlist [interface] scanning [essid NNN] [last]
              [interface] frequency 
              [interface] channel 
              [interface] bitrate 
              [interface] rate 
              [interface] encryption 
              [interface] keys 
              [interface] power 
              [interface] txpower 
              [interface] retry 
              [interface] ap 
              [interface] accesspoints 
              [interface] peers 
              [interface] event 
              [interface] auth 
              [interface] wpakeys 
              [interface] genie 
              [interface] modulation 

Per exemple,

$ iwlist eth1 scanning
eth1      Scan completed :
          Cell 01 - Address: 38:72:C0:82:89:41
                    ESSID:"JAZZTEL_8941"
                    Protocol:IEEE 802.11bg
                    Mode:Master
                    Frequency:2.462 GHz (Channel 11)
                    Encryption key:on
                    Bit Rates:1 Mb/s; 2 Mb/s; 5.5 Mb/s; 6 Mb/s; 9 Mb/s
                              11 Mb/s; 12 Mb/s; 18 Mb/s; 24 Mb/s; 36 Mb/s
                              48 Mb/s; 54 Mb/s
                    Quality=97/100  Signal level=-27 dBm  
                    IE: WPA Version 1
                        Group Cipher : TKIP
                        Pairwise Ciphers (2) : CCMP TKIP
                        Authentication Suites (1) : PSK
                    Extra: Last beacon: 2356ms ago

Seguretat en xarxes inal.làmbriques: aircrack-ng, kismet...

$ sudo apt-get install aircrack-ng

$ man airodump
NAME
       airodump-ng - a wireless packet capture tool for aircrack-ng

$ airodump-ng --help

Capturem paquets

$ sudo airodump-ng --write captura.cap eth1

 CH  1 ][ Elapsed: 0 s ][ 2012-01-16 14:17                                     
                                                                               
 BSSID              PWR  Beacons    #Data, #/s  CH  MB   ENC  CIPHER AUTH ESSID
                                                                               
 00:01:38:F6:35:CD  -76        3        0    0   9  54 . WEP  WEP         ONO97
 00:23:F8:DD:74:6B  -82        2        0    0   9  54 . WEP  WEP         WLAN_
 00:1A:2B:8C:E8:E6  -75        5        0    0   4  54   WPA  CCMP   PSK  WLAN_
 00:01:38:F6:35:CE  -77        2        0    0   9  54 . WPA  TKIP   PSK  ONO02
 38:72:C0:82:89:41  -26        9        2    0  11  54e  WPA  CCMP   PSK  JAZZT
 4C:ED:DE:34:EA:61  -57        9        0    0  11  54e  WPA2 CCMP   PSK  Jazzt
 64:16:F0:46:B5:C6  -58       12        0    0   6  54e  WPA  CCMP   PSK  vodaf
 00:13:F7:97:6A:20  -59       11        5    2   3  54e. WEP  WEP         WLAN7
 38:72:C0:C8:10:4E  -79        2        0    0   1  54e  WPA  CCMP   PSK  JAZZT
 00:26:44:CD:14:28  -81        2        0    0   1  54e  WPA2 CCMP   PSK  ONOCD
 08:76:FF:74:0D:50  -72        6        0    0   1  54e  WPA2 CCMP   PSK  ONO74
                                                                               
 BSSID              STATION            PWR   Rate    Lost  Packets  Probes 

Fem un diccionari amb wlandecrypter:

$ wlandecrypter --help
wlandecrypter <bssid> <essid> [output file]

i si tenim prous paquets ja podem craquejar una connexió encriptada:

$ aircrack-ng --help

AIRCRACK-NG(1)                                                  AIRCRACK-NG(1)

NAME
       aircrack-ng - a 802.11 WEP / WPA-PSK key cracker

SYNOPSIS
       aircrack-ng [options] <.cap / .ivs file(s)>

També podem utilitzar kismet.

Kismet - Wireless 802.11b monitoring tool

Kismet is an 802.11 layer2 wireless network detector, sniffer, and intrusion detection system. Kismet will work with any wireless card which supports raw monitoring (rfmon) mode, and can sniff 802.11b, 802.11a, and 802.11g traffic.

Kismet identifies networks by passively collecting packets and detecting standard named networks, detecting (and given time, decloaking) hidden networks, and infering the presence of nonbeaconing networks via data traffic.

$ sudo apt-get install kismet

$ man kismet

KISMET(1)                 BSD General Commands Manual                KISMET(1)

NAME
     kismet — Wireless sniffing and monitoring

SYNOPSIS
     kismet [server-options] [--] [client-options]

     kismet_server [-nqs] [-t title] [-f config-file] [-c capture-source]
     [-C enable-capture-sources] [-l log-types] [-d dump-type]
     [-m max-packets-per-file] [-g gpshost:port] [-p listen-port]
     [-a allowed-hosts] [-N server-name]

     kismet_client [-qr] [-f config-file] [-s serverhost:port] [-g gui-type]
     [-c display-columns]

DESCRIPTION
     Kismet is an 802.11 layer2 wireless network detector, sniffer, and intru‐
     sion detection system.  Kismet will work with any wireless card which
     supports raw monitoring (rfmon) mode, and can sniff 802.11b, 802.11a, and
     802.11g traffic.

Entrega

Recorda la normativa per entregar les pràctiques al Moodle: ASIX-M11-SAD#Normativa_d.27entrega_de_les_pr.C3.A0ctiques_al_Moodle

to do: entregar el fitxer backupsettings.conf de la configuració del teu router. En el cas del Comtrend de Jazztel (model AR-5381u) es tracta d'un fitxer XML. Detecta la part corresponent a la xarxa inal.làmbrica, i esborra si s'escau la clau secreta de la xarxa. En el cas del professor:

        <PreSharedKey instance="1">
          <KeyPassphrase>MqxNJaQc9TfJ9Q54KGNP</KeyPassphrase>
        </PreSharedKey> 

creat per Joan Quintana Compte, gener 2012