Prolog
Wi-Fi este acum disponibil în aproape fiecare apartament. Fire invizibile de canale wireless au încurcat mega-orașe și sate, case și case, garaje și birouri. În ciuda securității aparente („ce, am setat parola?!”), lucrătorii vicleni din partea întunecată a IT-ului ocolesc cumva toate aceste protecții și pătrund cu nerăbdare în proprietatea ta privată wireless, simțindu-se acolo ca acasă. În același timp, pentru mulți utilizatori obișnuiți această tehnologie rămâne un mister, transmisă de la o generație la alta de hackeri. Pe Internet, puteți găsi zeci de articole fragmentare și sute de instrucțiuni despre cum să pirateze Wi-Fi. Pacienții sunt invitați să vizioneze un videoclip de antrenament cu selectarea parolei „qwerty123”, dar nu am văzut încă un complet; îndrumător, după cum se spune, „de la și către” pe această temă. Care este exact ceea ce am decis să compensez.
Capitolul 1. Căutați cine beneficiază
Să ne dăm seama de ce cetățenii respectabili (și nu atât de respectabili) încearcă să pirateze Wi-Fi-ul vecinului? Deci, ar putea exista mai multe motive pentru aceasta:
- Internet gratuit. Da, da, mii de școlari, chiar și în era Fido și conexiunile modemului de acum cincisprezece ani, au căutat fără succes în motoarele de căutare același „cracker de internet” magic, descarcând tone de troieni și alte spirite rele pe computerele lor personale. Accesul gratuit la Internet a fost visul suprem al unei întregi generații. Acum situația s-a schimbat semnificativ, ieftin tarife nelimitate sunt disponibile aproape peste tot, dar nu va strica pe nimeni să aibă un canal de rezervă în rezervă non-stop, în cazul în care furnizorul dvs. lipește temporar aripioarele. În plus, există adesea situații precum „uite, el are un canal mai larg decât voi face eu”, care pare să sugereze și utilitatea a ceea ce se întâmplă.
- Călători (și marinari în special). Când Wi-Fi într-un hotel costă 5 euro pe oră, iar comunicarea cu Patria este necesară în mod constant și de preferință în cameră și gratuit, simți valoarea practică a Wi-Fi-ului stricat mai acut ca niciodată. Nu cred că acest lucru are nevoie de comentarii inutile.
- Mirosirea traficului victimei și piratarea ulterioară a conturilor de e-mail, rețelele sociale, asek și alte huliganism. Având în mână parola Wi-Fi, avem posibilitatea de a decripta tot traficul transmis prin aer, inclusiv sesiuni de autentificare pe diferite site-uri, cookie-uri și lucruri mult mai gustoase.
- Spionajul industrial. În prezent, Wi-Fi-ul de birou, setat rapid de un administrator strâmb, este pentru o persoană pricepută doar intrarea principală în rețeaua LAN a organizației și acolo puteți găsi atât de multe lucruri interesante, de la adulmecare de bază a e-mailului și asec până la documente secrete. în foldere partajate și depozite de fișiere.
- Pentesting (din engleza penetration testing - penetration testing). Pentesterii sunt în esență aceiași hackeri (și adesea asta sunt), dar aceștia la ordinele și cu acordul proprietarului rețelei. Sarcinile lor includ verificarea securității și rezistenței rețelei la pătrunderea din exterior (sau întreruperea funcționării acesteia din interior). Având în vedere costul acestui tip de serviciu, este puțin probabil ca vecinul tău să angajeze un astfel de specialist (cu excepția cazului în care, desigur, el este un oligarh), dar printre proprietarii de întreprinderi mari și mijlocii care sunt preocupați de securitatea Structurile IT ale întreprinderilor lor, cererea pentru astfel de servicii este foarte mare.
După ce a aruncat o privire rapidă la întreaga listă de motive și a cântărit toate argumentele pro și contra, puteți trece în siguranță... nu, nu la partea practică și nu la procedurile de apă, ci mai întâi la pregătirea teoretică.
Capitolul 2. WEP, WPA, HMAC, PBKDF2 și multe alte cuvinte înfricoșătoare
În zorii dezvoltării accesului wireless, încă din 1997, oamenii de știință britanici nu s-au deranjat cumva prea mult cu problemele de securitate, crezând naiv că criptarea WEP pe 40 de biți cu o cheie statică ar fi mai mult decât suficientă, LOL. Dar hackerii rău intenționați, împreună cu matematicieni talentați (printre ei s-a remarcat și compatriotul nostru Andrei Pyshkin, ceea ce este frumos) și-au dat seama rapid ce este, iar rețelele protejate chiar și de o cheie WEP lungă de până la 104 biți au început curând, dintr-un motiv oarecare, a fi echivalat cu cele deschise . Cu toate acestea, odată cu dezvoltarea alfabetizării computerelor în rândul populației obișnuite, găsirea unei rețele WEP a devenit acum aproape mai dificilă decât una deschisă, așa că ne vom concentra pe WPA/WPA2 mai obișnuit (adică omniprezent).
Principala concepție greșită a clasei muncitoare este „Eu folosesc WPA2, nu poate fi piratat”. În viață totul se dovedește a fi complet diferit. Cert este că procedura de autentificare (acest cuvânt groaznic înseamnă verificarea faptului că clientul este „al lor”) a clientului rețea fără fir atât WPA, cât și WPA2 sunt împărțite în două subtipuri mari - simplificate pentru uz personal (WPA-PSK, PreShared Key, adică autorizarea parolei) și cu drepturi depline pentru rețelele wireless de întreprindere (WPA-Enterprise sau WPA-EAP). A doua opțiune presupune utilizarea unui server de autorizare special (cel mai adesea RADIUS) și, spre meritul dezvoltatorilor, nu are probleme evidente de securitate. Nu același lucru se poate spune despre versiunea „personală” simplificată. La urma urmei, parola stabilită de utilizator este de obicei permanentă (amintește-ți ultima dată când ai schimbat parola pe Wi-Fi și este transmisă, deși într-o formă distorsionată, prin aer, ceea ce înseamnă că poate fi auzită nu numai de cei pentru care este destinat, desigur, dezvoltatorii WPA au luat în considerare experiența amară a implementării WEP și au umplut procedura de autorizare cu diverși algoritmi dinamici care împiedică un hacker obișnuit să citească rapid parola „pe aer”. nu parola în sine este transmisă prin aer de la un laptop (sau orice ai) la punctul de acces și o mizerie digitală (hackerii și simpatizanții lor numesc acest proces „strângere de mână”, din engleză „strângere de mână”. ), obținut prin mestecarea unui număr aleator lung, a unei parole și a unui nume de rețea (ESSID) folosind o pereche de algoritmi iterativi complecși din punct de vedere computațional PBKDF2 și HMAC (PBKDF2 s-a remarcat în special prin efectuarea secvenţială a patru mii de transformări hash pe combinaţia parolă+ESSID. Evident, Scopul principal al dezvoltatorilor WPA a fost de a face viața cât mai dificilă posibil pentru hackeri și de a elimina posibilitatea de a ghici rapid o parolă prin forță brută, deoarece acest lucru ar necesita calcule PBKDF2 /HMAC-convoluții pentru fiecare opțiune de parolă, care, dat complexitatea computațională a acestor algoritmi și numărul de combinații posibile de caractere din parolă (și există acestea, de ex. caractere, o parolă WPA poate fi de la 8 la 63), va dura exact până la următorul big bang, sau chiar mai mult. Cu toate acestea, ținând cont de dragostea utilizatorilor fără experiență pentru parole precum „12345678”, în cazul WPA-PSK (și prin urmare cu WPA2-PSK, vezi mai sus), este destul de posibil un așa-numit atac de dicționar, care constă în căutarea prin cele pre-preparate care apar cel mai frecvent câteva miliarde de parole, și dacă dintr-o dată o convoluție PBKDF2/HMAC cu una dintre ele dă exact același răspuns ca în strângerea de mână interceptată - bingo! Avem parola.
Toate cele de mai sus nu au putut fi citite cel mai important lucru va fi scris în următoarea propoziție. Pentru a sparge cu succes WPA/WPA2-PSK, trebuie să obțineți o înregistrare de înaltă calitate a procedurii de schimb de chei între client și punctul de acces („strângere de mână”), să cunoașteți numele exact al rețelei (ESSID) și să utilizați un dicționar atac, cu excepția cazului în care, bineînțeles, dorim să îmbătrânim înainte de a termina forța brută, deși ar fi toate combinațiile de parole care încep cu „a”. Aceste etape vor fi discutate în capitolele următoare.
Capitolul 3. De la teorie la practică.
Ei bine, după ce am acumulat o cantitate suficientă de cunoștințe teoretice, să trecem la exerciții practice. Pentru a face acest lucru, stabilim mai întâi de ce avem nevoie de la hardware și ce software trebuie să fie încărcat în același hardware.
Chiar și cel mai mort netbook va face pentru a intercepta strângerile de mână. Tot ceea ce este nevoie de el este un port USB gratuit pentru conectarea adaptorului Wi-Fi „corect” (puteți, desigur, să-l prindeți cu cel încorporat, dar asta numai dacă vă atacați vecinul căminului, deoarece Semnalul slab al adaptorului încorporat și antena sa de neînțeles este puțin probabil să pătrundă cel puțin într-un perete normal de beton, ca să nu mai vorbim de câteva sute de metri la victimă, la care este foarte recomandabil să-l reziste pentru a nu arde. avantaj bun Un netbook poate fi ușor (dacă trebuie să lucrezi pe drum) și să aibă o durată lungă de viață a bateriei. Pentru a rezolva problema selectării unei parole, puterea de calcul a unui netbook (și chiar și a unui laptop cu drepturi depline) nu va mai fi suficientă, dar despre asta vom vorbi puțin mai târziu acum trebuie să ne concentrăm asupra strângerii de mână și a metodelor de a-l prinde.
Chiar mai sus am menționat adaptorul Wi-Fi „corect”. De ce este atât de „corect”? In primul rand trebuie sa aiba o antena externa cu un castig de minim 3 dBi, mai bine 5-7 dBi, conectat printr-un conector (acest lucru va permite, dacă este necesar, să se conecteze o antenă direcțională externă în locul pinului standard și, prin urmare, să se mărească semnificativ distanța de ucidere până la victimă), puterea semnalului de ieșire a adaptorului trebuie să fie de cel puțin 500 mW (sau 27 dBm, care este același lucru). De asemenea, nu merită să urmăriți prea mult puterea adaptorului, deoarece succesul interceptării unei strângeri de mână depinde nu numai de cât de tare strigăm în aer, ci și de cât de bine putem auzi răspunsul victimei, iar acesta este de obicei un laptop obișnuit (sau și mai rău, un smartphone) cu toate deficiențele Wi-Fi-ului său încorporat.
Printre wardrierii tuturor generațiilor, cele mai „corecte” sunt adaptoarele de la compania taiwaneză ALPHA Network, de exemplu AWUS036H sau similare. Pe lângă alpha, produsele de la TP-LINK sunt destul de funcționale, de exemplu TL-WN7200ND, deși costă jumătate mai mult decât alpha și există mii de modele de la alți producători care sunt la fel de asemănătoare între ele ca două. mazăre într-o păstăie, din fericire nu există atât de multe chipset-uri Wi-Fi în natură și multe.
Așa că am rezolvat hardware-ul, laptopul este încărcat și gata pentru exploit, iar adaptorul necesar a fost achiziționat de la cel mai apropiat magazin de calculatoare. Acum câteva cuvinte despre software.
Din punct de vedere istoric, cel mai comun sistem de operare Windows a fost și este încă pe laptopurile noastre. Aceasta este principala problemă cu wardriver. Cert este că majoritatea adaptoarelor kosher (sau mai degrabă chipset-urile lor) nu au drivere Windows normale care să suporte funcții vitale - modul de monitorizare și injecție de pachete, care transformă laptopul într-o potențială victimă, dar nu într-un vânător de strângeri de mână. Pentru a fi corect, merită remarcat faptul că unele cipuri sunt încă acceptate de programul CommView Windows, care este foarte popular în cercuri înguste, dar lista acestora este atât de slabă în comparație cu costul programului în sine (sau remuşcările de descărcare). o versiune furată), care descurajează imediat dorința de a face „asta” sub Windows . În același timp, o soluție a fost inventată de mult timp și fără a compromite sănătatea laptopului tău - aceasta este o distribuție specială BackTrack Linux, în care întreținătorii au împachetat cu atenție nu numai toate driverele de chipset Wi-Fi de care avem nevoie, cu tot felul de funcții complicate, dar și un set complet de utilități din pachetul aircrack-ng, (care ne va veni în curând la îndemână) și multe alte lucruri utile.
Deci, descărcați versiunea actuală a BackTrack 5R1 (denumită în continuare BT5 sau, în general, doar BT, deoarece va trebui să revenim la acest nume de mai multe ori): http://www.backtrack-linux.org/downloads/
Nu este deloc necesar să ne înregistrăm, selectăm un manager de ferestre la alegere (WM Flavour - Gnome sau KDE), arhitectura laptopului nostru (cel mai probabil 32 de biți), Imagine - ISO (nu avem nevoie de niciun virtual mașini) și metoda de descărcare - direct (Direct) sau printr-un tracker torrent (Torrent). Distribuția este o imagine Live-DVD, adică. disc de pornire, astfel încât să îl puteți tăia pur și simplu într-un gol și să porniți, sau să petreceți puțin mai mult timp și calorii și să faceți o unitate flash bootabilă folosind acest utilitar: Universal USB Installer (descărcați aici: www.pendrivelinux.com). Frumusețea evidentă a celei de-a doua soluții este că puteți crea o partiție permanentă pe o unitate flash cu capacitatea de a salva fișiere, ceea ce va fi util în viitor. Nu mă voi opri în detaliu asupra procesului de creare a unei unități flash bootabile, voi spune doar că este de dorit ca volumul acesteia să fie de cel puțin 4 GB.
Introducem unitatea flash (disc, sau orice ai) în laptop și pornim de pe acesta. Voila, avem un desktop BT5 înfricoșător și teribil (dar de fapt teribil de frumos)! (Când vi se cere un nume de utilizator și o parolă, introduceți root și respectiv toor. Dacă desktopul nu apare, dați comanda startx. Dacă nu apare din nou, atunci nu este destinul vostru să lucrați în Linux, fumați manualele).
BackTrack: Termină-l!
Deci, totul s-a încărcat perfect, începem să studiem ce avem unde. Mai întâi, să găsim adaptorul nostru Wi-Fi pentru a face acest lucru, deschidem o fereastră de linie de comandă (Terminal sau Konsole, în funcție de tipul de manager de ferestre) și dăm comanda;
Cod:
root@bt:~# iwconfig wlan0 IEEE 802.11abgn ESSID:off/orice Mod:Managed Access Point: Not-Associated Tx-Power=14 dBm Limită lungă de reîncercare:7 RTS thr:off Fragment thr:off Cheie de criptare:off Power Management :off wlan1 IEEE 802.11bgn ESSID:off/any Mod:Managed Access Point: Neasociat Tx-Power=20 dBm Limită lungă de reîncercare:7 RTS thr:off Fragment thr:off Cheie de criptare:off Power Management:off
Grozav, adaptorul nostru este vizibil ca wlan1 (wlan0 este un adaptor pentru laptop încorporat, îl puteți dezactiva complet pentru a nu interfera). Transferați wlan1 din modul Gestionat în modul Monitor:
Cod:
root@bt:~# airmon-ng start wlan1
si uite ce s-a intamplat:
Cod:
root@bt:~# iwconfig wlan0 IEEE 802.11abgn ESSID:off/orice Mod:Managed Access Point: Not-Associated Tx-Power=14 dBm Limită lungă de reîncercare:7 RTS thr:off Fragment thr:off Cheie de criptare:off Power Management :off wlan1 Mod IEEE 802.11bgn:Monitor Tx-Power=20 dBm Limită lungă de reîncercare:7 RTS thr:off Fragment thr:off Gestionare energie:off
Doar grozav, dar de ce parametrul TX-Power (puterea de transmisie) este de doar 20 dBm? Avem un adaptor de 27 dBm? Să încercăm să adăugăm putere (principalul lucru aici este să nu exagerăm):
Cod:
root@bt:~# iwconfig wlan1 txpower 27 Eroare pentru cererea wireless „Set Tx Power” (8B26): SET a eșuat pe dispozitivul wlan1; Argument nevalid.
Și aici ne confruntăm cu prima dezamăgire - este imposibil să setați puterea la mai mult de 20 dBm! Acest lucru este interzis prin lege în multe țări, dar nu și în Bolivia! S-ar părea că Bolivia are ceva de-a face cu asta, dar:
Cod:
root@bt:~# iw reg set BO root@bt:~# iwconfig wlan1 txpower 27
... si totul merge bine, Bolivia ne-a ajutat mult, multumesc pentru asta.
Ce avem în această etapă? Adaptorul nostru Wi-Fi puternic este configurat pentru putere maximă în modul monitor și așteaptă comenzi pe interfața mon0. Este timpul să priviți în jur și să ascultați emisiunea. Este foarte simplu:
Cod:
root@bt:~# airdump-ng mon0
Acum toată atenția este pe ecran!
Rețeaua cu WEP este încercuită cu roșu - o raritate în zilele noastre.
În colțul din stânga sus puteți vedea cum sunt scanate canalele (dacă trebuie să remediați un canal, trebuie să apelați airodump-ng cu tasta –channel<номера каналов через запятую>), apoi există un tabel de rețele găsite care indică (de la stânga la dreapta): BSSID (adresa MAC a rețelei), nivelul de recepție a semnalului în dBm (depinde de sensibilitatea receptorului, la adaptoare bune -80 dBm este un nivel normal), numărul de cadre Beacon primite (acestea sunt pachete de difuzare care transportă informații despre rețea), numărul de pachete de date primite și viteza de recepție (pachete pe secundă), canalul pe care transmite punctul de acces, viteza de punctul de acces în megabiți, tipul de autentificare (OPN - rețea deschisă, WEP, WPA, WPA2), tipul de criptare, literele magice PSK în cazul WPA/WPA2 (detaliile sunt descrise mai sus în capitolul 2) și, în sfârșit, numele rețelei, adică ESSID-ul acesteia.
Chiar sub tabelul principal se află un tabel cu asocierile actuale ale clienților la puncte. Privind în perspectivă, observ că este și important, deoarece poate fi folosit pentru a determina activitatea și adresele MAC ale clienților pentru deconectarea ulterioară a acestora.
Din poza de mai sus rezultă că avem ceva de prins – sunt atât puncte de acces, cât și clienți cu semnal bun. Rămâne doar să selectați o victimă (pentru ca fișierul să nu se umfle prea mult, puteți înregistra pachete dintr-un singur punct de acces dând cheia –bssid
Cod:
root@bt:~# mkdir /mnt root@bt:~# mount /dev/sda1 /mnt root@bt:~# cd /mnt
unde /dev/sda1 este fișierul dispozitivului flash extern (puteți găsi de unde a fost preluat unitatea flash în cazul dvs. scotociind prin rezultatul comenzii dmesg).
De exemplu, să rulăm airodump-ng pentru a înregistra pachete dintr-o singură rețea din listă în fișierul testcap.cap:
Cod:
root@bt:~# airodump-ng –bssid a0:21:b7:a0:71:3c -w testcap mon0
Acum puteți turna o ceașcă de cafea și mesteca un sandviș în timp ce așteptați până când următorul client vrea să se agațe de punctul de acces și să ne dea râvnita strângere de mână. Apropo, după primirea unei strângeri de mână, va apărea un mesaj de avertizare în colțul din dreapta sus: strângere de mână WPA: A0:21:B7:A0:71:3C. Gata, treaba este gata și poți trece la capitolul următor.
Când se mănâncă toate sandvișurile, nu mai este cafea și încă nu există nicio strângere de mână, îmi vine în minte un gând strălucitor că ar fi bine să grăbim clientul cu o strângere de mână. Pentru a face acest lucru, pachetul aircrack-ng include un utilitar special care vă permite să trimiteți solicitări clienților de dezasociere (deconectare) de la punctul de acces, după care clientul va dori să se conecteze din nou, și exact asta așteptăm. . Acest utilitar se numește aireplay-ng și trebuie să îl rulați într-o fereastră separată în paralel cu lansarea airodump-ng, astfel încât să puteți înregistra simultan rezultatele lucrării. Să începem deconectarea:
Cod:
root@bt:~# aireplay-ng –deauth 5 -a a0:21:b7:a0:71:3c -c 00:24:2b:6d:3f:d5 wlan1
unde este evident că desfășurăm 5 sesiuni de deconectare a clientului 00:24:2b:6d:3f:d5 de la punctul de acces cu BSSID a0:21:b7:a0:71:3c (am luat adresa clientului din partea inferioară tabel de asociere airodump-ng, nu trebuie să-l specificați deloc, atunci deconectarea va fi efectuată printr-o cerere de difuzare, care nu este atât de eficientă pe cât ne-am dori).
După efectuarea unei astfel de proceduri (și nimic nu ne împiedică să o repetăm încă o dată, pentru orice eventualitate), probabilitatea de a prinde o strângere de mână crește semnificativ.
Acum cel mai important lucru. Tot ceea ce este descris mai sus a fost descris doar în scopuri educaționale. Și totul pentru că kitul aircrack-ng include o utilitate atât de minunată precum besside-ng, care realizează automat toate operațiunile de mai sus, sparge WEP în sine și salvează strângerile de mână WPA într-un fișier separat. Lansarea acestui utilitar este incredibil de simplă:
Cod:
root@bt:~# lângă-ng mon0
Și asta-i tot! După ce ați dat această comandă magică, puteți acum să vă așezați și să urmăriți rezultatele activității sale agitate, bucurându-vă de toate strângerile de mână care vin și vin (sunt salvate în folderul curent din fișierul wpa.cap, iar jurnalul este scris în pe lângă.fișierul jurnal). Parolele din rețelele WEP piratate de besside-ng pot fi găsite și în jurnalul său.
Ei bine, ca urmare a muncii enorme depuse, am acumulat fișiere *.cap care conțin strângeri de mână și putem trece în siguranță la capitolul patru. Dar să vedem în continuare ce am prins și să evaluăm calitatea strângerii de mână.
Puteți evalua rapid dacă există strângeri de mână într-un fișier folosind cel mai simplu apel aircrack-ng:
Cod:
aircrack-ng<имя файла>
Dacă există o strângere de mână, aircrack-ng va afișa BSSID, ESSID și numărul de strângeri de mână pentru fiecare rețea:
aircrack-ng vede strângerea de mână linksys, frate
Cu toate acestea, am menționat mai sus că folosind aircrack-ng poți evalua doar prezența unei strângeri de mână, iar acest lucru nu este fără motiv. Cert este că aircrack-ng nu este un parser bun EAPOL și poate arăta cu ușurință prezența unei strângeri de mână acolo unde nu există (sau, mai precis, este acolo, dar nu funcționează). Să ne scufundăm mai adânc în sălbăticia pachetelor EAPOL folosind Wireshark (cititorii leneși și nu foarte curioși își pot sări peste timpul prețios și să treacă direct la capitolul 4).
Deschideți fișierul nostru *.cap în Wireshark și setați expresia
Cod:
(eapol || wlan.fc.type_subtype == 0×08) && nu este incorect
ca filtru sa vedem printre mormanele de gunoaie doar pachetele care ne intereseaza.
Iată-le, strângeri de mână
Deci ce vedem? Primul pachet din listă este un cadru Beacon, care transportă informații despre rețeaua wireless. Este acolo și indică faptul că rețeaua se numește „dlink”. Se întâmplă ca cadrul Beacon să lipsească din fișier, atunci pentru a efectua un atac trebuie să cunoaștem sigur ESSID-ul rețelei, ținând cont de faptul că este sensibil la majuscule și minuscule (da, 'dlink', 'Dlink' și „DLINK” sunt trei ESSID-uri diferite!) și , de exemplu, poate conține spații în locuri neașteptate, cum ar fi la sfârșit. Specificând ESSID greșit pentru atac în acest caz, suntem sortiți eșecului - parola nu va fi găsită chiar dacă este în dicționar! Deci prezența unui cadru Beacon într-un fișier cu o strângere de mână este un plus evident.
Urmează în fișier pachetele cheie EAPOL, care alcătuiesc strângerea de mână în sine. În general, o strângere de mână EAPOL cu drepturi depline ar trebui să conțină patru pachete consecutive, de la msg (1/4) la msg (4/4), dar în acest caz nu am fost prea norocoși am reușit să interceptăm doar primele două perechi; format din msg (1/4) și msg (2/4). Frumusețea este că în ele sunt transmise toate informațiile despre hash-ul parolei WPA-PSK și ei sunt cei necesari pentru a efectua atacul.
Să aruncăm o privire mai atentă la prima pereche msg(1/4) și msg(2/4) (încercuite cu roșu). În ele, punctul de acces (Stație) 02:22:B0:02:22:B0 transmite un număr aleatoriu ANonce către client (Client) 00:18:DE:00:18:DE în primul pachet de handshake EAPOL și primește înapoi SNonce și MIC, calculate de client pe baza ANonce primite. Dar atenție la intervalul de timp dintre msg (1/4) și msg (2/4) - este aproape o secundă întreagă. Este foarte mult și este foarte posibil ca pachetele msg (1/4) și msg (2/4) să aparțină unor strângeri de mână diferite (ceea ce cu siguranță va duce la imposibilitatea de a ghici parola chiar dacă este în dicționar) , și neavând pachete de control msg interceptate ( 3/4) și msg (4/4) este imposibil să verificați acest lucru. Prin urmare, prima strângere de mână este de o calitate foarte dubioasă, deși pare destul de validă.
Din fericire, în acest caz avem o altă pereche de pachete msg (1/4) și msg (2/4) cu un interval de timp de doar 50 de milisecunde între ele. Acest lucru indică cel mai probabil că aparțin aceleiași strângeri de mână, așa că le vom alege pentru atac. Să marchem cadrul Beacon și aceste pachete făcând clic dreapta și selectând Marcați pachet (comutați) și să le salvăm într-un fișier nou selectând elementul de meniu „Salvare ca...” și fără a uita să bifați caseta Pachete marcate:
Haideți să păstrăm ceea ce am dobândit prin muncă sfâșietoare!
În încheierea capitolului, aș dori să notez că pentru un atac este totuși recomandat să folosiți strângeri de mână „cu drepturi depline” care au un cadru Beacon și întreaga secvență de pachete EAPOL de la primul până la al patrulea. Pentru a face acest lucru, echipamentul dumneavoastră Wi-Fi trebuie să „audă” foarte bine atât punctul de acces, cât și clientul. Din păcate, în viata reala Acest lucru nu este întotdeauna posibil, așa că trebuie să faceți compromisuri și să încercați să „reînvie” manual strângerile de mână pe jumătate moarte, așa cum a fost demonstrat mai sus.
Capitolul 4. De la strângere de mână la parolă.
Cititorul atent a înțeles de mult că hacking-ul WPA, chiar și în prezența unei strângeri de mână și a mâinilor directe ale atacatorului, este asemănător cu o loterie, organizată de proprietarul punctului de acces care atribuie parola. Acum, având în mână o strângere de mână mai mult sau mai puțin de înaltă calitate, următoarea noastră sarcină este să ghicim tocmai această parolă, adică. în esență câștigând la loterie. Nu este o idee rezultat favorabil nimeni nu poate garanta, dar statisticile inexorabile arată că cel puțin 20% dintre rețelele WPA sunt piratate cu succes, așa că nu disperați, să trecem la treabă, prieteni, în primul rând, trebuie să pregătiți un dicționar! Un dicționar WPA este un fișier text obișnuit care conține unul opțiune posibilă parolă. Având în vedere cerințele de parolă ale standardului WPA, parolele posibile trebuie să aibă cel puțin 8 și cel mult 63 de caractere și pot consta doar din cifre, litere latine mari și mici și caractere speciale precum!@#$% etc. (apropo, acest alfabet este considerat destul de extins). Și dacă totul este clar cu limita inferioară a lungimii parolei (cel puțin 8 caractere și un punct), atunci cu limita superioară totul nu este atât de simplu. Schimbarea unei parole de 63 de caractere folosind un dicționar este o sarcină complet inutilă, așa că este destul de rezonabil să se limiteze lungimea maximă a parolei în dicționar la 14-16 caractere. Un dicționar de înaltă calitate (pentru care rata de succes a rezultatului este estimată la 20%) cântărește mai mult de 2 GB și conține aproximativ 250 de milioane de parole posibile cu o lungime în intervalul specificat de 8-16 caractere. Ce ar trebui inclus în aceste combinații posibile de parole? În primul rând, cu siguranță, întreaga gamă digitală de opt cifre, care, conform statisticilor, reprezintă aproape jumătate din toate parolele dezvăluite. La urma urmei, diferite date se potrivesc perfect în 8 cifre, de exemplu 05121988. Un număr digital complet de opt cifre are 10^8 = 100 de milioane de combinații, ceea ce în sine este destul de mult. În plus, dicționarul de luptă al wardriverului trebuie să includă în mod necesar cuvintele folosite cel mai des ca parole, de exemplu internet, parolă, qwertyuiop, nume etc., precum și mutațiile acestora cu sufixe populare de extindere a parolei (singurul lider în acest domeniu este de desigur sufixul 123). Aceste. Dacă parola diana este prea scurtă pentru a respecta standardul WPA, un utilizator plin de resurse în majoritatea cazurilor o va adăuga la diana123, crescând astfel (în opinia sa cu experiență) secretul parolei. Există, de asemenea, câteva zeci de astfel de sufixe populare cunoscute Dacă încercați să asamblați singur un dicționar, puteți să găsiți pe Google cuvintele cheie wpa wordlist și să descărcați dicționarul gata făcut (nu uitați de direcționare, pentru că ar fi destul de naiv să sperați. pentru succes, rulând o strângere de mână chinezească printr-un dicționar rus și invers) sau căutați una potrivită aici în acest thread.
și așa poți folosi crunch pentru a crea diverse combinații de cuvinte de bază
După ce am pregătit un fel de dicționar (să-l numim wordlist.txt pentru claritate), trecem direct la selectarea parolei. Lansați aircrack-ng cu următorii parametri:
Cod:
root@bt:~# aircrack-ng -e
Ura! Parola dicționarului a fost găsită în 3 secunde! (dacă ar fi atât de simplu...)
În captura de ecran de mai sus, aircrack-ng a găsit parola (și era cuvântul dicționar) în doar 3 secunde. Pentru a face acest lucru, a încercat 3.740 de parole posibile cu o viteză de 1.039 de parole pe secundă. Totul ar fi bine, dar aici cititorul atent ar trebui să se forțeze destul de mult, pentru că mai devreme vorbeam despre un dicționar de 250 de milioane de parole posibile! Un calcul rapid: 250*10^6 împărțit la 1039 și obținem... cam 240 de mii de secunde, adică 66 de ore, adică aproape trei zile! Acesta este exact cât timp va dura laptopului tău să proceseze un dicționar de bază de 2 GB (cu excepția cazului în care, desigur, ai noroc și parola este găsită undeva la mijlocul procesului). Asemenea intervale de timp uriașe sunt dictate de viteza scăzută a calculelor din cauza complexității mari de calcul a algoritmilor încorporați în procedura de autentificare WPA. Ce putem spune despre dicționarele mari, de exemplu, un caracter digital complet de nouă cifre conține deja 900 de milioane de combinații și va necesita câteva săptămâni de calcule pentru a ne asigura că (cel puțin) parola nu este găsită
O astfel de situație de perdant nu a putut să nu deranjeze mințile iscoditoare ale hackerilor și, în curând, s-a găsit o soluție. GPU-urile au fost folosite pentru streaming de calcul. GPU (Graphic Processing Unit) este inima acceleratorului dvs. 3D, un cip cu sute (și chiar mii) de procesoare de flux care vă permite să distribuiți numeroase, dar elementare operațiuni de hashing a parolelor și, prin urmare, să accelerați procesul de căutare cu ordine de mărime. Pentru a nu fi nefondat, voi spune că ATI RADEON HD 5870 overclockat este capabil să atingă o viteză de 100.000 de parole pe secundă, iar acesta este deja un salt înainte notabil (cu două ordine de mărime) în comparație cu aircrack-ng.
Monster ATI RADEON 6990 – 3000 de shadere, 165.000 de parole WPA pe secundă. Cine este mai mare?
Desigur, astfel de cifre sunt tipice doar pentru adaptoarele ATI RADEON de top (NVIDIA, cu tehnologia sa CUDA, este încă net inferioară ATI în ceea ce privește viteza de enumerare WPA datorită avantajelor arhitecturale evidente ale acestuia din urmă). Dar trebuie să plătești pentru tot, un adaptor bun merită bani buni, și consumă multă energie. În plus, trebuie să monitorizați cu mare atenție overclockarea și răcirea GPU-ului, fără a ceda provocărilor adevăraților jucători care își împing adaptoarele până când pe ecran apar artefacte. La urma urmei, pentru ei, artefactele (și, de fapt, erorile hardware ale calculatoarelor GPU din cauza funcționării la frecvențe extreme) sunt doar resturi trecătoare pe ecran, dar pentru noi sunt pline de o parolă ratată.
Ca parte a acestui articol pentru începători, probabil că nu voi pătrunde adânc în jungla instalării SDK-ului ATI și a pyrit-ului pentru Linux (voi doar să remarc că acest lucru este un pic o bătaie de cap), deoarece acest lucru ar fi demn de un articol separat (din care există multe pe internet), iar publicul țintă, și anume fericiții proprietari ai Radeons de top, nu este atât de mare și pot găsi cu ușurință materialul necesar pe cont propriu. .
Paradoxal, Windows este cel mai potrivit pentru a ghici parolele WPA folosind GPU. Faptul este că driverele adaptoarelor video joacă un rol semnificativ în acest proces, versiunilor de Windows cărora dezvoltatorii acordă mult mai multă atenție decât driverele pentru Linux și alte sisteme de operare, iar acest lucru nu este o coincidență, deoarece se concentrează în principal pe nevoile jucătorilor. . Două programe pot selecta o parolă WPA pentru Windows - auditorul comercial Elcomsoft Wireless Security (sau pur și simplu EWSA) și utilitarul de consolă hashcat-plus din pachetul hashcat by Atom (spre bucuria generală a utilizatorilor de Windows, are și un GUI, sau pur și simplu, o interfață de fereastră separată). Vom lua în considerare în continuare utilizarea acestor programe particulare și, în același timp, vom compara caracteristicile lor de calitate și, în special, aceasta va fi viteza de căutare pe care fiecare dintre ele o va dezvolta în condiții egale, și anume pe același computer cu aceleași drivere și același și același dicționar.
Trebuie să începeți cu căutarea și instalarea ultima versiune drivere pentru placa video (sau cel puțin asigurați-vă că aveți deja cea mai recentă versiune instalată). Adepții adaptoarelor video verzi ar trebui să viziteze www.nvidia.com, în timp ce cele roșii merg pe calea de modă veche la www.ati.com, unde selectând modelul dvs. de GPU din listă puteți descărca drivere pentru versiunea dvs. de Windows. Nu voi acorda prea multă atenție procedurii de instalare a driverului, probabil că ați mai făcut acest lucru înainte și de mai multe ori.
EWSA poate fi găsit (și achiziționat) pe site-ul web al dezvoltatorilor - www.elcomsoft.com, doar rețineți că versiunea de încercare gratuită se zvonește că nu afișează parola găsită (versiunea normală „de încercare” poate fi găsită aici, amintiți-vă doar pentru a-l șterge de pe computer după ce l-ați încercat) . Instalarea și configurarea EWSA nu ar trebui să cauzeze multe probleme, puteți selecta imediat limba rusă în meniu, în setările GPU, asigurați-vă că GPU-urile dvs. sunt vizibile pentru program și selectate prin casete de selectare (dacă GPU-urile nu sunt vizibile în listă , în mod clar aveți o problemă cu driverele) și, de asemenea, specificați programul dicționarelor dvs. în setările dicționarului.
Să înhamăm toți caii...
Faceți clic pe „Import date -> Import TCPDUMP file” și selectați fișierul *.cap cu o strângere de mână (programul le va verifica și va oferi să le marcheze pe cele pe care vrem să le atacăm), după care puteți face clic în siguranță pe „Launch attack -> Dictionary atac":
EWSA otakue (ce viteză...)
În acest test, EWSA a arătat o viteză de doar 135.000 de parole pe secundă, deși pe baza configurației hardware mă așteptam să văd o cifră de cel puțin 350 de mii.
Să comparăm munca EWSA cu concurentul său cu adevărat gratuit - hashcat-plus. Descărcați setul complet de hashcat-gui (care include deja consola hashcat-plus) de pe site-ul web al autorului și despachetați arhiva într-un loc convenabil (nu este necesară instalarea). Lansăm hashcat-gui32.exe sau hashcat-gui64.exe în funcție de bitness-ul Windows și răspundem la prima întrebare ce GPU vom folosi - NVidia (CUDA) sau ATI RADEON (opțiunea numai CPU evident nu ne va potrivi).
Când apare fereastra principală a programului, accesați fila oclHashcat-plus (sau cudaHashcat-plus în cazul NVidia). Există o subtilitate aici - hashcat nu poate analiza strângerile de mână EAPOL (deloc) și vă cere să îi dați hashuri WPA „pe un platou de argint” în propriul format *.hccap. Puteți converti *.cap obișnuit în *.hccap folosind utilitarul patched aircrack-ng, dar nu descărcați din nou BT pentru un asemenea fleac! Spre bucuria noastră generală, dezvoltatorul hashcat a realizat un convertor online convenabil, trebuie doar să încărcați fișierul dvs. *.cap cu o strângere de mână acolo și să specificați ESSID-ul, dacă există o strângere de mână în fișier, veți primi un *.hccap gata de atac .
Să mergem mai departe - indicăm programului fișierul nostru *.hccap ca fișier Hash pentru atac, adăugăm fișiere de dicționar în fereastra Liste de cuvinte (puteți folosi săgețile pentru a seta ordinea dorită a trecerii lor), selectați WPA/WPA2 ca tip Hash și faceți clic pe Start.
O fereastră de consolă ar trebui să apară odată cu lansarea versiunii hashcat-plus selectate cu o mulțime de parametri și, dacă totul este în ordine, utilitarul va începe să funcționeze. În timpul procesului de calcul, puteți afișa starea curentă apăsând tasta „s”, puteți întrerupe procesul apăsând „p” sau îl puteți întrerupe apăsând „q”. Dacă hashcat-plus găsește brusc o parolă, cu siguranță te va familiariza cu ea.
Rezultatul este 392.000 de parole pe secundă! Și aceasta este de acord foarte bine cu viteza teoretică așteptată pe baza configurației sistemului.
Nu sunt un susținător sau oponent puternic al EWSA sau al hashcat-plus. Cu toate acestea, acest test arată în mod convingător că hashcat-plus este mult mai scalabil atunci când se utilizează mai multe GPU-uri simultan. Alegerea este a ta.
Uneori pot fi văzute persoane care primesc semnalul radio al rețelei dvs. Acest lucru poate duce la furtul de identitate și la alte activități rău intenționate. O cheie de securitate a rețelei sau o expresie de acces vă poate ajuta să vă protejați rețeaua fără fir de un astfel de acces neautorizat.
Expertul de configurare a rețelei vă va ajuta să instalați cheia de securitate a rețelei.
Notă: Nu este recomandat să utilizați Wired Equivalent Privacy (WEP) ca metodă de securizare a rețelei dvs. fără fir. Tehnologia Wi-Fi Protected Access (WPA sau WPA2) este mai sigură. Dacă tehnologia WPA sau WPA2 nu funcționează, se recomandă înlocuirea adaptorului de rețea cu unul care funcționează cu WPA sau WPA2. Toate dispozitive de rețea Calculatoarele, routerele și punctele de acces acceptă și WPA sau WPA2.
Metode de criptare pentru rețele fără fir
În prezent, există trei metode de criptare pentru rețelele fără fir: Wi-Fi Protected Access (WPA și WPA2), Wired Equivalent Privacy (WEP) și 802.1x. Primele două metode sunt descrise mai detaliat mai jos. 802.1x, care este utilizat de obicei pentru rețelele corporative, nu este tratat în această secțiune.
Tehnologie de acces protejat Wi-Fi (WPA și WPA2)
Pentru a vă conecta folosind WPA și WPA2, trebuie să aveți o cheie de securitate. Odată ce cheia este verificată, toate datele trimise între computer sau dispozitiv și punctul de acces vor fi criptate.
Există două tipuri de autentificare WPA: WPA și WPA2. Utilizați WPA2 ori de câte ori este posibil, deoarece este cel mai sigur. Aproape toate adaptoarele wireless noi acceptă WPA și WPA2, dar există unele modele mai vechi care nu le acceptă WPA-Personal și WPA2-Personal oferă utilizatorilor aceeași expresie de acces. Aceste tipuri sunt recomandate pentru utilizare în rețelele de acasă. WPA-Enterprise și WPA2-Enterprise sunt concepute pentru a fi utilizate cu un server de autentificare 802.1x, care generează o cheie diferită pentru fiecare utilizator. Acest tip este utilizat de obicei în rețelele de lucru.
Protocolul de confidențialitate echivalent prin cablu (WEP).
WEP este o metodă de securitate a rețelei din generația anterioară care este încă disponibilă și acceptă modele de dispozitive mai vechi, dar nu este recomandat sa-l folosesti. Când activați WEP, trebuie să configurați o cheie de securitate pentru rețea. Această cheie de criptare este trimisă printr-o rețea de la un computer la altul. Cu toate acestea, securitatea WEP este relativ ușor de spart.
Există două tipuri de WEP: autentificare în sistem deschis și autentificare cu cheie partajată. Niciuna dintre ele nu este complet sigură, dar autentificarea cu cheie partajată este tipul cel mai puțin sigur. Pentru majoritatea computerelor și punctelor de acces fără fir, cheia publică de autentificare este aceeași cu cheia statică de criptare WEP care este utilizată pentru a securiza rețeaua. Un atacator poate intercepta mesajul de autentificare cu cheie partajată de succes și poate folosi instrumente de sniffing pentru a determina cheia de autentificare partajată și cheia de criptare WEP statică. Odată ce cheia de criptare WEP statică este determinată, atacatorul va avea acces deplin la rețea. Din acest motiv aceasta Versiunea Windows nu acceptă configurarea automată a rețelei folosind autentificarea cu cheie partajată WEP.
Dacă, în ciuda acestor avertismente, doriți totuși să configurați autentificarea WEP utilizând o cheie partajată, puteți face acest lucru urmând acești pași.
Crearea manuală a unui profil de rețea utilizând autentificarea cu cheie partajată WEP
- Deschideți fereastra Centrul de rețea și partajare.
- Faceți clic pe Configurați o nouă conexiune sau o rețea.
- Selectați Conectare manuală la o rețea fără fir și faceți clic pe Următorul.
- Pe pagina Introduceți informațiile rețelei fără fir pe care doriți să le adăugați, sub Tip de securitate, selectați WEP.
- Completați paginile rămase și faceți clic pe Următorul.
- Faceți clic pe Setări de conexiune.
- Accesați fila Securitate și, în lista Tip de securitate, selectați General.
- Faceți clic pe OK și apoi faceți clic pe Închidere.
Când Wi-Fi a fost dezvoltat pentru prima dată la sfârșitul anilor 1990, Wired Equivalent Privacy (WEP) a fost creat pentru a oferi confidențialitate wireless. WEP, așa cum a devenit cunoscut, era teribil de imperfect și ușor de spart.
Ca înlocuitor, majoritatea punctelor de acces wireless folosesc acum Wi-Fi Protected Access II cu o cheie de securitate wireless pre-partajată cunoscută sub numele de WPA2-PSK. WPA2 folosește un algoritm de criptare AES mai puternic, care este foarte greu de spart, dar nu imposibil.
Punctul slab al sistemului WPA2-PSK este că parola criptată este folosită în ceea ce se numește o strângere de mână în 4 căi. Când un client este autentificat printr-un punct de acces (AP), clientul și AP parcurg 4 pași de autentificare a utilizatorului la punctul de acces. Dacă putem captura parola în acest moment, putem încerca să o spargem.
În acest tutorial din seria noastră de hacking Wi-Fi, ne vom uita la utilizarea și la atacul dicționarului unei parole criptate după capturarea acesteia într-o strângere de mână în 4 direcții.
Pasul 1: puneți adaptorul Wi-Fi în modul de monitorizare cu Airmon-NG
Să începem prin a pune adaptorul nostru wireless în modul de monitorizare. Acest lucru este similar cu punerea unui adaptor cu fir în modul promiscuu. Ne permite să vedem tot traficul wireless care trece pe lângă noi în aer. Să deschidem un terminal și să introducem:
airmon-ng start wlan0
Vă rugăm să rețineți că airmon-ng a redenumit adaptorul dvs. wlan0 în mon0.
Pasul 2: Capturați traficul de la Airodump-NG
Acum că adaptorul nostru wireless este în modul de monitorizare, avem capacitatea de a vedea tot traficul wireless care trece prin aer. Putem captura pur și simplu traficul folosind comanda airodump-ng.
Această comandă captează tot traficul pe care adaptorul wireless îl poate vedea și reflectă informații importante despre acesta, inclusiv BSSID (adresa MAC a punctelor de acces), puterea, numărul de cadre de semnalizare, numărul de cadre de date, canalul, viteza de criptare (dacă este disponibilă), și, în sfârșit, ESSID (ceea ce majoritatea dintre noi numim SSID). Să facem asta cu comanda:
airodump-ngmon0
Rețineți că toate punctele de acces vizibile sunt listate în partea de sus a ecranului, iar clienții sunt listați în partea de jos a ecranului.
Pasul 3: Concentrați Airodump-NG pe un punct de acces și pe un canal
Următorul nostru pas este să ne concentrăm eforturile pe un singur punct de acces și un canal și să captăm date importante din acesta. Avem nevoie de BSSID și canal pentru asta. Să deschidem un alt terminal și să introducem:
airodump-ng --bssid 08:86:30:74:22:76 -c 6 --write WPAcrack mon0
08:86:30:74:22:76 este BSSID-ul
- c 6 - canalul pe care operează AP
WPAcrack este fișierul în care doriți să scrieți
lun 0
După cum puteți vedea în captura de ecran de mai sus, acum ne concentrăm pe colectarea datelor de la un singur ESSID Belkin276 pe canalul 6. Belkin276 este probabil SSID-ul implicit care este o țintă principală pentru hacking wireless, deoarece utilizatorii care lasă ESSID-ul activat În mod implicit, de regulă, ei nu depun mult efort pentru securitatea lor.
Pasul 4: Aireplay-NG Deauth
Pentru a captura parola criptată, trebuie să avem autentificare client pe AP. Dacă utilizatorul este deja autentificat, îl putem dezautentifica (deconecta), iar sistemul lor se va reautentifica automat și le putem captura parolele criptate în acest proces. Să deschidem un alt terminal și să introducem:
aireplay-ng --deauth 100 -a 08:86:30:74:22:76 mon0
100 - numărul de cadre de deautentificare pe care doriți să le trimiteți
08:86:30:74:22:76 - acesta este BSSID-ul AP-ului
mon0 - adaptor wireless pentru monitorizare
Pasul 5: Capturarea strângerii de mână
Într-un pas preliminar, am deconectat utilizatorul de la propriul său AP, iar acum, când se reautentifică, airodump-ng va încerca să-și capteze parola în nou 4 scenă strângere de mână. Să ne întoarcem la terminalul nostru airodump-ng și să verificăm dacă am avut succes sau nu.
Rețineți că pe linia de sus din extrema dreaptă, airodump-ng spune „Strângere de mână WPA”. Acesta este el care raportează că am capturat cu succes parola criptată! Acesta este primul pas către succes!
Pasul 6: Dați parola Aircrack-NG!
Acum avem parola criptată în fișierul WPAcrack și putem rula acest fișier cu aircrack-ng cu ajutorul fișierului de parolă din setul nostru. Amintiți-vă că acest tip de atac este la fel de bun ca și fișierul dvs. de parole. Autorul a folosit lista de parole standard inclusă în aircrack-ng pe BackTrack sub numele darkcOde.
Acum vom încerca să spargem parola deschizând un alt terminal și introducând: