Взлом рукопожатий (handshake) с использованием графического процессора в Windows

Если у вас Linux, то для вас статья: "Базовое и продвинутое использование oclHashcat (Hashcat) для взлома WPA/WPA2 паролей из хендшейков".

Использование графического процессора (видеокарты) позволяет ускорить перебор хешей, т. е. взлом паролей происходит быстрее. Причём разница не в процентах. Скорость перебора, в зависимости от конфигурации компьютера, может возрастать на один или два порядка (в десятки и в сотни раз быстрее).

Для брутфорсинга это очень важно. Хеши считаются незвламываемыми только от того, что перебор занимает слишком много времени. А если скорость увеличить в 100 раз? Если пароль длинный и для его перебора нужно 10 миллионов лет, то тот факт, что теперь мы можем подобрать его за 1 миллион лет нам погоды не делает. Нам это неважно — всё равно не успеем.

А если скорость перебора по словарю составляет, к примеру, 10 часов. Конечно, использование словаря не гарантирует подбор пароля. Но, с другой стороны, по соотношению успех/затраченное время словари показывают намного лучший результат. Так вот, если мы эти 10 часов заменим на один час или на шесть минут — то это уже намного интереснее. Освободившееся время можно потратить на проверку по большему словарю или же на анализ других хешей.

Большинство инструментов для тестирования на проникновение (проще говоря, для взлома) написаны для Linux. Именно там вся эта каша и варится: не выходя из Linux можно осуществить процесс по захвату рукопожатия, его очистке и проверке по словарю. Но у Линукса постоянные «трения» с проприетарными драйверами для видеокарт (а они необходимы в данном случае!). Для Kali Linux написаны большие инструкции по установке этих драйверов, которые у кого-то работают, а у кого-то и нет.

На Windows проприетарные драйвера установлены (практически) всегда. С этим проблем нет. А такая программа как oclHashcat (использует видеокарту для перебора паролей) является кроссплатформенной. Думаю, вы уже поняли, что мы сейчас будем делать. Мы будем взламывать рукопожатие программой oclHashcat, которая работает в Windows и использует графический процессор. Благо, недавние бенчмарки показали, что разницы по скорости между Linux и Windows в данном случае нет.

Установка oclHashcat в Windows

Для работы программы необходимы драйверы графических карт:

  • пользователям NVidia нужен ForceWare 346.59 или более поздний
  • пользователям AMD нужен 14.9 или более поздний

Как правило, в Windows уже установлен драйвер для видеокарты.

Перейдите на официальный сайт oclHashcat и скачайте одну из версий:

  • oclHashcat для AMD
  • oclHashcat для NVidia

Распакуйте архив. Это портативная программа, другой установки она не требует.

Для запуска используйте файл oclHashcat64.exe или oclHashcat32.exe в зависимости от битности вашей системы.

Программу нужно запускать в командной строке. Для этого откройте окно командной строки (Win+X – выберите «Командная строка») и перетащите туда исполняемый файл.

Либо в открывшемся окне командой строки перейдите в требуемую папку:

cd C:\Users\Alex\Downloads\oclHashcat-1.37\

И в ней запустите требуемый файл:

oclHashcat64.exe -V

01

Подготовка рукопожатий для oclHashcat в Windows

Очистка и конвертация с помощью Aircrack-ng

Чтобы программа oclHashcat смогла работать с захваченным рукопожатием, из него нужно убрать все лишние данные. В этом нам поможет программа wpaclean.exe из пакета Aircrack-ng.

Переходим на официальный сайт Aircrack-ng: http://aircrack-ng.org/ и скачиваем версию для Windows.

Распаковываем программу — она является портативной, поэтому другой установки не требует.

Открываем командную строку и переходим в каталог bin

cd C:\Users\Alex\Downloads\aircrack-ng-1.2-rc3-win\bin\

Команда имеет вид:

wpaclean.exe <out.cap> <in.cap>

Обратите внимание, что, вопреки логике, сначала идёт выходной файл, а потом входной <out.cap> <in.cap>. Казалось бы, логичнее было <in.cap> <out.cap>. Запомните это, чтобы не терять время на выяснение проблемы.

В моём случае файл с захваченным рукопожанием имеет имя Janphen164-66-B3-AE-8C-E7.cap и у меня команда выглядит так:

wpaclean.exe out.cap Janphen164-66-B3-AE-8C-E7.cap

Конвертация файлов .cap в формат .hccap

Нам нужно конвертировать этот файл в формат, понятный oclHashcat.

Для его конвертирования в формат .hccap с помощью aircrack-ng нам нужно использовать опцию -J

aircrack-ng.exe <out.cap> -J <out.hccap>

Обратите внимание -J это заглавная J, а не маленькая j.

В моём случае команда следующая:

aircrack-ng.exe out.cap -J out

Отлично, у меня всё получилось:

02

В текстовом виде:

Microsoft Windows [Version 10.0.10240]
(c) Корпорация Майкрософт (Microsoft Corporation), 2015 г. Все права защищены.

C:\WINDOWS\system32>cd C:\Users\Alex\Downloads\aircrack-ng-1.2-rc3-win\bin\

C:\Users\Alex\Downloads\aircrack-ng-1.2-rc3-win\bin>wpaclean.exe out.cap Janphen164-66-B3-AE-8C-E7.cap
Pwning Janphen164-66-B3-AE-8C-E7.cap (1/1 100%)
Net 64:66:b3:ae:8c:e7 Janphen 1
Done

C:\Users\Alex\Downloads\aircrack-ng-1.2-rc3-win\bin>dir out*
 Том в устройстве C не имеет метки.
 Серийный номер тома: CE30-9CF1

 Содержимое папки C:\Users\Alex\Downloads\aircrack-ng-1.2-rc3-win\bin

24.11.2015  05:57               623 out.cap
               1 файлов            623 байт
               0 папок   2 870 923 264 байт свободно

C:\Users\Alex\Downloads\aircrack-ng-1.2-rc3-win\bin>aircrack-ng.exe out.cap -J out
Opening out.cap
Read 3 packets.

   #  BSSID              ESSID                     Encryption

   1  64:66:B3:AE:8C:E7  Janphen 1                 WPA (1 handshake)

Choosing first network as target.

Opening out.cap
Reading packets, please wait...

Building Hashcat (1.00) file...

[*] ESSID (length: 9): Janphen 1
[*] Key version: 2
[*] BSSID: 64:66:B3:AE:8C:E7
[*] STA: 98:E0:D9:0B:83:C8
[*] anonce:
    50 D5 9F F8 79 4E E5 78 CF 28 0F 1B D7 F3 3B 23
    11 79 EB A9 22 76 86 83 7B 39 C2 CF AE 6C 87 69
[*] snonce:
    B3 A1 9D 0C 17 9F A1 80 0C 00 30 03 C0 0F 00 7C
    FE 0C 0F 9F C1 82 06 09 CF B1 3E C4 09 DA 27 68
[*] Key MIC:
    14 0D A7 56 1D 0F 80 51 31 AD B5 5D 56 68 CE DB
[*] eapol:
    02 03 00 75 02 01 0A 00 10 00 00 00 00 00 00 00
    01 B3 A1 9D 0C 17 9F A1 80 0C 00 30 03 C0 0F 00
    7C FE 0C 0F 9F C1 82 06 09 CF B1 3E C4 09 DA 27
    68 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    00 00 16 30 14 01 00 00 0F AC 02 01 00 00 0F AC
    04 01 00 00 0F AC 02 0C 00

Successfully written to out.hccap


Quitting aircrack-ng...

C:\Users\Alex\Downloads\aircrack-ng-1.2-rc3-win\bin>dir out*
 Том в устройстве C не имеет метки.
 Серийный номер тома: CE30-9CF1

 Содержимое папки C:\Users\Alex\Downloads\aircrack-ng-1.2-rc3-win\bin

24.11.2015  05:57               623 out.cap
24.11.2015  06:07               392 out.hccap
               2 файлов          1 015 байт
               0 папок   2 870 792 192 байт свободно

C:\Users\Alex\Downloads\aircrack-ng-1.2-rc3-win\bin>

В последних версиях пакета Aircrack-ng файл aircrack-ng.exe отсутствует. Вместо него теперь три других файла: aircrack-ng-avx.exe, aircrack-ng-avx2.exe и aircrack-ng-sse2.exe. Для наших целей мы можем воспользоваться, к примеру, файлом aircrack-ng-sse2.exe. Тогда команда будет выглядеть так:

C:\Users\Alex\Downloads\aircrack-ng-1.2-rc4-win\bin>aircrack-ng-sse2.exe out.cap -J out

Онлайн сервис по очистке рукопожатий

Если вам не хочется возиться с Aircrack-ng, то вы можете воспользоваться онлайн севрисом: https://hashcat.net/cap2hccap/

Это не рекомендуется для «чувствительных» данных.

Использование oclHashcat в Windows

Перемещаем наш новый файл out.hccap в каталог с oclHashcat. В командной строке переходим в этот каталог:

cd C:\Users\Alex\Downloads\oclHashcat-1.37\

Можно запускать перебор.

Атака по словарю на рукопожатие

oclHashcat64.exe -m 2500 out.hccap rockyou_lite.txt

Здесь rockyou_lite.txt — имя словаря (он размещён в том же каталоге, что и запускаемая программа), -m 2500 — атака на WPA/WPA2 пароль, а out.hccap — наш файл, который мы получили после очистки и конвертации.

Пример работы:

03

В текстовом виде:

Microsoft Windows [Version 10.0.10240]
(c) Корпорация Майкрософт (Microsoft Corporation), 2015 г. Все права защищены.

C:\WINDOWS\system32>cd C:\Users\Alex\Downloads\oclHashcat-1.37\

C:\Users\Alex\Downloads\oclHashcat-1.37>oclHashcat64.exe -m 2500 out.hccap rockyou_lite.txt
oclHashcat v1.37 starting...

WARN: ADL_Overdrive6_FanSpeed_Get(): -100

Device #1: Capeverde, 2048MB, 800Mhz, 10MCU

Hashes: 1 hashes; 1 unique digests, 1 unique salts
Bitmaps: 16 bits, 65536 entries, 0x0000ffff mask, 262144 bytes, 5/13 rotates
Rules: 1
Applicable Optimizers:
* Zero-Byte
* Single-Hash
* Single-Salt
Watchdog: Temperature abort trigger set to 90c
Watchdog: Temperature retain trigger set to 80c
Device #1: Kernel ./kernels/4098/m02500.Capeverde_1800.8_1800.8 (VM)_1439892092.kernel not found in cache! Building may take a while...
Device #1: Kernel ./kernels/4098/m02500.Capeverde_1800.8_1800.8 (VM)_1439892092.kernel (264280 bytes)
Device #1: Kernel ./kernels/4098/amp_a0_v1.Capeverde_1800.8_1800.8 (VM)_1439892092.kernel not found in cache! Building may take a while...
Device #1: Kernel ./kernels/4098/amp_a0_v1.Capeverde_1800.8_1800.8 (VM)_1439892092.kernel (243440 bytes)

Generated dictionary stats for rockyou_lite.txt: 12207503 bytes, 1202867 words, 1202867 keyspace


INFO: approaching final keyspace, workload adjusted


Session.Name...: oclHashcat
Status.........: Exhausted
Input.Mode.....: File (rockyou_lite.txt)
Hash.Target....: Janphen 1 (64:66:b3:ae:8c:e7 <-> 98:e0:d9:0b:83:c8)
Hash.Type......: WPA/WPA2
Time.Started...: Tue Nov 24 06:27:39 2015 (23 secs)
Time.Estimated.: 0 secs
Speed.GPU.#1...:    31317 H/s
Recovered......: 0/1 (0.00%) Digests, 0/1 (0.00%) Salts
Progress.......: 1202867/1202867 (100.00%)
Rejected.......: 456344/1202867 (37.94%)
HWMon.GPU.#1...: 92% Util, -1c Temp, N/A Fan

Started: Tue Nov 24 06:27:39 2015
Stopped: Tue Nov 24 06:28:07 2015

Атака брутфорсом на рукопожатие:

oclHashcat64.exe -m 2500 -a 3 out.hccap ?d?d?d?d?d?d?d?d

Подробную справку по другим опциями и режимам программы oclHashcat вы найдёте здесь.

04

На протяжении всего времени работы программы перед нами будет строка запроса:

[s]tatus [p]ause [r]esume [b]ypass [q]uit =>

Если нажать p, то перебор остановится, если после паузы нажать r, то перебор снова возобновится. Если нажать b, то будет пропущено текущее задание и программа перейдёт к следующему. Если задание только одно, то программа закончит свою работу. q означает закончить работу и выйти из программы.

Если ввести s, то увидите текущий статус:

Microsoft Windows [Version 10.0.10240]
(c) Корпорация Майкрософт (Microsoft Corporation), 2015 г. Все права защищены.

C:\WINDOWS\system32>cd C:\Users\Alex\Downloads\oclHashcat-1.37\

C:\Users\Alex\Downloads\oclHashcat-1.37>oclHashcat64.exe -m 2500 -a 3 out.hccap ?d?d?d?d?d?d?d?d
oclHashcat v1.37 starting...

WARN: ADL_Overdrive6_FanSpeed_Get(): -100

Device #1: Capeverde, 2048MB, 800Mhz, 10MCU

Hashes: 1 hashes; 1 unique digests, 1 unique salts
Bitmaps: 16 bits, 65536 entries, 0x0000ffff mask, 262144 bytes, 5/13 rotates
Applicable Optimizers:
* Zero-Byte
* Single-Hash
* Single-Salt
* Brute-Force
Watchdog: Temperature abort trigger set to 90c
Watchdog: Temperature retain trigger set to 80c
Device #1: Kernel ./kernels/4098/m02500.Capeverde_1800.8_1800.8 (VM)_1439892092.kernel (264280 bytes)
Device #1: Kernel ./kernels/4098/markov_le_v1.Capeverde_1800.8_1800.8 (VM)_1439892092.kernel (35552 bytes)
Device #1: Kernel ./kernels/4098/amp_a3_v1.Capeverde_1800.8_1800.8 (VM)_1439892092.kernel (14016 bytes)

[s]tatus [p]ause [r]esume [b]ypass [q]uit =>

Session.Name...: oclHashcat
Status.........: Running
Input.Mode.....: Mask (?d?d?d?d?d?d?d?d) [8]
Hash.Target....: Janphen 1 (64:66:b3:ae:8c:e7 <-> 98:e0:d9:0b:83:c8)
Hash.Type......: WPA/WPA2
Time.Started...: Tue Nov 24 06:40:11 2015 (1 min, 21 secs)
Time.Estimated.: Tue Nov 24 07:33:56 2015 (52 mins, 22 secs)
Speed.GPU.#1...:    31629 H/s
Recovered......: 0/1 (0.00%) Digests, 0/1 (0.00%) Salts
Progress.......: 2580480/100000000 (2.58%)
Rejected.......: 0/2580480 (0.00%)
Restore.Point..: 256000/10000000 (2.56%)
HWMon.GPU.#1...: 96% Util, -1c Temp, N/A Fan

[s]tatus [p]ause [r]esume [b]ypass [q]uit =>

Session.Name...: oclHashcat
Status.........: Running
Input.Mode.....: Mask (?d?d?d?d?d?d?d?d) [8]
Hash.Target....: Janphen 1 (64:66:b3:ae:8c:e7 <-> 98:e0:d9:0b:83:c8)
Hash.Type......: WPA/WPA2
Time.Started...: Tue Nov 24 06:40:11 2015 (3 mins, 3 secs)
Time.Estimated.: Tue Nov 24 07:33:54 2015 (50 mins, 38 secs)
Speed.GPU.#1...:    31688 H/s
Recovered......: 0/1 (0.00%) Digests, 0/1 (0.00%) Salts
Progress.......: 5795840/100000000 (5.80%)
Rejected.......: 0/5795840 (0.00%)
Restore.Point..: 578560/10000000 (5.79%)
HWMon.GPU.#1...: 96% Util, -1c Temp, N/A Fan

[s]tatus [p]ause [r]esume [b]ypass [q]uit =>

Здесь:

  • Status………: Running означает, что программа работает.
  • Speed.GPU.#1…: 31688 H/s — скорость перебора (количество хешей в секунду).
  • Time.Estimated.: Tue Nov 24 07:33:54 2015 (50 mins, 38 secs) — сколько времени осталось до конца перебора.

Рекомендуемые статьи:

4 комментария to Взлом рукопожатий (handshake) с использованием графического процессора в Windows

  1. vivax:

    спасибо

  2. Есть проблема

    как решить

    помогите

    hashcat -m 0 46021352282227ec43920f58d7bef1a2
    hashcat (v3.30) starting…

    OpenCL Platform #1: Mesa
    ========================
    * Device #1: AMD TURKS (DRM 2.48.0 / 4.9.0-kali1-amd64, LLVM 3.9.1), 716/1024 MB allocatable, 6MCU

    Hashes: 1 digests; 1 unique digests, 1 unique salts
    Bitmaps: 16 bits, 65536 entries, 0x0000ffff mask, 262144 bytes, 5/13 rotates
    Rules: 1

    Applicable Optimizers:
    * Zero-Byte
    * Precompute-Init
    * Precompute-Merkle-Demgard
    * Meet-In-The-Middle
    * Early-Skip
    * Not-Salted
    * Not-Iterated
    * Single-Hash
    * Single-Salt
    * Raw-Hash

    Watchdog: Hardware Monitoring Interface not found on your system
    Watchdog: Temperature abort trigger disabled
    Watchdog: Temperature retain trigger disabled

    * Device #1: build_opts '-I /usr/share/hashcat/OpenCL -D VENDOR_ID=16 -D CUDA_ARCH=0 -D VECT_SIZE=4 -D DEVICE_TYPE=4 -D DGST_R0=0 -D DGST_R1=3 -D DGST_R2=2 -D DGST_R3=1 -D DGST_ELEM=4 -D KERN_TYPE=0 -D _unroll -cl-std=CL1.2'
    * Device #1: Kernel m00000_a0.1bf0744a.kernel not found in cache! Building may take a while…
    clBuildProgram(): CL_BUILD_PROGRAM_FAILURE

    <unknown>:0:0: in function m00000_m04 void (%struct.pw_t addrspace(1)*, %struct.kernel_rule_t addrspace(1)*, %struct.comb_t addrspace(1)*, %struct.bf_t addrspace(1)*, i8 addrspace(1)*, i8 addrspace(1)*, i32 addrspace(1)*, i32 addrspace(1)*, i32 addrspace(1)*, i32 addrspace(1)*, i32 addrspace(1)*, i32 addrspace(1)*, i32 addrspace(1)*, i32 addrspace(1)*, %struct.plain_t addrspace(1)*, %struct.digest_t addrspace(1)*, i32 addrspace(1)*, %struct.salt_t addrspace(1)*, i8 addrspace(1)*, i32 addrspace(1)*, i32 addrspace(1)*, i32 addrspace(1)*, i32 addrspace(1)*, i32 addrspace(1)*, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32): unsupported initializer for address space

    * Device #1: Kernel /usr/share/hashcat/OpenCL/m00000_a0.cl build failure. Proceeding without this device.

    Started: Wed Feb  8 21:42:52 2017
    Stopped: Wed Feb  8 21:42:54 2017
    root@Ougi-Oshino:~#

    • Alexey Alexey:

      Драйверы в порядке? Теперь для AMD в Linux hashcat требует "AMDGPU-Pro Driver" (16.40 или более поздний). Этот драйвер доступен только для некоторых платформ, и работает только со свежими видеокартами.

  3. LeGion:

    У меня так 

    Microsoft Windows [Version 6.1.7601]
    (c) Корпорация Майкрософт (Microsoft Corp.), 2009. Все права защищены.

    C:\Users\Liza>cd ..

    C:\Users>cd ..

    C:\>cd C:\Users\Liza\Desktop\hashcat-3.40 (1)\hashcat-3.40

    C:\Users\Liza\Desktop\hashcat-3.40 (1)\hashcat-3.40>hashcat32.exe -m 2500 WiFI.h
    ccap 9mil.txt
    hashcat (v3.40) starting…

    * Device #1: Device local mem size is too small

    No devices found/left

    Started: Wed Mar 15 15:33:39 2017
    Stopped: Wed Mar 15 15:33:39 2017

    C:\Users\Liza\Desktop\hashcat-3.40 (1)\hashcat-3.40>

    Почему так и отчего 

Добавить комментарий

Ваш e-mail не будет опубликован.