divendres 27 de novembre de 2009

Recuperació de claus WEP

Qui no s'a trobat mai a casa que es volia connectar-se a internet via wifi i no ha pogut ja que havia perdut la clau del clàssic router de telefònica... Doncs els següent tutorial ho explica des de una distribució de Linux.

Requeriments previs:
  1. El requeriment inicial i més important és tenir un adaptador WIFI que funcioni bé a Linux. Executant
    iwconfig
    podreu saber el nom d'aquest adaptador. Pel reste de tutorial, ens referirem a aquest com a device.

  2. Abans de començar hem de tenir instal·lat el famós aircrack. Via línia de comandes seria:
    sudo aptitude install aircrack-ng
    En el següent packet ja hi ha inclòs programes com el airmon-ng, que permet posar la targeta wifi en mode monitor; airodump-ng, que ens permet capturar packets de dades; aireplay-ng que ens permet injectar packets per tal d'accelerar el procés; entre d'altres.

  3. (El següent punt no és 100% necessari, així que si voleu fer via podeu saltar al punt 3 tenint en compte les conseqüències que això comporta, que són poques).
    A vegades també és recomanable instal·lar el macchanger de cara a canviar la mac de l'adaptador WIFI. Tot i així pels que sabeu de què va, podeu estalviar-vos instal·lar-lo ja que ifconfig té una opció que ho permet fer. Per a més informació de ifconfig,
    man ifconfig
    o visiteu el següent enllaç (que és el manual de internet).
    Per la resta de mortals, us recomano instal·lar el macchanger. Hi ha dues versions

    • La primera que és la de la línia de comandes normal i corrent que s'instal·la com
      sudo aptitude install macchanger
      i que per canviar la mac simplement s'executa
      macchanger -m XX:XX:XX:XX:XX:XX device
      on XX:XX:XX:XX:XX:XX és la nova mac i device és el nom de la interfície la qual volem canviar la mac (en el nostre cas el de la interfície wifi).
      Per a comprovar quina és la mac actual només cal executar macchanger device

    • I la segona que es basa en la línia de comandes però afegeix una interfície gràfica més amigable. Aquest s'instal·la executant:
      sudo aptitude install macchanger-gtk
      i el seu funcionament no cal explicar-lo ja que és obvi.


  4. Ara és el torn de instal·lar el wlandecrypter. Aquest és el programa que genera un diccionari per a poder desencriptar la clau WEP amb només 4 packets.
    Abans de res, hem d'assegurar-nos que tenim les llibreries nessesaries per a compilar el programa amb c. Si esteu usant una distribució basada amb Debian (Ubuntu, etc ) ja deureu tenir el gcc instal·lat com deu mana i només caldrà que instal·leu un packet que es diu build-essential. Per tant executeu
    sudo aptitude install build-essential
    Dins aquest hi ha llibreries per a C com ara stdio.h, entre moltes altres.
    Ara hem d'aconseguir una versió d'aquest software. Al següent enllaç us podeu descarregar el programa com el codi font:

    Fòrum on està penjat el link del programa (també hi ha una versió per windows)


    Enllaç directe a WLANDECRYPTER 1.1

    Enllaç directe a WLANDECRYPTER 1.1 (Codi Font)

    Un cop teniu l'arxiu .tar.gz descarregat, descomprimiu la carpeta allà on us convingui. A dins aquesta hi ha quatre arxius. Un makefile, un README, el codi font, i un programa compilat ves a saber sota quines condicions. Dins el README hi ha informació sobre com fer anar el programa i tal. En cas que tinguéssiu algun dubte després d'aquest tutorial, mireu-lo allà que segurament trobareu la resposta.
    Pel que fa a la instal·lació executeu:
    make clean
    per a netejar la versió que hi pugui haver.
    make
    per a compilar la versió. (Cal assegurar-se de tenir les llibreries necessàries).
    sudo make install
    per a instal·lar el programa al sistema.

    El programa sempre es pot desinstal·lar fent:
    sudo make uninstall

Excepte si heu tingut algun problema, ara ja estaríeu preparats per a començar a "treballar".
  1. El primer pas es posar l'adaptador wireless en el mode monitor. Això és pot fer executant
    sudo airmon-ng start device
    (on recordem que device ens referim pel nom de l'adaptador que hem obtingut al pas 1 dels requeriments previs).
    Quan s'executa aquesta comanda, el programa ens hauria de retornar el nom de un adaptador nou que l'anomenarem com a device2.

  2. Ara, per anar bé, hauríem de canviar la mac de device2. Tot i així, si no es fa tampoc passa res sempre i quan ens importi poc el fet que quedi registrada la nostra mac real al router.

  3. Ara ja podem començar a executar el capturador de packets airodump executant
    sudo airodump-ng -w nom_arxiu -s 1 device2
    on nom_arxiu es el nom que prendrà els diferents fitxers generats per airodump i device2 es, com ja s'ha comentat el nou adaptador de xarxa generat per airmon al punt 1.
    Ara ens hauria de sortir una pantalla com la següent:


    Ara només podem resar perquè tinguem a l'abast una xarxa de l'estil WLAN_XX (on XX són dos valors en base Hexadecimal).
    Un cop trobada, només hem d'esperar a que es transmetin NOMÉS 4 packets de dades (que és el numeret de la columna DATA).

  4. Com molts podreu observar, que es compleixi aquest cas que algú estigui connectat en aquell mateix moment és difícil (sobretot tenint en compte que representa que som nosaltres mateixos que hem perdut la clau XD), per tant haurem d'injectar packets. Tot i que ho volia deixar per més endavant l'us de aireplay, executant aquestes dues comandes, A UN TERMINAL DIFERENT, hauria de ser suficient. Per a mes informació ... GOOGLE AIREPLAY-NG. Abans però reexecuteu airodump especificant el canal de la WLAN_XX objectiu amb
    sudo airodump-ng -w nom_arxiu -c canal device2
    on canal és el canal numèric
    sudo aireplay-ng -1 20 -a bssid -e essid device2
    on bssid és la direcció mac del punt d'accés que són els valors de la primera columna de airodump, essid és el nom de la xarxa que en aquest cas ha de ser una cosa de l'estil WLAN_XX i device2 qua ja sabeu de què va.
    Un cop us digui que l'autenticació s'ha dut amb èxit, executar la injecció. Preferiblement a un altre terminal deixant el de l'autenticació anar fent.
    sudo aireplay-ng -3 -b bssid device2
    anàleg de l'anterior.

  5. Un cop ja hem capturat com a mínim aquests 4 packets, ja hagin estat generats per nosaltres o no, podem fer un ctrl+c general per anar parant fins les 3 execucions de les diferents terminals. De fet ara podríem marxar de vacances i quan tornéssim a usar els fitxers que s'han generat igual. Per tant ara ja podríem parar el mode monitor executant
    sudo airmon-ng stop device
    anàleg de l'anterior.
    Òbviament això de parar-ho no cal en el cas que vulguem continuar buscant més xarxes. Tot i així l'aireplay val la pena ja que no ens servirà per a una altra xarxa.

  6. Ara ja podem generar la biblioteca amb wlandecrypter executant
    wlandecrypter bssid essid nom_arxiu_biblioteca.txt
    on bssid és el de la primera columna del resultat de l'airodump, essid és el nom de la xarxa que ha de ser del tipus WLAN_XX i nom_arxiu_biblioteca.txt és el nom del fitxer de sortida on estarà la biblioteca.
    Pels qui no sapigueu el nom del bssid perquè ja no veieu el resultat de airodump amb tant follon, fen un cat del fitxer .csv generat per aquest, us sortirà un llistat de totes les xarxes que heu anat capturant packets.

  7. I ja per acabar, un cop generat el fitxer diccionari, podeu executar l'aircrack per a obtenir la clau.
    sudo aircrack-ng -b bssid -w nom_arxiu_biblioteca.txt -K captura.cap
    on bssid és el de sempre, nom_arxiu_biblioteca.txt és el generat per wlandecrypter i captura.cap és el .cap generat per airodump.
    Amb qüestió de segons us sortirà la clau, tant en Hexadecimal com en ASCII.

Cal fer notar que tot aquest procediment també serveix per les xarxes tipus JAZZTEL_XX. Simplement, enlloc de descarregar-se el wlandecrypter, us heu de descarregar el jazzteldecrypter del següent enllaç. Com podreu observar és el codi font, doncs només cal que el compileu i llestos. Pel que fa al funcionament és exactament al mateix canviant allà on digui wlan per jazztel.

Qui tingui problemes que deixi el comentari aquí sota!
(Tothom es pot equivocar en algun detall)

4 comentaris:

Masanot ha dit...

no seria més fàcil un:

sudo gimme me the password

sempre complicant-te la vida... xD

Moha.G ha dit...

ahahahhahah k bona massanes,
PD:però si amb 4 paquets en tens prou, l'aireplay-ng ja no fa falta!!! l'aireplay serveix per aconseguir uns quants milers de paquets en poc temps...

SäNtä ha dit...

Moha, el problema es que et pots trobar que no hi hagi ni una mica de trafic... i que per tant te l'hagis de generar tu mateix.

Al cap i a la fi, hi hauria d'haver força quantitat de xarxes que fossin de timofonica i que no estiguessin configurades per a augmentar la probabilitat que algú estigui connectat en aquell precís instant.

Marq Martí ha dit...

Molt bó!