Как да разберете паролата от вашата Wi-Fi мрежа? Разбиване на WiFi пароли - декриптиране на ръкостискане Програма за gpu изброяване на wpa ключове.

Ако имате проблеми с безжичните устройства, трябва да прочетете статията.

Преглед на Reaver

Reaver е предназначен за груба сила на WPS (Wifi Protected Setup) щифт. Крайната цел е да дешифрирате WPA/WPA2 паролата. Reaver е проектиран да бъде надеждна и практична WPS атака и е тестван на голям брой точки за достъп с различни WPS реализации. Средно Reaver разрешава паролата с обикновен текст WPA/WPA2 на целевата точка за достъп (AP) за 4-10 часа, в зависимост от AP. На практика обикновено отнема половината от това време, за да познаете WPS щифта и да познаете паролата.

защото Тъй като оригиналната версия на Reaver не е актуализирана от януари 2012 г., беше направено разклонение. Разклонителен сайт -

Скрит от гостите

Последните промени във форка датират от януари 2014 г.

Животът не стои неподвижен. И съвсем наскоро (през април 2015 г.) беше официално пусната модифицирана версия на вилицата Reaver. Сайтът на тази модификация -

Скрит от гостите

Основната му разлика е, че може да използва атаката Pixie Dust, за да намери правилния WPS щифт. Тази атака е приложима за много точки за достъп на Ralink, Broadcom и Realtek. Атаката, използвана за тази версия, е разработена от Wiire.

Модифицираната версия на Reaver се стартира по същия начин като форка. Новите ключове на вилицата и какви иновации ни носят ще бъдат обсъдени по-долу.

Преди да започнем, интересуващите се от темата за анализиране и хакване на Wi-Fi мрежи също се пренасочват към статията "". Той използва метод за прихващане на ръкостискане (от Wifite) и предлага много бърз метод за дешифриране на парола. Скоростта се постига чрез използването на технология за значително ускоряване на изброяването на паролите.

Основните вектори на хакване на Wi-Fi мрежи:

  • прихващане на ръкостискания (ръкостискания) и последващото им грубо форсиране
  • избор на щифт на AP с активиран WPS.
Тази статия е посветена на втория метод.

Ако сте прихванали ръкостискания и искате груба сила, имам още няколко връзки за вас. Първият, който препоръчах малко по-горе, ви казва как да направите бързо търсене в речника. А в статията "", както подсказва името й, се говори за изброяване по маска. Това значително ще ускори процеса, ако знаем някои символи от паролата или знаем правилата, според които е генерирана тази парола. Като цяло Hashcat е мощна програма, която може да кракне не само Wifi WPA / WPA2 пароли, но и MD5, phpBB, MySQL, SHA1 пароли и много други.

Същността на метода за атака на Reaver е изборът на WPS

Основното нещо, от което се нуждаем от атакуваната точка за достъп, е WPS да е активиран на нея. Ако ПИН кодът е въведен правилно, AP ще ни предостави необходимите данни за удостоверяване (включително WPA PSK).

Както вече споменахме, трябва да въведете правилния ПИН. Мисля, че всички вече се досетиха, че Reaver се занимава със сортиране на щифтовете, докато намери правилния. За този щифт се знае следното: това е осемцифрено число. Можете да го въведете по всяко време - не са необходими действия от страна на собственика на ТД. Не се нуждаем от повече информация: нито за настройките на AP, нито за криптиране или конфигурация. За осемцифрени числа има 10^8 (100 000 000) опции. Но последната цифра не е произволна, тя се изчислява според алгоритъма, т.е. с прости думи, ние винаги знаем последната цифра и броят на възможните опции е намален до 10 ^ 7 (10 000 000).

Е, сякаш нарочно, за да ни улесни грубата сила, щифтът е разделен на две половини и всяка от тези половини се проверява поотделно. Това означава, че има 10^4 (10 000) възможни избора за първата половина и общо 10^3 (1000) за втората половина, тъй като последната цифра не е произволна.

Reaver взима първата половина на кеглата и след това втората. Общият брой възможни опции, както току-що изчислихме, е 11 000. Скоростта, с която Reaver тества пин номера, зависи изцяло от скоростта, с която AP може да обработва заявки. Някои са доста бързи - можете да тествате един пин в секунда, други са по-бавни, позволяват ви да въвеждате само един пин на 10 секунди.

Инсталиране на Reaver

  • има превод на цялата помощ на Reaver за всички ключове;
  • говори за три нови превключвателя: -K // -pixie-dust в reaver; -H // --pixiedust-log in reaver; -P // --pixiedust-loop в reaver
MAC спуфинг

В някои случаи може да искате/трябва да промените своя MAC адрес. Reaver поддържа подправяне на MAC адрес с опцията -mac, но трябва да се уверите, че MAC адресът е правилно подправен, тъй като има нюанси.

Промяната на MAC адреса на виртуалния интерфейс в режим на монитор (сега наричан wlan0mon) НЯМА ДА РАБОТИ. Трябва да промените MAC адреса на физическия интерфейс на вашата безжична карта. Например:

# ifconfig wlan0 down # ifconfig wlan0 hw ether 04:DE:AD:BE:EF:45 # ifconfig wlan0 up # airmon-ng start wlan0 # reaver -i wlan0mon -b 4C:72:B9:FE:B8:0C -vv --mac=04:DE:AD:BE:EF:45

Използването на Wi-Fi безжични мрежи вече е много разпространено. Много потребители мислят за сигурността на своите мрежи и компютри, понякога имат въпроси за това как Wi-Fi е хакнат, колко реална е тази заплаха?

В тази бележка предлагам на обикновените потребители, може би далеч от проблемите на одита на сигурността на Wi-Fi, да погледнат своята Wi-Fi мрежа през очите на хакер и дори да се чудят, как да хакна wifi?

Условия за Wi-Fi мрежи

Точка за достъп(също точка за достъп), съкратено TD, AP- устройство, което осигурява работата на Wi-Fi мрежата, Клиентите се свързват с него. Най-често срещаните точки за достъп са рутери.

Клиент(гара) - устройство, което се свързва към точката за достъп. Най-често това са компютри, лаптопи, мобилни телефони и др.

ESSIDи SSID- това са имената на безжичните Wi-Fi мрежи - те са това, което виждате, когато избирате към коя мрежа да се свържете. Строго погледнато, ESSID и SSID не са едно и също нещо, но термините често се използват взаимозаменяемо в одита на Wi-Fi. На екранната снимка по-долу ESSID (имената на мрежата) са MiAl, wifi88 и т.н.:

Ръкостискане(също ръкостискане, ръкостискане) - обмен на данни между станцията и точката за достъп в момента на създаване на Wi-Fi връзка. Тези данни съдържат информация, която ви позволява да познаете паролата от Wi-Fi мрежата.

груба сила(също изчерпателно търсене) - метод за атака на парола, който се състои в изброяване на всички възможни опции за парола. Изисква много време и компютърни ресурси.

Търсене в речника (речникова атака) - метод за атака на парола, който се състои в изброяване на често срещани опции за парола. Има добро съотношение на изразходваните ресурси към получените резултати.

Онлайн парола за Wi-Fi груба сила- метод за отгатване на парола, който се състои в свързване към точка за достъп с различни кандидати за парола. Практически не се използва поради изключително ниската скорост на изброяване.

Офлайн парола за wifi груба сила- метод за избор на парола, който се състои в улавяне на ръкостискането и избор на парола, която да съответства на това ръкостискане. Този избор не изисква връзка с точката за достъп и се извършва много порядъци по-бързо от онлайн изброяването. Може да се изпълнява и върху изчислителната мощност на видеокартите, което увеличава скоростта на изброяване с няколко порядъка.

WPAи WPA2 Wi-Fi технологията за защитен достъп замени остарялата WEP технология.

Безжична WiFi карта(или безжичен wifi адаптер) - всяка мрежова карта, способна да се свързва към Wi-Fi мрежа. При лаптопите и телефоните те са вградени в кутията, а при настолните компютри обикновено са външно устройство, свързано чрез USB.

Режим на монитор (Режим на монитор) - свойството на някои безжични адаптери да получават пакети данни, които са предназначени не само за тях, но и за други безжични устройства.

мрежов интерфейс- име, символ в Linux мрежови карти / адаптери.

Wi-Fi мрежов канал- условно цифрово обозначение на честотата, на която точката за достъп работи в момента.

Какво ви трябва, за да хакнете Wi-Fi

  • Компютър, на който можете да инсталирате Linux
  • Специализиран софтуер, за Linux е безплатен (т.е. безплатен и с отворен код)
  • Безжична Wi-Fi карта, която поддържа режим на монитор. текущи карти.
  • Съответни знания и умения - ще намерите в тази статия.

Wi-Fi карти, които поддържат режим на монитор, се предлагат в търговската мрежа и имат цени, съобразени с други безжични карти с подобни функции. В моя лаптоп вградената карта се оказа, че поддържа мониторен режим - т.е. това не е необичайно и всеки може да ги получи.

Специализираният софтуер за одит на Wi-Fi мрежи, както вече беше споменато, се разпространява свободно, по подразбиране присъства в специализирани дистрибуции, например в (линк обща информация и инструкции за инсталиране).

Както можете да видите, всички компоненти, необходими за хакване на Wi-Fi, са много достъпни.

Всички по-нататъшни действия се извършват в Kali Linux.

Превключване на Wi-Fi адаптера в режим на наблюдение

По подразбиране безжичните адаптери са в "управляван" режим. Този режим ви позволява да се свържете към точката за достъп като нормален клиент.

Режимът на наблюдение (монитор) е предназначен за анализ на Wi-Fi мрежи. В този режим безжичната карта получава рамки (наричани още рамки) от всеки източник на същия канал.

Тъй като трябва да уловим ръкостискането, което се състои от данните, които станцията изпраща до точката за достъп и точката за достъп изпраща до станцията (тоест, което не е предназначено за нас на нито един етап), тогава трябва да поставим нашите Wi-Fi картата в режим на монитор, така че тя да може да види тези данни и да ги запази за по-нататъшна обработка.

За да въведем команди за поставяне на Wi-Fi адаптера в режим на монитор, трябва да знаем името на безжичния интерфейс. За да направите това, отворете конзолата и въведете командата:

sudo iw dev

Името на безжичния интерфейс е посочено на реда с думата Интерфейс, т.е. в моя случай името е wlan0. Запомнете тази стойност, защото ще ни трябва по-късно.

Режимът на монитор не е нещо обичайно за операционната система, така че някои програми безшумно поставят Wi-Fi адаптера в управляван режим, без да питат. Това може да ни пречи, така че със следните две команди затваряме програмите, които могат да ни пречат:

sudo systemctl стоп NetworkManager sudo airmon-ng проверка kill

Сега най-накрая можем да поставим безжичната карта в режим на монитор. За да направите това, изпълнете поредица от команди

sudo IP връзка набор<ИНТЕРФЕЙС>надолу sudo iw<ИНТЕРФЕЙС>задайте контрол на монитора sudo ip набор за връзка<ИНТЕРФЕЙС>нагоре

заместване <ИНТЕРФЕЙС> към действителното име на вашия безжичен интерфейс (моят е wlan0):

sudo ip link set wlan0 down sudo iw wlan0 set monitor control sudo ip link set wlan0 up

Изглежда нищо не се е случило, но като напишете командата

sudo iw dev

Ще видим нещо подобно:

Има линия тип мониторпоказва, че нашата безжична карта е в режим на монитор.

Какво е ръкостискане (ръкостискане)

Както вече споменахме, ръкостискането е данни, които се предават на няколко етапа между станцията и точката за достъп в момента, когато станцията се свърже с точката за достъп. Това означава, че за да уловим ръкостискането, трябва да превключим на канала, на който работи точката за достъп, да слушаме радиосигналите и да изчакаме момента, в който станцията се свърже с нея. Тъй като чакането може да бъде дълго, се прилага трик, наречен Deauthentication Attack, който се състои в принудително нулиране на Wi-Fi връзката между точката за достъп и станцията. Веднага след такова прекъсване на връзката, станцията се опитва да се свърже отново и в този момент ние улавяме ръкостискането.

За съжаление, този метод не работи, ако никой не е свързан към точката за достъп.

Преглед на Wi-Fi мрежи

За да атакуваме Wi-Fi мрежа, трябва да знаем някои от нейните характеристики. За да получите списък с всички налични Wi-Fi мрежи в обхвата, изпълнете командата:

sudo airodump -ng wlan0

Моля, имайте предвид, че ако имате различно име на безжичен интерфейс, тогава вместо wlan0трябва да въведете това име.

Описаната атака е приложима само за мрежи, защитени с WPA2 или WPA - по-голямата част от тях са.

Ще се покаже подобен списък с мрежи:

Когато видите мрежата, която искате да атакувате в списъка, спрете програмата, като щракнете CTRL+c.

Да предположим, че се интересувам от мрежа с ESSID (име) dlink. Както можете да видите от екранната снимка, неговите характеристики са: BSSID е 00:1E:58:C6:AC:FB, използва WPA2, работи на шести канал. Освен това ненулева стойност #Data (уловени данни, изпратени до тази AP) предполага, че една или повече станции са свързани към нея.

За да заснемете ръкостискане, използвайте следната команда:

sudo airodump-ng -c КАНАЛ --bssid MAC_АДРЕС -w ФАЙЛОВ ИНТЕРФЕЙС

  • КАНАЛ- това е каналът, по който работи AP
  • МАК АДРЕСе BSSID на атакуваната AP
  • ФАЙЛ- името на файла, където ще бъде записано ръкостискането
  • ИНТЕРФЕЙС

За моите данни командата изглежда така:

sudo airodump-ng -c 6 --bssid 00:1E:58:C6:AC:FB -w улавяне wlan0

На следващата екранна снимка AP, която ни интересува, се вижда отново и секцията със станции вече е видима:

В пълния списък с точки за достъп разделът със станции също присъстваше, но надхвърляше долния край на екрана, така че не беше включен в екранната снимка.

За станцията в полето BSSID можем да видим стойността, която съответства на BSSID на точката за достъп, т.е. 00:1E:58:C6:AC:FB, това означава, че тази станция в момента е свързана с AP, която ни интересува. Сега има два варианта:

1) изчакайте, докато станцията прекъсне връзката и се свърже отново с AP по естествени причини

2) извършете атака за деавтентификация, за да ускорите процеса

Извършване на атака за деавтентификация

За да извършите деавтентификация, без да спирате записването на трафика, стартиран в предишната стъпка, отворете нов прозорец на конзолата и въведете команда като тази:

sudo aireplay-ng -0 3 -a MAC_ADDRESS ИНТЕРФЕЙС

  • МАК АДРЕСе BSSID на атакуваната AP
  • ИНТЕРФЕЙС- име на безжичния интерфейс в режим на монитор

В моя случай командата изглежда така:

sudo aireplay-ng -0 3 -a 00:1E:58:C6:AC:FB wlan0

Програмата ще изведе нещо подобно:

08:17:30 Изчакване на рамка за маяк (BSSID: 00:1E:58:C6:AC:FB) на канал 6 NB: тази атака е по-ефективна, когато е насочена към свързан безжичен клиент (-c ). 08:17:30 Изпращане на DeAuth за излъчване -- BSSID: 08:17:30 Изпращане на DeAuth за излъчване -- BSSID: 08:17:31 Изпращане на DeAuth за излъчване -- BSSID:

И в горния десен ъгъл на екрана за запис на данни ще се появи нов запис:

WPA ръкостискане: 00:1E:58:C6:AC:FB

Това означава, че ръкостискането е успешно заснето.

Атака с речник на парола за Wi-Fi

Сега трябва да стартираме търсенето на данни.

Да подготвим речник:

Cp /usr/share/wordlists/rockyou.txt.gz. gunzip rockyou.txt.gz котка rockyou.txt | сортиране | уникален | pw-инспектор -m 8 -M 63 > newrockyou.txt

Файлът с речник в този случай се извиква newrockyou.txt.

За да разберете името на заснетото ръкостискане, изпълнете командата:

Ls -l улавяне*

Това ще изведе нещо като следното (може да има повече записи, ако многократно сте заснели ръкостискания):

Rw-r--r-- 1 корен корен 73164 30 септември 08:24 capture-01.cap -rw-r--r-- 1 корен корен 478 30 септември 08:24 capture-01.csv -rw-r- -r-- 1 корен корен 583 30 септември 08:24 capture-01.kismet.csv -rw-r--r-- 1 корен корен 2766 30 септември 08:24 capture-01.kismet.netxml

Ние се интересуваме само от файла capture-01.cap- съдържа ръкостискане.

За да преминете през речник, използвайте следната команда:

aircrack-ng -w DICTION_FILE CAPTURE_FILE

Така че в моя случай точната команда е:

Aircrack-ng -w newrockyou.txt capture-01.cap

Тази команда стартира отгатване на парола, в процеса на изброяване се показва следният прозорец:

Избрана парола:

Това пише в записа НАМЕРЕНО КЛЮЧ! [pattayateam], в който паролата за Wi-Fi мрежата е pattayateam. Използвайки тази парола, можете да се свържете към безжична точка за достъп от всяко устройство (компютър, телефон), както правят другите законни потребители.

Заключение

Както можете да видите, хакването на Wi-Fi не е нещо изключително трудно, въпреки че изисква познаване на някои Linux команди. Показаният тук е само един пример от много варианти на Wi-Fi атака. Ако се интересувате от темата за одит на безжични мрежи, вижте книгата "".

Ползи от използването на Pyrit

Кракването на заснети ръкостискания е единственият начин за кракване на WPA/WPA2 пароли. Произвежда се по метода на груба сила (парола груба сила).

Между другото, ако все още не сте запознати с техниката за заснемане на ръкостискания, вижте статията "".

Тъй като използването на груба сила не гарантира положителен резултат, са измислени няколко техники, които могат значително да увеличат шансовете за успех. Те включват:

  • използване на видео карти за отгатване на пароли (значително увеличава скоростта на изброяване)
  • използване на таблици с предварително изчислени хешове (повишена скорост + възможност за повторно използване за една и съща точка за достъп, възможност за изпробване на десетки ръкостискания от една точка за достъп за секунди)
  • използване на добри речници (увеличава шансовете за успех)

Pyrit може да използва всички тези техники, поради което е най-бързият инструмент за кракване на пароли WPA / WPA2 или един от първите два заедно с oclHashcat.

Други програми също прилагат тези техники. Например, както oclHashcat, така и coWPAtty прилагат итерация на речника. coWPAtty има предварително изчисляване на хеш (но няма поддръжка за използване на графични карти). oclHashcat ви позволява да използвате мощността на видеокартите, но не изчислява предварително хешовете. Гледайки напред, отбелязвам, че в oclHashcat е възможно да се приложи предварително изчисление на хешове и да се използват многократно получените данни за една точка за достъп, за да се проверят няколко ръкостискания, без да се увеличава времето за изчисляване на хешовете, как да направите това ще бъде описано по-късно. Aircrack-ng итерира речник и използва ефективно многоядрените процесори, но не използва други „ускорения“.

В моята система oclHashcat грубо принуждава да разбива WPA/WPA2 пароли при 31550 H/s и Pyrit изчислява хешове при 38000-40000 PMK. По-нататъшната проверка на ръкостисканията отнема по-малко от секунда. От това се вижда, че дори при проверка на едно ръкостискане увеличаваме скоростта с около една трета, а ако искаме да проверим няколко ръкостискания за една AP, тогава с oclHashcat трябва да започнем отначало. В Pyrit всяко ново ръкостискане отнема част от секундата.

За да може Pyrit да разгърне пълната си мощност, трябва да имате инсталирани собствени драйвери за видеокарти. Вижте статията "" и посочения в нея материал - тя обяснява стъпка по стъпка как да инсталирате драйвери и Pyrit в Kali Linux 2 на компютър с графична карта от AMD. Трябва да изпълните всички стъпки, а не само последната инструкция. Нямам компютър с NVidia, така че нямам актуални инструкции как да инсталирам драйвера и Pyrit за системи, базирани на NVidia.

Най-бързо разбиващите се WPA/WPA2 пароли

Първоначалните ми данни:

  • нападнат ТД - ДАНИЕЛ2015
  • извиква се файлът с предварително заснетото ръкостискане DANIELLE2015-01.кап

WPA/WPA2 хакерски речник

Ще използвам речника rockyou, който идва с Kali Linux. За обучение това е напълно достатъчно, но за практически атаки мога да препоръчам генерираните речници на телефонни номера, генерирани речници за конкретни AP под формата AP_name + номера, които попълват паролата до осем знака.

Нека копираме най-добрия речников файл в основната директория.

Cp /usr/share/wordlists/rockyou.txt.gz.

Нека го разопаковаме.

gunzip rockyou.txt.gz

Тъй като се изисква минималната WPA2 парола да бъде 8 знака, нека анализираме файла, за да филтрираме всички пароли, които са по-малко от 8 знака и повече от 63 (всъщност можете просто да пропуснете този ред, зависи изцяло от вас). Така че ще запазим този файл като newrockyou.txt.

котка rockyou.txt | сортиране | уникален | pw-инспектор -m 8 -M 63 > newrockyou.txt

Да видим колко пароли съдържа този файл:

Wc -l newrockyou.txt

Съдържа цели 9606665 пароли.

Оригиналният файл съдържа дори повече.

Wc -l rockyou.txt

Има 14344392 пароли. Така че направихме този файл по-кратък, което означава, че можем да тестваме AP за по-кратко време.

И накрая, нека преименуваме този файл на wpa.lst.

Mv newrockyou.txt wpa.lst

Създайте ESSID в базата данни Pyrit

Сега трябва да създадем ESSID в базата данни Pyrit

Pyrit -e DANIELLE2015 create_essid

ПРЕДУПРЕЖДЕНИЕ: Ако има интервал в името на AP, като например „NetComm Wireless“, тогава вашата команда ще бъде нещо подобно:

Pyrit -e "NetComm Wireless" create_essid

Страхотно, вече имаме ESSID, добавен към базата данни на Pyrit.

Импортиране на речник в Pyrit

Сега, след като ESSID е добавен към базата данни на Pyrit, нека импортираме нашия речник на паролите.

Използвайте следната команда, за да импортирате предварително изградения речник на паролите wpa.lst в базата данни Pyrit.

Pyrit -i /root/wpa.lst импортирани_пароли

Създавайте таблици в Pyrit, като използвате групов процес

Лесно е, просто въведете следната команда

партида пирит

Тъй като тази операция се извършва на лаптоп, имам 38000-40000 PMK. Това далеч не е границата - настолните компютри с добра графична карта ще ви помогнат значително да увеличите скоростта на тези изчисления.

Трябва да внимавате колко голям е речниковият ви файл и колко ГОРЕЩИ са процесорът и графичният ви процесор. Използвайте допълнително охлаждане, за да избегнете повреда.

Процес на хакване с Pyrit

Ще използваме атака на ръкостискане, използвайки база данни от предварително изчислени хешове. След като завършихме всички необходими подготвителни стъпки, стана доста лесно да стартираме атаката. Просто използвайте следната команда, за да стартирате процеса на хакване.

Pyrit -r DANIELLE2015-01.cap attack_db

Това е всичко. Целият процес, включително предварителното изчисляване на хешовете, отне няколко минути. Отне по-малко от секунда, за да обходите цялата таблица на базата данни, за да получите паролата, ако присъства в речника. Моята скорост достигна 6322696 PMKs. Той е най-бързият досега.

Това отнема секунди - така че винаги си струва да се използва, ако не бъде намерена парола.

Ръкостискателна атака с речник в Pyrit без използване на предварително изчислени таблици

Ако не ви се създава база данни, но искате да се забърквате директно с файла с речника (което е много по-бавно), можете да направите следното:

Pyrit -r DANIELLE2015-01.cap -i /root/wpa.lst attack_passthrough

Скоростта на този метод? 17807 PMKs в секунда. Много по-бавно за моя вкус.

Почистване на Pyrit и базата данни

Накрая, ако е необходимо, можете да премахнете вашия essid и да почистите.

Pyrit -e DANIELLE2015 delete_essid

Това ще освободи доста дисково пространство.

На нашия сайт многократно сме засягали темата за анализа. Днес ще ви кажем как да познаете паролата за вашата безжична WiFi точка, като използвате метода на груба сила. За тази задача ще използваме процесорната мощност на видеокартата. Както може би знаете, видеокартите имат процесор, който може да изпълнява операции с плаваща запетая много по-добре от централен процесор. Това е идеално за груба сила на WPAWPA2 пароли към WiFi точки за достъп. Ще използваме програмата pyrit като софтуер за нашата задача.

Малко за програмата:
Pyrit ви позволява да създавате огромни бази данни за изчисление на WPA/WPA2-PSK удостоверяване. Използването на изчислителната мощност на многоядрени и други платформи чрез ATI-Stream, Nvidia CUDA и OpenCL в момента е най-мощната атака срещу един от най-често използваните протоколи в света на сигурността.


WPA/WPA2-PSK е подмножество от стандарта IEEE 802.11 WPA/WPA2, което усложнява разпределението на ключовете и удостоверяването на клиента чрез присвояване на всеки участващ предварително споделен ключ. Този главен ключ се извлича от парола, която потребителят трябва да настрои предварително, например на своя лаптоп и гореща точка. Когато лаптопът създаде връзка с точката за достъп, нов сесиен ключ се извлича от главния ключ за криптиране и удостоверяване Когато лаптопът създаде връзка с точката за достъп, нов сесиен ключ се генерира от главния ключ за шифроване и разреши последващ трафик. „Икономиите“ от използването на единичен главен ключ вместо отделни ключове за всеки потребител опростяват внедряването на WPA/WPA2 мрежи в домове и малки офиси с цената на уязвимостта на протокола към груба сила на фазата на прехвърляне на ключ. Това ви позволява да разкриете напълно паролата, която защитава мрежата.

Каква е печалбата? Сравнете броя на pmk/s на aircrack-ng и pyrit:

Резонно е да се отбележи, че всички действия са извършени в ubuntu 10.04 R2 x86_64 с видеокарта Ati R6950 Twin Frozr III.
(Тоест всичко е вярно за всякакви системи, подобни на ubuntu, по-специално за backtrack 5, с минимални разлики за 32 и 64 битови системи).

Инсталация
Списък на необходимите програми:
1. AMD драйвер 11.6
2. AMD APP SDK 2.4tyrk 1tyrk 2
3. Пирит svn checkoutpyrit.googlecode.com/svn/trunk/ pyrit_svn
4.Calpp++

1. Инсталиране на драйвери:

chmod + x ati - драйвер - инсталатор - 11 - 5 - x86 . x86_64. тичам

sudo . /ati-driver-installer-11-5-x86. x86_64. тичам

sudo рестартиране

2. Инсталиране на AMD APP SDK 2.4:

cp /home/user/Downloads/AMD-APP-SDK-v2. 4 - lnx64. tgz/начало/потребител

cd /home/user

tar - xvzf AMD - APP - SDK - v2 . 4 - lnx64. tgz

sudo gedit ~/. bashrc

В долната част на този файл добавете следните редове:

експортирайте AMDAPPSDKROOT

експортирайте AMDAPPSDKSAMPLESROOT

експортирайте AMDAPPSDKROOT=/home/user/AMD-APP-SDK-v2. 4 - lnx64

експортирайте AMDAPPSDKSAMPLESROOT=/home/user/AMD-APP-SDK-v2. 4 - lnx64 /проби

експортиране LD_LIBRARY_PATH=$AMDAPPSDKROOT/lib/x86 : $AMAPPSDKROOT/lib/x86_x64 : $LD_LIBRARY_PATH

FIND_LIBRARY (LIB_ATICALCL aticalcl PATHS)

FIND_LIBRARY(LIB_ATICALRT aticalrt PATHS "/home/user/AMD-APP-SDK-v2.4-lnx64/lib/x86_64/")

FIND_PATH (LIB_ATICAL_INCLUDE NAMES cal .h calcl .h PATHS "/home/user/AMD-APP-SDK-v2.4-lnx64/include/CAL")

sudo cmake.

sudo make install

! Променете /user/ на вашето потребителско име
Разумно е да се отбележи, че горният вариант работи за системи с всякакъв капацитет.

3. Регистрирайте icd-регистрация:

tar xfz$AMDAPPSDKROOT/icd-регистрация. tgz

sudo cp $ AMDAPPSDKROOT /etc/etc

ВАЖНО!
Някои ръководства на английски език описват инсталирането на двете технологии, които използват Ati карти за директно взаимодействие с картата, това е OpenCL, който е морално и физически остарял за този случайи Calpp с библиотеките libboost, които ще използваме.

4.Calpp инсталация:

sudo apt - вземете инсталиране на libboost1. 40 - всички - dev cmake

tar - xvzf calpp - 0.90.tar.gz

cd calpp - 0,90

sudo gedit CMakeLists. текст

Коригирайте FIND_LIBRARY на следните стойности:

5. Инсталиране на Pyrit:

sudo apt - get install g++ python - dev zlib1g - dev libssl - dev python - scapy libpcap0. 8 libpcap0 . 8-dev libpcap-dev

svn проверка pyrit. googlecode. com/svn/trunk/pyrit_svn

cd /pyrit_svn/pyrit

cd . .

cd cpyrit_calpp

настройка на sudo python. py build инсталирайте

Това завършва инсталацията.
Проверка на правилната инсталация:

2. Изпълнете теста за оценка:

еталон за пирит

изход (броят pmk/s естествено ще зависи от вашата видеокарта):

# 2: "CPU-Core (SSE2)": 643,5 PMKs/s (RTT 3.0)

Резонно е да се отбележи, че 1 видеокарта замества 1 процесорно ядро, т.е. ако имате 2 или повече карти или карта с двоен чип, изходът ще бъде като този:

# 1 : "CAL++ устройство #1 "ATI CYPRESS"" : 82426,3 PMKs / s (RTT 2.4)

# 2 : "CAL++ устройство #2 "ATI JUNIPER"" : 41805,7 PMKs / s (RTT 2.6)

# 3: "CPU-Core (SSE2)": 655,1 PMKs/s (RTT 3.0)

# 4: "CPU-Core (SSE2)": 691,0 PMKs/s (RTT 2.9)

# 5: „Мрежови клиенти“: 0,0 PMKs/s (RTT 0,0)

ВАЖНО!
В pyrit можете да създавате цели бази данни от предварително компилирани хешове за отгатване на пароли. Има 2 опции за съхранение и използване на тези бази данни:
Опция 1- съхранение на база в скритата домашна папка на потребителя. Аз го наричам мобилен, т.е. взема се файл с 1 милион често срещани пароли, след което към него се добавят всякакви essid за бърза проверка (1 милион думи + 1 essid на моята карта е около минута време).

професионалисти:
Файлът с паролите е качен 1 път и е забравен (може да качвате колкото искате, но НЕ е желателно)
Произволен брой essid с всякакви имена
Малко време инвестиция

минуси:
При използване на повече от 20 милиона речника и поне 10 различни essid се изразходва много повече време.

ЗаключениеПозитивите се превръщат в негативи и обратно. От себе си отбелязвам, че това е идеална опция, ако имате проникващ речник до 1 милион думи, което ще ви позволи да проверявате различни .cap файлове с висока скорост.
Пример за употреба:
анализирам

пирит - r cap - 01.cap - b 00 : 11 : 22 : 33 : 44 : 55 атака_партида

пирит - r cap - 01.cap атака_партида

Вариант 2- съхраняване на базата данни във всяка определена папка на потребителя. Това е по-задълбочен подход. Позволява ви да създадете база данни за конкретни essid и определен брой пароли, т.е. взема се файл със 100 милиона пароли, след което към него се добавят всякакви есиди с уникални имена. След това базата данни се компилира и обвързва със специфичните essid, които сте качили в нея. След компилация скоростта се увеличава с 5-7 пъти. Ще кажете страхотен вариант и ще сте прави, но разбира се има и лъжица измама 🙂 уловката се крие във времето за компилация, което естествено зависи от броя на паролите и essid и е дълго.

професионалисти:
Да кажем, че 1 база на 10 уникални essid може да се използва за всякакви точки за достъп, при условие че името на точката съвпада с това, което е в базата. Тези. ако двама от вашите съседи имат dlink име на точка за достъп, но разбира се различни mac-адреси, това НЯМА да ви попречи да ги итерирате във вашата база, без да се налага да създавате нова база.
Скорост
Огромна скорост
Направих 1 база за най-често срещаните essid и ги проверявам за минимално време във всеки!!! количества.

минуси:
Време за компилиране
Заема много място на твърдия диск.

Заключение- сухи факти за моята база данни: 850 милиона думи, 24 essid, 32 часа компилация, 650 000 pmk/s търсене в базата данни, тегло 240 gb.
Естествено, с по-малък брой пароли и essid разходите за време намаляват правопропорционално. Дали си струва или не, всеки решава за себе си.
Пример за употреба:whereeval

pyrit - u файл : / / / път/ към/ файл/ където/ ще бъде/ базата. db - r / път / към / файл / с / cap / изход - 01.cap attack_db

Заключение
За тези, които постоянно / професионално се занимават с избора на пароли за Wi-Fi, наличието на такива програми прави живота много по-лесен. В днешно време е грях да не използвате цялата мощност на вашия хардуер, не напразно надграждаме 🙂 ( Пак да напомня разликата - търсене на процесора ~ 3.000 pmk / s, търсене на видеокартата ~ 85.000 pmk / s). Няколко думи за аналозите - това е програма за commview за wifi, направена за Windows, не съм я виждал в очите си и не съм я докосвал, защото не използвам Windows. Тя, разбира се, се заплаща (500$ печалба).

Дешифриране на ръкостисканее труден процес и читателят трябва отдавна да е разбрал това WPA хакванедори при висококачествено ръкостискане и директни ръце на нападателя, изглежда като колело на рулетка. Всичко зависи от първоначалната сложност на паролата. Никой не може да гарантира благоприятен изход, но статистиката ни радва и казва, че поне 20% от WPA мрежите са успешно хакнати, така че не се отчайвайте, давайте!

Първо трябва да подготвите речник. WPA речнике обикновен текстов файл, съдържащ една възможна парола на ред. Като се имат предвид изискванията за парола на WPA, възможните пароли трябва да са най-малко 8 и не повече от 63 знака и могат да се състоят само от цифри, главни и малки латински букви и специални знаци като [имейл защитен]#$% и т.н. (между другото, такава азбука се счита за доста обширна). Всичко е ясно с долната граница на дължината на паролата, поне 8 знака и точка.

Е, горната част не е толкова проста. Разбиването на речникова парола от 63 знака е безполезно, така че е разумно да ограничите речниковата парола до максимална дължина от 14-16 знака. Един висококачествен речник (за който се дава процент на успеваемост от 20%) тежи повече от 2 GB и съдържа около 250 милиона възможни пароли с дължина от 8-16 знака в посочения диапазон. Какво трябва да бъде включено в тези комбинации от възможни пароли, за да дешифриране на ръкостисканемина без проблеми? Първо, недвусмислено целият осемцифрен цифров диапазон, който според статистиката представлява почти половината от всички разкрити пароли. Наистина различни дати се вписват перфектно в 8 цифри, например 05121988.

И още малко за лексиката...

Един пълен цифров осем знак има 10 ^ 8 = 100 милиона комбинации, което само по себе си е доста. В допълнение, основният речник на zacker трябва задължително да включва думите, които най-често се използват като пароли, като интернет, парола, qwertyuiop, имена и т.н., както и техните мутации с популярни суфикси за разширение на пароли (единственият лидер в тази област е на разбира се наставката 123). Тези. ако паролата на diana е твърде кратка, за да бъде съвместима с WPA, изобретателният потребител в повечето случаи ще я добави към diana123, като по този начин ще увеличи (според опитното си око) сигурността на паролата. Известни са и няколко десетки такива популярни суфикси.

Ако сглобите речника сами (какъв е смисълът? Всичко е събрано преди нас), можете да търсите в Google ключовите думи на wpa wordlist и да изтеглите готовия речник. Не забравяйте за насочването, защото би било доста наивно да се надяваме на това дешифриране на ръкостисканепроцесът ще бъде гладък, ако използваме китайското ръкостискане според руския речник и обратно. Все още можете да потърсите подходящ в интернет, тъй като можете да ги ядете каквото искате.

използвайте crunch, за да генерирате различни комбинации от базов комплект

aircrack-ng

След като подготвихме някакъв вид висококачествен, в нашия не много опитен вид, речник (например wordlist.txt), пристъпваме към избор на парола, т.е. дешифриране на ръкостискане. Стартирайте aircrack-ng с допълнителни настройки:

[имейл защитен]:~# aircrack-ng -e -w wordlist.txt testcap.cap

root@bt:~ # aircrack-ng -e -w wordlist.txt testcap.cap

А ето и резултата от нашия труд:

Паролата ни беше открита за 3 секунди, уау!!!

На екранната снимка по-горе aircrack-ng намери паролата (която беше думата речник) само за 3 секунди. За да направи това, той опита 3740 възможни пароли със скорост от 1039 пароли в секунда. Всичко би било наред, но тук внимателенчитателят трябва да е доста напрегнат, защото по-рано говорихме за речник от 250 милиона възможни пароли! И ние разделяме 250 * 10 ^ 6 на 1039 и получаваме ... OGO около 240 хиляди секунди, което е 66 часа ... Почти три дни! Толкова време ще е необходимо на вашия лаптоп, за да изчисли основния речник от 2 GB (напълно, но всеки помни „Закона за подлостта“). Такива безумни времеви интервали се дължат на бавната скорост на изчисленията, продиктувана от високата изчислителна сложност на алгоритмите, вградени в процедурата за удостоверяване на WPA. Какво можем да кажем за големите речници, например, пълен цифров деветцифрен вече съдържа 900 милиона комбинации и ще изисква няколко седмици изчисления, за да се уверите, че (поне) паролата не е намерена)

Подобна губеща ситуация не можеше да не смути любознателните умове на нашите сънародници и скоро беше намерен изход. За поточно изчисление бяха включени графични процесори, тоест видеокарти. GPU (Graphic Processing Unit), сърцето на вашия 3D ускорител, има чип със стотици (или дори хиляди) поточни процесори, който ви позволява да разпространявате многомилиони, но прости операции за хеширане на пароли и по този начин да ускорите процеса на дешифриране чрез поръчки на величина. За да не бъда голословен, ще кажа, че овърклокната ATI RADEON HD 5870 е в състояние да достигне скорост от 100 000 пароли в секунда! Забележима разлика, нали?

Декриптиране на GPU ръкостискане

Разбира се, такива цифри са типични само за най-висок клас ATI RADEON адаптери (NVIDIA със своята CUDA технология откровено превъзхожда ATI по ​​отношение на грубата сила на WPA поради очевидните архитектурни предимства на последния). Но трябва да платите за всичко, добрият видео ускорител е скъп и обикновено се намира само сред запалените геймъри или иначе - маниаците.

Като част от статията за начинаещи, вероятно няма да се задълбочавам в дебрите на настройката на ATI SDK и pyrit под Linux, просто отбелязвам, че ще отнеме много време и с високо качество, за да се постави. И няма толкова много собственици на Radeons от най-висок клас с Nvidia, мисля, че те ще се справят сами. Е, или google)

Парадоксално, за избор на WPA парола с помощта на GPU, Windows е най-подходящ, да, да, това е). Факт е, че драйверите на видео адаптера играят важна роля в този процес, чиито версии на Windows разработчиците обръщат много повече внимание от драйверите за Linux. В крайна сметка те се ръководят от нуждите на геймърите, познавате ли много фенове на игра на компютър с инсталиран Linux? Две програми могат да направят избор на парола за WPA под Windows - търговският Elcomsoft Wireless Security Auditor и конзолната програма hashcat-plus. Ще разгледаме допълнително използването на тези конкретни програми и в същото време ще сравним техните характеристики, ще говорим за плюсовете и минусите и на двете. Да видим колко бързо върви дешифриране на ръкостисканепри равни условия, на една и съща система за двете програми.

Наличието на най-новите работещи драйвери за видеокарти във вашата система е задължително. Няма да ви кажа как да сложите дърва за огрев на видюха, тъй като сте тук, сигурен съм, че не ви пука.

Декриптиране на ръкостискане Elcomsoft Wireless Security Auditor

EWSA може да бъде намерен (и закупен) на уебсайта на разработчика - www.elcomsoft.com, само имайте предвид, че се говори, че безплатната пробна версия не показва намерената парола. В интернет можете да намерите счупени версии с различно качество, просто не забравяйте за угризенията x съвестта, които ще ви измъчват). Инсталирането и конфигурирането на EWSA е елементарно, можете веднага да изберете руски език в менюто, в настройките на графичния процесор се уверете, че вашите графични процесори са видими за програмата и са отметнати (ако графичните процесори не се виждат в списъка, очевидно имате проблем с драйверите), а също така посочете на програмата пътищата до вашите речници в настройките на речника.

Щракнете върху „Импортиране на данни -> Импортиране на TCPDUMP файл“ и изберете *.cap файла с ръкостискането (програмата ще ги провери и ще предложи да маркира тези, които искаме да атакуваме), след което можете спокойно да натиснете „Стартиране на атака -> Речник атака”:

Хм ... Може да е по-умно))

В този тест EWSA показа скорост от само 135 000 пароли в секунда, въпреки че въз основа на хардуерната конфигурация очаквах да видя цифра от около четиристотин хиляди.

EWSA декриптиране на ръкостискане

Нека сравним работата на EWSA с неговия наистина безплатен конкурент - hashcat-plus. Изтеглете пълния набор от hashcat-gui от сайта на автора и разархивирайте архива на удобно място, той е преносим. Стартираме hashcat-gui32.exe или hashcat-gui64.exe в зависимост от битовостта на Windows и отговаряме на първия въпрос кой GPU ще използваме - NVidia (CUDA) или ATI RADEON (опцията само за CPU очевидно няма да ни подхожда).

Когато главният прозорец на програмата се зареди, отидете в раздела oclHashcat-plus (или cudaHashcat-plus в случай на NVidia). Тук има една тънкост - hashcat не знае как да анализира ръкостисканията на EAPOL, не знае как и не знае какво е това. Той ви моли да му дадете WPA хешове на сребърен поднос в неговия собствен формат *.hccap. Можете да конвертирате обикновения *.cap в *.hccap с помощта на закърпената помощна програма aircrack-ng! Разработчикът на hashcat е направил удобен онлайн конвертор, просто качете своя *.cap файл с ръкостискане там и посочете ESSID, ако има ръкостискане във файла, *.hccap ще ви бъде върнат готов за атака. Е, ако не, тогава няма съдебен процес).

Продължаваме по-нататък - посочваме на програмата нашия * .hccap файл като хеш файл за атака, добавяме речникови файлове към прозореца със списъци на Word (можете да зададете желания ред на тяхното преминаване със стрелките), изберете WPA / WPA2 като Въведете хеш и щракнете върху Старт.

Трябва да се появи прозорец на конзолата със стартирането на избраната версия на hashcat-plus и куп параметри и ако всичко е наред, помощната програма ще започне да работи. По време на изчислението можете да покажете текущото състояние, като натиснете клавиша 's'. Можете също така да поставите процеса на пауза, като натиснете 'p' или да го прекъснете, като натиснете 'q'. Ако hashcat-plus внезапно открие паролата, той определено ще ви я покаже.

Резултатът е 392 000 пароли в секунда! И това е в много добро съответствие с теоретичната очаквана скорост, базирана на конфигурацията на системата и изчисленията, направени от молива.
Този тест убедително показва, че hashcat-plus мащабира много по-добре, когато използва няколко графични процесора едновременно. Изборът е твой.