în ultima mea postare am trecut prin configurarea unui adaptor extern USB Wi-FI și am trecut prin pașii de configurare pentru a pune adaptorul în modul monitor. De asemenea, ne-am uitat la ieșirea standard a airodump-ng și am reușit să obținem o grămadă de informații bune despre toate punctele de acces din jurul nostru, inclusiv ESSID, BSSID, ce canal operau, ce tip de criptare folosesc și ce tip de autentificare folosesc.
acum că avem toate aceste informații, putem alege un singur AP care să fie ținta noastră în scopul încercării de a sparge cheia pre-partajată WPA2 (PSK) care este configurată pe punctul de acces. Odată ce reușim să obținem acel PSK, vom putea să ne asociem cu punctul de acces și să începem să ne învârtim în jurul rețelei la care este conectat.
configurarea adaptorului nostru și alegerea unei ținte
vom începe prin a pune adaptorul USB Wi-FI în modul monitor. Dacă nu sunteți sigur ce se întâmplă aici, vă rugăm să consultați articolul anterior.
acum, să vedem ce puncte de acces sunt lângă noi și să alegem unul pe care să-l vizăm. Pentru a face acest lucru, vom rula airodump-ng în forma sa cea mai de bază, luând doar un singur parametru – numele interfeței monitorului.
airodump-ng wlan1mon
din această listă, vom alege un AP pentru a viza. Va trebui să notăm BSSID, ESSID și canalul AP. Deoarece vizăm WPA2-PSK în acest exemplu, va trebui să alegem un AP al cărui tip de criptare este listat ca WPA2 și al cărui tip de AUTH este PSK.
captarea cadrelor către/de la AP-ul vizat
odată ce avem aceste informații, vom putea folosi airodump-ng pentru a viza AP-ul respectiv și clienții săi conectați în mod specific. În timp ce facem acest lucru, vom specifica și parametri suplimentari pe care nu i-am specificat înainte. Vom specifica numele canalului pe care AP-ul nostru țintă rulează cu comutatorul –c, numele BSSID cu comutatorul-bssid și numele unui fișier de ieșire cu comutatorul-W.
fișierul de ieșire va conține toate cadrele capturate pe care adaptorul nostru wireless în modul monitor este capabil să le captureze. Ceea ce căutăm să capturăm în mod specific este o strângere de mână de autentificare WPA2-PSK între un client și AP. Această strângere de mână conține o versiune hash a cheii pre-partajate, pe care o vom forța mai târziu.
în acest exemplu folosesc valorile care au venit de la AP-ul meu țintă (cu BSSID ușor umbrit din motive de confidențialitate). Veți folosi propriile valori, obținute din sesiunea noastră anterioară de airodump-ng pentru a le înlocui pe ale mele. Nu este necesar să specificați o extensie pentru fișierul dvs. de ieșire, deoarece vor fi create mai multe, fiecare cu o extensie corespunzătoare, automat.
airodump-ng -c 1 --bssid 00:15:FF:EE:EE:EE -w capture wlan1mon
veți observa că această ieșire airodump-ng arată similar cu ultima ieșire, doar lista APs nu este populată cu mai mult decât cea pe care am specificat-o. De asemenea, câmpul canalului din colțul din stânga sus nu vânează, deoarece am specificat canalul pe linia de comandă. airodump-ng captează acum doar pachetul pentru AP pe care l-am specificat, pe canalul pe care l-am specificat. În partea de jos a terminalului, lista clienților conectați ar trebui să înceapă să se populeze.
acest proces ar putea dura un pic mai mult pentru a rula, mai ales dacă nu există o mulțime de clienți conectați la AP. Pentru ca acest lucru să funcționeze, avem nevoie de cel puțin un client conectat care vorbește cu AP, dar cu cât sunt mai mulți clienți conectați simultan, cu atât va fi mai ușor să capturați o strângere de mână de autentificare WPA2-PSK.
accelerarea capturii cu un atac Deauthentication
dacă adaptorul wireless acceptă injecție de pachete, putem accelera acest proces folosind utilitarul aireplay-ng. Putem face acest lucru deschizând un nou shell, deoarece dorim să menținem airodump rulând / capturând în fundal și folosind următorul context.
aireplay-ng -0 10 -a 00:15:FF:EE:EE:EE wlan1mon
comutatorul -0 spune aireplay-ng câte pachete de deauthentication (deauth) să difuzeze „din AP.”În teorie, ceea ce ar trebui să se întâmple este că toți clienții conectați la AP ar trebui să primească aceste emisiuni deauth, să se autentifice de la AP și apoi să se autentifice automat la AP odată ce difuzarea deauth se oprește. În acest exemplu, vom trimite 10, care ar trebui să fie suficient pentru a forța o strângere de mână să se întâmple la reautentificare, având în vedere numărul de clienți conectați la acest AP.
comutatorul-a specifică ESSID-ul AP, iar opțiunea finală este doar numele interfeței modului monitor.
după ce conduc atacul deauth, observați ceva ce nu am văzut înainte. În colțul din dreapta sus al ferestrei airodump, putem vedea acum că a fost capturată o strângere de mână WPA. (Derulați până la ultima imagine pentru a vedea că nu a fost acolo înainte). Din moment ce capturam fișierul nostru de ieșire în tot acest timp, acel fișier ar trebui să conțină acum o captură a strângerii de mână WPA2-PSK.
dacă nu puteți captura o strângere de mână imediat, ar putea fi o idee bună să așteptați câteva minute și să încercați din nou atacul aireplay. De asemenea, ar putea fi o idee bună să țină seama de avertismentul pe care aireplay ne-a dat după ce am fugit comanda și de a efectua un atac vizat. În loc să trimitem transmisiuni către toți clienții conectați, vom direcționa un atac deauthentication către un singur client conectat. Sintaxa pentru care este după cum urmează.
aireplay-ng -0 10 -a 00:15:FF:EE:EE:EE -c E0:46:9A:11:22:33 wlan1mon
un atac direcționat este în esență aceeași comandă, dar are comutatorul-c adăugat și specifică adresa MAC a clientului wireless pe care încercăm să o dăm.
informații despre fișierul de captare a cadrelor
acum că am capturat o strângere de mână WPA2-PSK, puteți opri sesiunea airodump apăsând CTRL+C. acum vor exista mai multe fișiere legate de captare în directorul dvs. de acasă. Cel care ne preocupă cel mai mult este .fișier cap care corespunde capturii pe care am luat-o mai sus. Am folosit comutatorul-w pentru a apela ieșirea mea de captare” capturefile”, deci fișierul cu care mă preocupă este capturefile-01.cap.
acum că avem fișierul de care avem nevoie, îl putem lua offline pentru a sparge. Nu există niciun motiv să rămâneți în vecinătatea AP pe care o vizați dacă nu doriți. Evident, dacă acest lucru este într-un mediu de laborator nu contează, dar în lumea reală, poate. Vom reveni după ce (sperăm) am rupt cheia pre-partajată.
în plus față de comoditatea de a nu fi nevoit să vă agățați în jurul țintei în timp ce hash-ul lor este crăpat (ceea ce poate dura mult timp), există o altă comoditate din lumea reală prin faptul că hash-urile de cracare folosind doar puterea procesorului este un proces lent și aproape inutil. În mod realist, ați duce fișierul de captare înapoi la o mașină care rulează unul sau mai multe GPU-uri și utilizați aceste GPU-uri pentru a sparge cheia cu un utilitar care acceptă cracarea GPU, cum ar fi Hashcat.
dacă nu credeți că un GPU ar face o mare diferență față de un procesor rapid, rețineți acest studiu din lumea reală pe care l-am făcut chiar zilele trecute. În încercarea de a sparge o cheie WPA2-PSK, am folosit o comandă care ar rula fiecare număr de telefon dintr-un cod de zonă împotriva unui fișier capturat (mulți utilizatori folosesc un număr de telefon din 10 cifre ca cheie WPA2). Știind ce cod de zonă urma să folosesc, asta a lăsat 10.000.000 de posibilități. Un Intel Core i5-7400 care rulează la 3.0 GHz a durat 8 ore și 14 minute pentru a finaliza această operație. Un GeForce GTX 1070 a făcut același lucru în 52 de secunde.
în următoarea postare, vă voi arăta cum să vă convertiți .fișier cap la un .fișier hccapx, care este formatul cu care Hashcat îi place să lucreze. Vă voi arăta, de asemenea, câteva dintre metodele pe care îmi place să le folosesc pentru a sparge hash-urile folosind Hashcat, care se pot aplica practic oricărui hash, nu doar hash-urilor WPA2-PSK.