El teu blog de Linux en català

Cracking de claus WEP per ipw2200 al Jaunty Jackalope (Ubuntu 9.04) – 1. Instal·lant els mòduls

Seguint amb el tutorial que el Jordi va fer fa temps, m’agradaria iniciar un nou tutorial que tindrà dues parts.

A la primera part s’explicarà com instal·lar els mòduls (drivers) per poder fer que la vostra targeta inalàmbrica pugui injectar paquets.

A la segona part s’explicarà com fer funcionar el programa aircrack-ng per poder fer (crackejar) petar les xarxa inalàmbrica, també dites wifi.

0. Preàmbul. Quan fer-ho servir

Aquest programa, i en concret aquest tutorial, no s’ha d’usar malintencionadament. Aquesta guia s’ha fet amb el pròposit de comprovar la seguretat de les xarxes inalàmbriques, i en concret, la seguretat de la de casa vostra.

Aquesta primera part del tutorial no és indispensable per poder crackejar una xarxa wifi. Si no us en sortiu amb la injecció podeu, podeu seguir la segona part del tutorial, on s’explica com capturar paquets. Així, quan n’haveu recollint uns 40.000 o 60.000, ja podreu desxifrar la contrasenya de la xarxa wifi sense necessitat d’haver-ne d’injectar. Tanmateix, no em faig responsable del temps que es tardi seguint aquest mètode. Tot dependrà del tràfic generat per les persones que usin aquesta xarxa.

1. Identificant el maquinari

Primer de tot, s’ha de comprovar la targeta inalàmbrica que teniu.

lspci | grep Network

Si surt una sortida com aquesta.

06:05.0 Network controller: Intel Corporation PRO/Wireless 2200BG [Calexico2] Network Connection (rev 05)

S’està fent servir la targeta inalàmbrica Intel Pro Wireles 2200BG, i el controlador que s’utilitza s’anomena ipw2200. Per assegurar-se del mòdul que s’utilitza.

lsmod | grep ipw2200

Efectivament, s’ha d’estar usant usant aquest mòdul, i per tant, s’obtindrà quelcom semblant a:

ipw2200 191432 0
ieee80211 55020 1 ipw2200

Un cop identificat el maquinari, s’explicarà com instal·lar els mòduls amb suport per injectar paquets. Si la targeta que s’està usant no és aquesta, podeu buscar-ne el controlador a Internet a partir de la informació del maquinari i del mòdul que s’ha obingut d’executar les ordres anterior, i afegint la paraula “injecció” al cercador.

2. Consideracions preliminars

Aquest tutorial s’ha provat en un Ubuntu 9.04 Jaunty Jackalope, amb la versió del nucli 2.6.28-14-generic. Tanmateix, no hi hauria d’haver cap problema en instal·lar el mòdul en qualsevol altra versió de la branca del nucli 2.6.28. Si ho proveu amb un altre nucli o amb un altre sistema que no sigui l’Ubuntu 9.04 Jauny Jackalope, us agrairia que ho escrivíssiu als comentaris, perquè així ajudareu altra gent amb el vostre sistema. Per comprovar la versió del nucli que s’utilitza.

uname -r

Com que es necessita compilar els mòduls, és necessari que tinguem instal·lats els build-essentials.

sudo aptitude install build-essential

Com que s’ha d’afegir un mòdul al nucli, cal instal·lar les capçaleres del Linux.

sudo aptitude install linux-headers-`uname -r`

Ara ja està tot enllestit per passar al següent pas, la instal·lació dels mòduls al nucli. Cada cop que s’instal·la un nou nucli, es perdrà la capacitat d’injecció i s’haurà de fer tot el procés de nou. Per tant, es recomana que sempre que s’auditi la seguretat d’una xarxa inalàmbrica, s’entri des del nucli on s’ha recompilat el nou mòdul amb suport per a la injecció de paquets.

3. Instal·lant els mòduls amb suport per a la injecció de paquets

Creem una carpeta per tenir-ho tot ordenat.

mkdir wifi; cd wifi

Descarreguem l’arxiu on hi ha els mòduls a instal·lar.

wget http://gnulinux.cat/dev/Injeccion_p1mp4m.tar.gz

Ho descomprimirem.

tar zxvf ieee80211-1.2.18.tgz
tar zxvf ipw2200-1.2.2.tgz
tar zxvf ipw2200-fw-3.1.tgz

Apliquem els pedaços.

patch -p0 < ieee80211-1.2.18_p1mp4m.patch
patch -p0 < ipw2200-1.2.2_p1mp4m.patch

Eliminem la versió anterior, compilem i instal·lam l’ieee80211-1.2.18.

cd ieee80211-1.2.18/
chmod +x remove-old
sudo ./remove-old
sudo make SHELL=/bin/bash
sudo make install SHELL=/bin/bash

Eliminem la versió anterior, compilem i instal·lam l’ipw2200-1.2.2.

cd ../ipw2200-1.2.2/
chmod +x remove-old
sudo ./remove-old
sudo make SHELL=/bin/bash
sudo make install SHELL=/bin/bash

Instal·lem la nova versió del firmware. S’ha de tenir present que en altres distribucions com ara el Debian, la carpeta on es s’emmagatzema el firmware pot canviar de lloc.

cd ../ipw2200-fw-3.1/
sudo cp ./* /lib/firmware/`uname -r`/

Editem o creem l’arxiu /etc/modprobe.d/options.conf perquè es carregui el mòdul automàticament a l’engegar l’ordinador.

gedit /etc/modprobe.d/options.conf

Hi afegim aquesta línia

options ipw2200 rtap_iface=1 led=1

Esborrem els mòduls ieee80211 i ipw2200 que estan carregats ara mateix. (Opcionalment podeu veure els mòduls que estan actualment carregats executant lsmod | grep ieee80211.)

sudo rmmod ieee80211
sudo rmmod ieee80211_crypt
sudo rmmod ipw2200

Carreguem els mòduls recentment compilats.

sudo modprobe ipw2200 rtap_iface=1

Si heu arribat fins aquí, felicitats, ja teniu la targeta preparada per injectar tants paquets per segon com vulgueu.

Agraïments

Gràcies especialment a l’usuari sky i bugmenot de p1mp4m.es, per la seva inestimable contribució.

Fonts

http://www.p1mp4m.es/index.php?showtopic=137

    • roger on 9 d'octubre de 2009 at 14:31

    Reply

    Per poder fer un atac a una xarxa wifi, primer has de tenir preparat l’ordinador. Tot i ser un procés una mica feixuc, està molt ben explicat. Ara només falta la segona part…

    • Pauet on 9 d'octubre de 2009 at 19:50

    Reply

    Petit lapsus d’en Roger que per “atacar” es refereix a comprovar la seguretat de la xarxa pròpia o la d’altres que hi estiguin d’acord sabent exactament tot el que se l’hi està fent a a la seva xarxa.
    Tot sigui dit sense cap anim de polemitzar, i amb el màxim respecte.

    • KuBe on 9 d'octubre de 2009 at 21:57

    Reply

    Uff qin liu…

    Al meu EeePC q té una atheros, només cal instal·lar el aircrack-ng (que està a repositoris), matar els processos de xarxa, i apa.

    • guillem on 10 d'octubre de 2009 at 12:22

    Reply

    Kube, així la teva targeta de xarxa atheros ja ve compilada per defecte amb suport per a la injecció de paquets?

    Sí és així em sorpren molt gratament. La veritat és que encara no entenc perquè no fiquen els mòduls amb suport per a la injecció per defecte. No té sentit!

    • KuBe on 10 d'octubre de 2009 at 13:36

    Reply

    Amb els drivers lliures ath5k, que venen per defecte no té cap problema per injectar.

    • roger on 10 d'octubre de 2009 at 21:39

    Reply

    Tens raó Pauet! S’ha de dir ‘comprovar la seguretat de la xarxa’. 🙂

    En qualsevol cas, el més important del que vaig comentar és que tot el procés està ben explicat. Que vagi bé!

    • fdelapena on 5 de novembre de 2009 at 04:32

    Reply

    Hola! Sóc el que va donar informació extra per a la recepta de ipw2200 al jaunty (escrivia amb el nick bugmenot).

    Era per dir que ja hi ha informació disponible de com parxejar el mòdul clàssic (ipw2200 + ieee80211) sense recompilar kernel per a versions posteriors a la 2.6.24 (i 28). Això significa que ja es pot fer amb la 9.10 Karmic Koala!

    Malauradament p1mp4m.es sembla que finalment ha caducat. És una llàstima perquè era una font gairebé primària sobre cóm injectar amb la nostra “vella” tarja típica dels portàtils amb centrino. És per tant que escric per aquí per informar del tema.

    Aquesta web té els canvis necessaris:
    http://precompiled.de/~jamx/

    No posa res del rtap fix. Crec que és important perquè al menys a mi em dona kernel panics sovint amb el driver genèric del kernel en totes les ubuntus. No sé si tenia res a veure amb aquell fix. En tot cas escriu-me si tens novetats, jo aniré fent el mateix aquest dies en un moment lliure.

    He activat la notificació de resposta al fil per si vols parlar per aquí, o escriu-me al mail.

    Salut!

    • fdelapena on 5 de novembre de 2009 at 04:38

    Reply

    Rectifico sobre el problema de rtap, ho posa a la web. Quina vista!
    – Fixed problem with rtap interface on newer kernels

    En fi, a provar s’ha dit!

    • fdelapena on 5 de novembre de 2009 at 07:09

    Reply

    Més fusta!

    No recordava que hi ha un problema al compilar l’stack ieee80211, cal un patch. He trobat aquest patch que està indirectament relacionat. Tot radica d’un canvi al kernel 2.6.31.

    He trobat un patch perquè compili ieee80211 de moment. Quan acabi el patch (si cal, que és provable) per al driver, també el posaré

    cal fer a ieee80211_module.c:
    al lloc que hi ha entre les linies 132 i 134 que hi ha un espai en blanc, afegir :
    static struct net_device_ops interceptor_netdev_ops = {
    .ndo_start_xmit = ieee80211_xmit,
    .ndo_change_mtu = ieee80211_change_mtu,
    .ndo_get_stats = ieee80211_generic_get_stats,
    };

    comentar amb // aquestes tres linies que es troben a partir de la 154 aproximadament:

    // dev->hard_start_xmit = ieee80211_xmit;
    // dev->change_mtu = ieee80211_change_mtu;

    // dev->get_stats = ieee80211_generic_get_stats;

    i afegir-hi aquesta:
    dev->netdev_ops = &interceptor_netdev_ops;

    • guillem on 5 de novembre de 2009 at 10:23

    Reply

    Hola fdelapena, que bo trobar-nos un altre cop per la xarxa. La veritat és que gràcies a tu i a l’sky vaig aconseguir, per fi, poder injectar paquets, així que us estic molt agrait 🙂

    Com que l’sky em va dir que aviat caducaria la seva web, li vaig comentar que escriuria una anotació amb la informació que tenia a la meva web perquè no es perdés tot el que haviem tret. Així, vaig copiar el seu tutorial amb alguns petits canvis.

    De moment agrair-te per informar de l’estat del pedaç pel Karmik. A veure si entre tots ho traiem i publico una guia actualitzada.

    Quan tingui una mica de temps lliure m’ho miraré amb calma i ho intentaré compilar.

    El que et volia comentar és si creus que podem aprofitar el tutorial que hi ha escrit aquí (amb el fitxer Injeccion_p1mp4m.tar.gz) modificant-ne l’arxiu que comentes al 3r comentari, o si creus que no es pot i se n’ha d’escriure un de nou?

    Bé, en tot cas moltes gràcies per informar. Jo quan m’hi pugui ficar també ho comentaré per aquí, així altra gent que tingui la nostra mítica i vella targeta se’n pot aprofitar.

    Salut!!

    • guillem on 5 de novembre de 2009 at 12:04

    Reply

    fdelapena: una pregunta que potsembla obvia, has provat d’injectar sense apedaçar el nucli?

    En KuBe més amunt ens comenta que amb la serva targeta Atheros ja pot injectar sense haver de fer res.

    Si ho has provat i no té supor per injectar per defecte, saps perquè capen el suport per injecció als controladors lliures com el nostre?

    Salut!

    • fdelapena on 5 de novembre de 2009 at 15:32

    Reply

    Hola de nou! Doncs he de provar el suport de la versió del kernel però hi ha un bug amb el rtap de fa temps i al karmic persisteix.

    Malgrat la interfície rtap0 no s’aixeca per defecte es pot aixecar amb sudo ifconfig rtap0 up i un sniffer com el wireshark pot veure els paquets del veinat. Malauradament tard o d’hora el sistema se’m penja amb un kernel panic (es queda fent pampallugues un dels LEDs del teclat). Aquest problema no me’l donava amb el pedaç per al jaunty. Miraré si es per casualitat cosa del firmware també, provant si se soluciona aquest problema canviant entre la 3.0 i la 3.1.

    El que he penjat dalt està fet després de passar el pedaç per al ieee80211 de p1mp4m. Vaig verificar què compila mès o menys però calia fer els canvis també a ipw2200 però encara sense èxit (em va petar després de fer uns nyaps, modificar structs amb dimensions no sanejades dóna warnings i al fer modprobe fa kernel panic ipso facto). Això encara pot costar bastant, caldrà paciència i mirar més pedaços que vaig mirant que van ficar al kernel “mainline”.

    Bàsicament crec què el que cal és adaptar el driver al sistema a la nova struct net_device_ops. Hi ha uns quants retalls. Aquest de dalt el vaig trobar a un fòrum en koreà.

    Parlem!

    • KuBe on 5 de novembre de 2009 at 17:44

    Reply

    He de dir que amb karmic se’m fa impossible injectar de forma normal, degut a que certs processos no es deixen matar.
    L’altre dia vaig estar provant amb la distribució wifiway i és impressionant com es posa a injectar a l’instant sense queixar-se quan amb jaunty acostumava a trigar una mica.

Deixa un comentari

Your email address will not be published.