РАЗБОР Pentest Статья

Hashcat: сборка риг на GPU для крекинга в 2025

Сергей Попов
Сергей Попов Red Team · 6,6 тыс. сообщений
Подписаться
1,7 тыс.
[ обложка статьи ]
Режим чтения
Открытая GPU-риг на алюминиевой майнинг-раме с четырьмя видеокартами на райзерах, мощный блок питания с плетёными кабелями и ноутбук с зелёным терминалом hashcat, освещённые тёплым янтарным светом...


Пять GTX 1650, купленных по $140 на распродажах, обошлись суммарно дешевле одной RTX 4090. Весь риг - серверная материнская плата HP Z840, блок питания на 1500W, открытый каркас от бывшей майнинг-фермы, SSD и райзеры - уложился в $1550 по данным проекта vikaskumar.org. Это реальная стоимость рабочей multi-GPU станции для крекинга хэшей, о которой русскоязычные гайды молчат, предлагая вместо этого бенчмаркать hashcat на ноутбуке с Intel Iris Xe. Разница между "запустить hashcat на том, что было под рукой" и "собрать под задачу" - порядки magnitude в hashrate. А от hashrate зависит, укладываетесь вы в окно пентеста или уходите домой с пустым отчётом.

Где крекинг хэшей встраивается в пентест​

Крекинг паролей - конкретный этап post-exploitation, а не отдельная дисциплина для энтузиастов. Цепочка начинается с дампа учётных данных: извлечение хэшей из LSASS Memory (T1003.001), выгрузка базы NTDS с контроллера домена (T1003.003), перехват Kerberos TGS-REP через Kerberoasting (T1558.003) или AS-REP Roasting (T1558.004). Полученные хэши конвертируются в plaintext для горизонтального продвижения по сети - Password Cracking (T1110.002).

Скорость крекинга определяет тайминг всей операции. Kerberoast-тикет сервисной учётки с правами Domain Admin крекается за 30 минут - цепочка продолжается в тот же рабочий день. За 30 часов - окно пентеста может закрыться раньше. GPU-риг решает именно эту проблему: разница между одной мобильной видеокартой и четырьмя десктопными - десятки раз в hashrate на большинстве алгоритмов.

Нюанс, который многие упускают: hashcat числится на GTFOBins как бинарь, пригодный для злоупотребления. Через --stdout он способен читать произвольные файлы. Если на целевой машине hashcat стоит с SUID-битом - это вектор для Credentials In Files (T1552.001). На одном аудите такая находка оказалась ценнее слабого пароля.

Выбор видеокарты для hashcat в 2025​

Видеокарта - 60-80% бюджета и 95% производительности крекинг-рига. Выбор GPU определяет всё остальное: мощность блока питания, количество слотов на материнской плате, систему охлаждения.

NVIDIA vs AMD: почему CUDA побеждает​

Hashcat поддерживает и CUDA (NVIDIA), и OpenCL (AMD и NVIDIA). На практике CUDA-ядра hashcat оптимизированы заметно лучше. AMD ROCm на Linux работает, но требует больше возни с драйверами и даёт меньший hashrate при сопоставимом ценнике. Для первого рига - однозначно NVIDIA, тут без вариантов.

Не покупайте Tesla, Quadro и FirePro​

Серверные и профессиональные карты используют те же GPU-чипы, что и десктопные аналоги, но с пониженными частотами и ценником в 3-5 раз выше. Как сформулировал epixoip (один из ключевых контрибьюторов hashcat) на официальном форуме: "The S9170 is just an underclocked 290X. The server cards do not make any sense for hash cracking""S9170 - это просто 290X с пониженными частотами. Серверные карты для взлома хешей совершенно не подходят.". Tesla A16, которую тестировали в облачной VM на Хабре, - та же история: для виртуализации неплохо, но для крекинга проигрывает десктопной RTX 3060 при кратно большей стоимости владения. Единственное исключение - серверные карты достались бесплатно или за копейки с б/у рынка.

Карты 2025 года: RTX 50 vs RTX 40​

Серия RTX 50 (5090, 5080, 5070) - свежее поколение на архитектуре Blackwell. Принципиальное изменение 2025 года: для RTX 50 необходим драйвер NVIDIA Open версии 570+. Проприетарный драйвер (тот самый, который ставился годами) серию RTX 50 НЕ поддерживает. По данным hackware.ru, в репозиториях Kali Linux на момент выхода серии оставалась версия 535 - новые карты без ручной установки драйвера просто не заведутся. Исследование shellntel с RTX 5090 подтвердило: конкретная ОС (Ubuntu, Fedora, Kali, Arch, Windows Server) на hashrate почти не влияет - разница в пределах погрешности.

RTX 5090 с 32 GB VRAM - текущий абсолютный лидер, но цена делает четырёхкарточную конфигурацию задачей уровня корпоративного бюджета.

Серия RTX 40 остаётся рабочей лошадкой. RTX 4090 - лидер по hashrate среди потребительских карт предыдущего поколения, от $1600. RTX 4070 Super - разумный mid-range: 12 GB VRAM, умеренное энергопотребление, хорошее соотношение цены и hashrate. RTX 4060 Ti (16 GB) - entry-level для одиночного GPU с запасом VRAM.

Бюджетный multi-GPU: количество вместо качества​

Подход из проекта vikaskumar.org: пять GTX 1650 по $140 дают суммарную мощность, позволяющую обрабатывать NTLM-дампы на разумной скорости при бюджете вдвое ниже одной RTX 4090. Плюс - диверсификация: одна карта сдохла от постоянной нагрузки - замена $140, а не $1600. Минус - больше возни с райзерами, охлаждением и проводкой питания.

VRAM: когда 8 GB мало​

Для большинства хэш-алгоритмов VRAM не узкое место - NTLM, SHA-256, MD5 потребляют минимум видеопамяти. Но для тяжёлых алгоритмов (bcrypt, scrypt, Argon2) и атак с крупными словарями плюс правилами мутации 12+ GB VRAM - рекомендуемый минимум. Планируете крекать WPA2-PMKID (hashcat mode 22000) с корпусом CrackStation (1.5 млрд паролей) - берите 16 GB VRAM, чтобы не упереться.

Комплектующие крекинг-рига помимо GPU​

1789726116386.webp

Материнская плата и процессор​

Процессор для крекинг-рига - самый незначительный компонент. Подойдёт любой современный CPU: Intel Celeron, AMD Ryzen 5 - хватит загрузить ОС и управлять PCIe-шиной. Главное требование к материнской плате - количество PCIe-слотов. Для multi-GPU рига нужно минимум 4 слота (даже x1 подойдёт - райзеры конвертируют x1 в x16).

Материнские платы для майнинга (ASRock H81 Pro BTC и аналоги) имеют 6-12 PCIe-слотов - находка на вторичке. Серверные платформы тоже годятся: HP Z840, использованная в проекте vikaskumar.org, тянет до 6 GPU, имеет кучу RAM-слотов и надёжное питание. Б/у экземпляр со 128 GB RAM и SSD обошёлся автору проекта в $460 на eBay.

Для high-end сборки: платы на чипсете WRX90 (под AMD Threadripper PRO) поддерживают 4 полноценных PCIe x16 без райзеров - дорого, но избавляет от большинства проблем совместимости.

RAM: 32 GB - практический минимум. 64 GB - если параллельно нагружаете риг ML-задачами. На hashrate оперативная память не влияет.

Блок питания - расчёт мощности​

Недооценка мощности БП - ошибка номер один при сборке рига. Формула расчёта: сумма TDP всех GPU + 100-150W на CPU, материнскую плату и накопители, результат умножить на 1.2 (запас). Реальное потребление hashcat под полной нагрузкой может превышать заявленный TDP карты на 10-15%.

Примеры:
  • 1x RTX 4070 Super (220W) + система (150W) = 444W -> БП от 550W
  • 2x RTX 4070 Super (440W) + система (150W) = 708W -> БП от 850W
  • 5x GTX 1650 (5 * 75W = 375W) + система (150W) = 630W -> БП от 750W
  • 4x RTX 5090 (4 * 575W = 2300W) + система (200W) = 3000W -> два БП по 1600W
Для multi-PSU конфигураций используется Add2PSU 24-Pin ATX Cable Adapter - он синхронизирует включение двух блоков питания. Основной запитывает материнскую плату, CPU и часть GPU; второй - оставшиеся видеокарты. Минимальный стандарт качества - 80+ Gold. Для рига с 4+ картами - 80+ Platinum. Дешёвый БП на постоянной нагрузке 80%+ от номинала - прямой путь к выгоранию всей сборки. Я видел последствия: оплавленный Molex и две мёртвые GTX 1060.

Корпус и охлаждение​

Открытый каркас (open-air frame) - стандарт для multi-GPU рига. Закрытый корпус с 4+ видеокартами превращается в духовку: GPU под hashcat работают на 100% нагрузки часами и сутками. Каркас от майнинг-фермы на вторичке - $30-50. Строите с нуля - экструдированный алюминиевый профиль обойдётся в $50-100. Зазор между картами - минимум 5 см для нормального воздушного потока. Добавьте 3-4 вентилятора 120-140 мм для принудительного обдува.

Жидкостное охлаждение - избыточная трата, если GPU работают на штатных частотах. Стоковые кулеры видеокарт справляются при достаточном воздушном потоке вокруг них. Исследование shellntel зафиксировало, что Windows работает на несколько градусов горячее GNU/Linux при том же hashrate - если температуры критичны, это аргумент в пользу GNU/Linux.

Райзеры: обязательный элемент multi-GPU​

PCIe-райзеры (USB 3.0 PCI-E 1X to 16X Powered Riser) позволяют подключить видеокарту с интерфейсом x16 к слоту x1 через USB-кабель. Для hashcat пропускной способности x1 хватает - крекинг не гоняет данные между GPU и CPU постоянно.

Типичные грабли: дешёвые noname-райзеры могут не определяться в BIOS/UEFI - берите проверенные модели (VER 009S и новее). По данным vikaskumar.org, райзеры могут не поддерживать вывод изображения - одну карту лучше вставить напрямую в x16 слот для дисплея. При использовании powered-райзеров обязательно подключайте дополнительное питание от БП (6-pin или SATA) - без него карта будет работать нестабильно или не заведётся вообще.

Накопители​

NVMe SSD от 500 GB - для ОС, hashcat и базовых словарей. Дополнительный SATA SSD или HDD на 2+ TB - для крупных словарей. Top29Million-probable-v2 занимает 300 MB, CrackStation - 15 GB, All-in-One - 329 GB. Скорость накопителя на hashrate не влияет: словарь загружается в RAM/VRAM один раз при старте атаки.

Три конфигурации крекинг-рига на разный бюджет​

КомпонентEntry (~$1200)Mid-range (~$3500)High-end (~$10000+)
GPU1x RTX 4060 Ti 16GB2x RTX 4070 Super 12GB4x RTX 5090 32GB
CPUAMD Ryzen 5 7600Intel Core i7-14700KAMD Threadripper PRO 7975WX
RAM32 GB DDR564 GB DDR5128 GB DDR5 ECC
Материнская платаB650, 2x PCIe x16Z790, 3x PCIe x16WRX90, 4x PCIe x16
БП750W 80+ Gold1200W 80+ Platinum2x 1600W 80+ Platinum
КорпусMid-towerOpen-air frameCustom open-air rack
SSD1 TB NVMe2 TB NVMe + 2 TB SATA4 TB NVMe + 8 TB SATA

Entry-level - рабочая станция одиночного пентестера: хватает для NTLM и NetNTLMv2, на bcrypt/scrypt будет тоскливо. Mid-range - основная лошадка команды: два GPU масштабируют hashrate линейно на большинстве алгоритмов. High-end - лаборатория или крупная ИБ-компания: четыре RTX 5090 с суммарным TDP около 2300W требуют выделенную электрическую линию.

Бюджетная альтернатива mid-range: 5x GTX 1650 на серверной платформе по схеме vikaskumar.org. Суммарная стоимость $1550 при разумном hashrate на быстрых алгоритмах. Минус - шум от пяти вентиляторов и невысокая производительность на медленных хэшах (bcrypt). Конфигурации из таблицы основаны на рекомендациях onlinehashcrack.com с поправкой на актуальные цены Q2 2025.

Настройка ОС и драйверов для hashcat​

1789726188674.webp

Linux vs Windows: что показали бенчмарки​

Исследование shellntel (2025, RTX 5090) протестировало пять ОС - Ubuntu Server 24.04, Fedora Server 43, Kali 2026.1, Arch Linux и Windows Server 2025 Core. Каждая ОС ставилась начисто, hashcat проверялся тремя способами: из репозитория, pre-compiled binary, сборка из исходников. Результат: конкретная конфигурация софта почти не влияет на производительность. Рекомендация авторов - выбирайте ту ОС, которую умеете поддерживать. Я бы добавил: если нет предпочтений - Ubuntu Server. Меньше всего сюрпризов с драйверами.

Драйверы NVIDIA: Open vs Proprietary​

С 2025 года NVIDIA Open - единственный работающий драйвер для серии RTX 50. Проприетарный драйвер серию GeForce RTX 5060/5070/5080/5090 НЕ поддерживает. Для карт RTX 40 и старше работают оба варианта. Минимальная версия - 570.

Установка на Debian / Kali / Ubuntu:
Bash:
sudo apt-get update && sudo apt-get dist-upgrade -y
sudo apt install nvidia-open-kernel-dkms nvidia-driver firmware-misc-nonfree ocl-icd-libopencl1 nvidia-cuda-toolkit
На Arch Linux / BlackArch: sudo pacman -S nvidia-open cuda (предварительно удалив пакет nvidia, если он был установлен). Проверка, что hashcat видит GPU: hashcat -I - в выводе должны быть строки CUDA.Version и Backend Device с именем видеокарты.

Типичные грабли при установке​

Из практики и по данным коллег:
  1. CUDA Toolkit - совместимость версий. На Toolkit 12.4 может выскочить ошибка: OpenCL 8.4 не поддерживается. Ориентируйтесь на версию CUDA, совпадающую по году релиза с вашей версией hashcat
  2. VMware ESXi - порядок установки. Сначала vmware-tools, потом драйверы GPU. Обратный порядок = чёрный экран и откат системы
  3. Ubuntu - сначала opencl-headers. Пакет opencl-headers ставится ДО драйверов NVIDIA - иначе придётся переустанавливать
  4. CUDA SDK - локальная установка. Используйте deb (local) или .run-файл, не онлайн-установщик - на ряде конфигураций онлайн-вариант даёт ошибки
  5. VirtualBox - не поможет. Гостевая ОС в VirtualBox не видит GPU хоста. Для виртуализации с пробросом GPU нужен ESXi или KVM с VFIO passthrough

Оптимизация hashcat - флаги и настройка производительности​

1789726222079.webp

📚 Часть контента скрыта. Этот материал доступен участникам сообщества с рангом One Level или выше
Получить доступ просто — достаточно зарегистрироваться и проявить активность на форуме
, COMPANY2025!, C0mp4ny2025! и десятки вариантов. Такие пароли встречаются в каждом втором дампе AD - и это не преувеличение.

Режимы атаки и что тестировать​

Три основных режима: -a 0 (словарь с правилами), -a 3 (brute force по маске, например ?u?l?l?l?d?d?d?d = Abcd1234), -a 6 (гибрид: словарь + маска). Для NTLM-хэшей из дампа AD стартуйте со словаря с правилами, затем маска для оставшихся. Для Kerberoast-тикетов (mode 13100) словарь с правилами обычно эффективнее brute force - алгоритм дорогой, тупой перебор будет молоть вечность.

Встроенный бенчмарк hashcat -b прогоняет все поддерживаемые алгоритмы. Для точечного теста: hashcat -b -m 1000 (NTLM). Практически значимые режимы для пентестера:
  • 1000 (NTLM) - дампы AD, mimikatz
  • 5600 (NetNTLMv2) - relay-атаки, Responder
  • 13100 (Kerberos 5 TGS-REP) - Kerberoasting
  • 22000 (WPA-PBKDF2-PMKID) - Wi-Fi аудит
NTLM - "быстрый" алгоритм: GPU перемалывает миллиарды хэшей в секунду. bcrypt (mode 3200) - "медленный": даже на топовом GPU - тысячи H/s. Именно поэтому bcrypt считается стойким: GPU-ускорение работает, но разница с CPU уже не столь колоссальна.

Самосборка vs облачный GPU - экономика крекинга хэшей​

Альтернатива физическому ригу - аренда GPU в облаке. Сервисы типа vast.ai предлагают карты уровня RTX 4090 и A100 по часовой ставке.

Плюсы облака: нет капитальных затрат, нет забот об охлаждении и электричестве, масштабируемость (арендовать 10 GPU на час и выключить). Критический минус для пентеста: хэши паролей сотрудников клиента - конфиденциальные данные, которые нельзя загружать на внешние серверы без явного согласия. При постоянной нагрузке больше 4-6 часов в день окупаемость собственного железа наступает за 6-12 месяцев.

Компромиссный вариант: собственный entry-level риг для повседневных задач (NTLM, NetNTLMv2) и облако для разовых тяжёлых задач (bcrypt с крупными дампами, WPA2-аудит). Так вы контролируете конфиденциальные данные и не переплачиваете за GPU, которые простаивают 80% времени.

Большинство пентестеров, с которыми я работал, крекают хэши на основном рабочем ноутбуке. Запускают hashcat перед уходом домой, утром смотрят результат. Это работает ровно до момента, когда попадается дамп на несколько тысяч записей с Kerberoast-тикетами etype 23. Ноутбучная GTX 1650 Mobile будет молоть их дни напролёт. Выделенный риг на двух десктопных RTX 4070 Super - за ночь.

Собрать такой риг - не rocket science. Самое сложное - честно посчитать полный бюджет: электричество при круглосуточной нагрузке, замена БП через два года, вентиляторы, которые умирают первыми. Моя позиция: если вы пентестер и всё ещё крекаете хэши на рабочем ноутбуке - начните с одной б/у RTX 3060 или RTX 3070 в обычном десктопе. Это даст порядок ускорения по сравнению с мобильной GPU и покажет, упираетесь ли вы в железо вообще. Если упираетесь - считайте бюджет на multi-GPU. Не начинайте с четырёх RTX 5090. Начните с одной нормальной карты и словаря, заточенного под конкретного клиента - это даст больше, чем любое количество hashrate на дефолтном RockYou. На WAPT эту связку "целевой словарь + правила мутации + крекинг AD-хэшей" проходят с лабами в модуле post-exploitation.
Полезно

Комментарии

0