Взлом паролей из облака с помощью CUDA GPU
Life-HackВ связи с возрастающей популярностью взломов паролей из облака, мы решили сфокусировать наши усилия на оптимизации Kali. Мы заметили, что Amazon’s AWS P2-Series и Microsoft’s Azure NC—Series в основном сосредоточены на Windows и Ubuntu и решили устранить этот пробел.
Необходимые ресурсы для взлома паролей из облака
Сначала, вы должны убедиться в том, что ваша система полностью обновлена и что ваша карта поддерживает CUDA.
Примечание: GPU с CUDA вычислительной мощностью > 5.0 рекомендуется, но GPU с меньшей мощностью также будет работать.
apt-get update && apt-get dist-upgrade -y
Как только вы обновите свою систему, вам нужно проверить наличие nouveau kernel modules, если таковые имеются, занесите их в черный список.
root@kali:~# lsmod |grep -i nouveau
nouveau 1499136 1
mxm_wmi 16384 1 nouveau
wmi 16384 2 mxm_wmi,nouveau
video 40960 1 nouveau
echo -e "blacklist nouveau\noptions nouveau modeset=0\nalias nouveau off" > /etc/modprobe.d/blacklist-nouveau.conf
После изменения параметров ядра, нужно будет обновить наш initramfs, и затем перезагрузиться.
update-initramfs -u && reboot
Установка на локальном компьютере
После того как мы перезагрузились, и определили, что nouveau modules не загружены, мы можем приступить к установке OpenCL ICDLoader, Drivers, и CUDA toolkit.
apt-get install -y ocl-icd-libopencl1 nvidia-driver nvidia-cuda-toolkit
Во время установки драйверов система создает новые модули ядра, поэтому потребуется еще одна перезагрузка.
Проверка установки драйвера
Теперь, когда наша система готова к работе, мы должны проверить, что драйвера загрузились должным образом. Мы можем быстро проверить это, запустив nvidia—smi инструмент.
root@kali:~# nvidia-smi
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 375.26 Driver Version: 375.26 |
|-------------------------------+----------------------+----------------------+
| GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. |
|===============================+======================+======================|
| 0 Tesla K80 Off | 0000:00:1E.0 Off | 0 |
| N/A 28C P0 53W / 149W | 0MiB / 11439MiB | 65% Default |
+-------------------------------+----------------------+----------------------+
После того, как мы убедились, что наши драйвера и GPU отображаются на выходе должным образом, теперь можно с чистой совестью окунуться в процесс взлома паролей. Пока мы не ушли вперед, давайте проверим дважды, чтобы убедиться, что surehashcat и CUDA работают вместе.
root@kali:~# hashcat -I
OpenCL Info:
Platform ID #1
Vendor : NVIDIA Corporation
Name : NVIDIA CUDA
Version : OpenCL 1.2 CUDA 8.0.0
Device ID #1
Type : GPU
Vendor ID : 32
Vendor : NVIDIA Corporation
Name : Tesla K80
Version : OpenCL 1.2 CUDA
Processor(s) : 13
Clock : 823
Memory : 2047/11439 MB allocatable
OpenCL Version : OpenCL C 1.2
Driver Version : 375.26
Примечание: Если у вас произошла следующая ошибка clGetDeviceIDs(): CL_DEVICE_NOT_FOUND с ID платформы, маркированной как Vendor: Mesa выполните:
apt-get remove mesa-opencl-icd
Сейчас все должно работать, идем дальше и запустим эталонный тест.
Эталонное тестирование
root@kali:~# hashcat -b
OpenCL Platform #1: NVIDIA Corporation
======================================
* Device #1: Tesla K80, 2047/11439 MB allocatable, 13MCU
Hashtype: MD5
Speed.Dev.#1.....: 4247.2 MH/s (102.66ms)
Hashtype: SHA1
Speed.Dev.#1.....: 1850.5 MH/s (58.64ms)
Hashtype: SHA256
Speed.Dev.#1.....: 785.1 MH/s (69.41ms)
Взлом паролей из облака
Теперь давайте взломаем некоторые хэши. Мы собираемся использовать пример NetNTLMv2 хэш, найденный на hashcat wiki.
root@kali:~# hashcat -a 0 -m 5600 ntlmv2.hash dict.txt
OpenCL Platform #1: NVIDIA Corporation
======================================
* Device #1: Tesla K80, 2047/11439 MB allocatable, 13MCU
ADMIN::N46iSNekpT:08ca45b7d7ea58ee:88dcbe4446168966a153a0064958dac6:5c7830315c7830310000000000000b45c67103d07d7b95acd12ffa11230e0000000052920b85f78d013c31cdb3b92f5d765c783030:hashcat
Session..........: hashcat
Status...........: Cracked
Hash.Type........: NetNTLMv2
Hash.Target......: ADMIN::N46iSNekpT:08ca45b7d7ea58ee:88dcbe4446168966a153a0064958dac6:5c7830315c7830310000000000000b45c67103d07d7b95acd12ffa11230e0000000052920b85f78d013c31cdb3b92f5d765c783030
Input.Base.......: File (dict.txt)
Input.Queue......: 1/1 (100.00%)
Speed.Dev.#1.....: 0 H/s (0.10ms)
Recovered........: 1/1 (100.00%) Digests, 1/1 (100.00%) Salts
Progress.........: 101/101 (100.00%)
Успех! Мы взломали хэш из примера и доказали, что наша инсталляция является рабочей. Существует множество различных конфигураций, не упомянутых в этой статье, для увеличения скорости взлома. Однако, мы настоятельно рекомендуем вам ознакомиться с hashcat документацией для особых случаев. Источник