Инструкция по hashcat: запуск и использование программы для взлома паролей
В последнее время стали задавать довольно много вопросов по использованию Hashcat. Многие из этих вопросов являются элементарными и даже уже рассмотрены в русскоязычной документации. Тем не менее, из-за большого объёма документации новичкам не всегда просто в ней сориентироваться и найти ответ на свой вопрос.
В данной инструкции я выделил самые базовые шаги по использованию Hashcat и детально расписал основные режимы работы программы. Эта инструкция рассчитана на абсолютных новичков. Надеюсь, она уменьшит количество «детских» вопросов.
Как запустить и использовать hashcat (инструкция для взлома паролей)
Hashcat – это программа для взлома паролей, это мощный комбайн с большим количеством возможностей.
Тем не менее, это не самая простая в использовании программа – необходимо потратить время на её изучение. В данной инструкции раскрыты самые типичные ситуации работы с hashcat.
Будут рассмотрены как совсем «детские» вопросы, вроде того, «как запустить hashcat», так и довольно сложные, вроде правильного составления масок, пользовательских наборов символов, опции программы, решение проблем и прочее.
Особенностью hashcat является очень высокая скорость перебора паролей, которая достигается благодаря одновременному использованию всех видео карт, а также процессоров в системе. Возможна работа если установлено несколько видеокарт или карты разных производителей (например, AMD и NVIDIA).
Когда я кликаю на hashcat.exe мелькает чёрное окно, а затем исчезает
Hashcat – это утилита командной строки. Т.е. у неё нет графического интерфейса в виде привычного окна. Поэтому пользователям Windows может показаться, что программа запускается необычным образом.
Для запуска программы необходимо открыть окно командной строки (либо PowerShell). Чтобы это сделать нажмите сочетание клавиш Win+x, и выберите Windows PowerShell:
Далее можно действовать двумя способами.
Первый вариант: можно просто перетащить исполнимый файл в окно командной строки. Исполнимым файлом является hashcat.exe.
Второй вариант: в командной строке можно сменить текущую рабочую директорию на ту, где размещены исполнимые файлы hashcat. К примеру, у меня программа расположена в папке C:\Users\Alex\Downloads\hashcat-4.1.0\, чтобы сменить текущую рабочую папку используется команда cd, после которой указывается папка, в которую требуется перейти, в моём случае команда выглядит так:
cd C:\Users\Alex\Downloads\hashcat-4.1.0\
Как можно увидеть из скриншота, папка C:\WINDOWS\system32 изменена на C:\Users\Alex\Downloads\hashcat-4.1.0.
Теперь для запуска программы достаточно набрать имя исполнимого файла с указанием на текущую папку. Текущая папка обозначается точкой (.), затем необходимо поставить обратный слеш, получается так:
.\hashcat.exe
Поскольку мы не ввели никаких опций, то ничего не происходит, только выводится краткая подсказка.
На протяжении всей инструкции мы будем запускать исполнимый файл hashcat с опциями. Простейшей опцией является -h, если написать её, то будет выведена справка по использованию программы:
.\hashcat.exe -h
Скачать hashcat
Скачайте hashcat с официального сайта по ссылке: https://hashcat.net/hashcat/
Вы увидите:
На сайте присутствует hashcat binaries и hashcat sources. Первое – это бинарные (исполнимые) файлы, второе – это исходный код. Нам нужны бинарники, т.е. hashcat binaries.
Как установить hashcat
Как таковая установка hashcat не требуется, поскольку это портативная программа. Достаточно распаковать скаченный архив. Если у вас проблемы с распаковкой формата .7z, то используйте программу 7-Zip (архиватор с высокой степенью сжатия).
Для работы hashcat необходимо, чтобы были установлены свежие версии драйверов видеокарт.
Драйверы для hashcat
Примечание: Если у вас Linux, то инструкцию по установке необходимых драйверов и пакетов смотрите в статье «Как в Linux взламывать пароли видеокартой и центральным процессором».
Необходимы следующие драйвера для видеокарт:
- Видеокарты AMD на Windows требуют "AMD Radeon Adrenalin 2020 Edition" (20.2.2 или более поздняя версия)
- Intel CPUs требует "OpenCL Runtime for Intel Core and Intel Xeon Processors" (16.1.1 или более поздняя версия)
- Видеокарты NVIDIA требуют "NVIDIA Driver" (440.64 или более поздняя) и "CUDA Toolkit" (9.0 или более поздняя)
Установка драйвера NVIDIA
Перейдите на официальный сайт NVIDIA https://www.nvidia.com/Download/index.aspx, скачайте и установите драйвер
Установка CUDA Toolkit
Перейдите на официальный сайт https://developer.nvidia.com/cuda-downloads, скачайте и установите данную библиотеку.
Установка видеодрайвера Intel CPU
Перейдите на официальный сайт https://www.intel.ru/content/www/ru/ru/download/19344/intel-graphics-windows-dch-drivers.html, скачайте и установите драйвер
Установка OpenCL Runtime for Intel
Прямая ссылка на «Intel CPU Runtime for OpenCL Applications for Windows OS» на сайте Intel: https://registrationcenter-download.intel.com/akdlm/irc_nas/vcp/17773/w_opencl_runtime_p_2021.2.0.616.exe
Подробности смотрите в статье: Как установить драйверы для Hashcat в Windows
Опции hashcat
Работа с программами в интерфейсе командной строки сильно отличается от работы в графическом пользовательском интерфейсе. В графическом интерфейсе мы нажимаем разные кнопки, передвигаем переключатели, ставим галочки и т.д. Ничего этого у программ с интерфейсом командной строки нет. Но при этом утилита командной строки может обладать даже большими возможностями, чем аналогичная программа с оконным интерфейсом. Чтобы можно было управлять функционалом консольных утилит, используются опции.
В выведенной справке вы наверняка заметили большое количество информации. Эта информация в большей части посвящена именно опциям.
Опции указываются после запускаемого файла через пробел. Некоторые опции требуют указания определённого значения. Некоторые используются без значений (такие опции ещё называют «флагами»).
Опции могут применяться по одной или сразу по несколько. С помощью опций можно очень точно настроить программу, использовать её на максимальных возможностях.
С одной опцией мы уже познакомились – это -h, которая выводит справку по программе, далее мы познакомимся с ещё большим количеством опций и их возможными значениями.
Следующей на очереди является опция -b.
Запуск бенчмарка hashcat
Опцией -b запускается бенчмарк hashcat. Этот бенчмарк меряет, с какой скоростью перебираются пароли.
Запуск бенчмарка пройдёт успешно только если драйвера установлены правильно и всё в порядке. Т.е. бенчмарк это ещё и способ сделать проверку системы и hashcat.
Чтобы запустить проверку скорости перебора по самым популярным алгоритмам в командной строке выполните:
.\hashcat.exe -b
Для досрочной остановки нажмите CTRL+c. Этим сочетанием клавиш досрочно останавливаются все утилиты командной строки. Запомните эту комбинацию!
Скорость выводится для каждого устройства в отдельности, а также для всех устройств вместе взятых (запись Speed.Dev.#*).
Пример:
Hashmode: 2500 - WPA/WPA2 (Iterations: 4096) Speed.Dev.#1.....: 5591 H/s (46.19ms) @ Accel:512 Loops:256 Thr:1 Vec:4 Speed.Dev.#2.....: 22374 H/s (69.23ms) @ Accel:128 Loops:32 Thr:256 Vec:1 Speed.Dev.#3.....: 171 H/s (1205.03ms) @ Accel:1024 Loops:128 Thr:1 Vec:4 Speed.Dev.#*.....: 28136 H/s
Какое именно устройство какой имеет номер написано в самом начале при запуске программы, например:
OpenCL Platform #1: Intel(R) Corporation ======================================== * Device #1: Intel(R) Core(TM) i7-3630QM CPU @ 2.40GHz, 4085/16342 MB allocatable, 8MCU OpenCL Platform #2: Advanced Micro Devices, Inc. ================================================ * Device #2: Capeverde, 1523/2048 MB allocatable, 10MCU * Device #3: Intel(R) Core(TM) i7-3630QM CPU @ 2.40GHz, 4085/16342 MB allocatable, 8MCU
Предупреждения и ошибки при запуске hashcat
Сразу при запуске бенчмарка могут начаться выводиться ошибки. К примеру:
* Device #3: Not a native Intel OpenCL runtime. Expect massive speed loss. You can use --force to override, but do not report related errors.
В ошибке сказано, что используется не родная среда выполнения OpenCL и ожидается значительное падение скорости. По этой причине устройства OpenCL будут пропущены (на скриншоте ниже это видно по слову skipped, т.е. пропущено). Если мы всё равно хотим их использовать, то нужно добавить опцию --force.
Запуск бенчмарка с двумя опциями:
.\hashcat.exe -b --force
Если у вас всё равно пропущены некоторые устройства, то вы можете добавить ещё одну опцию -D. После этой опции нужно добавить цифру или цифры, обозначающие тип устройства:
# | Типы устройств ===+============= 1 | CPU 2 | GPU 3 | FPGA, DSP, Co-Processor
Обратите внимание на очень важную вещь – для опции используется заглавная буква. Регистр букв влияет на значение опции! Т.е. опция с буквой в другом регистре (большая вместо маленькой или маленькая вместо большой) может иметь совершенно другое значение, вплоть до противоположного.
Т.е. 1 – это центральные процессор, а 2 – это графический процессор, тогда полная команда вместе с выбором всех доступных у меня устройств будет выглядеть :
.\hashcat.exe -b --force -D 1,2
clGetPlatformIDs(): CL_PLATFORM_NOT_FOUND_KHR
Ошибка
clGetPlatformIDs(): CL_PLATFORM_NOT_FOUND_KHR
возникает в том случае, если не найдено устройств, на которых может работать Hashcat. Если подходящие устройства имеются, значит всё дело в неправильных драйверах или в отсутствии драйверов.
Графический интерфейс hashcat
Для hashcat отсутствуют официальные графические интерфейсы. Тем не менее имеется несколько интерфейсов, которые были созданы энтузиастами. Самым актуальным является этот: https://hashkiller.io/downloads/
Для установки графического интерфейса hashcat скачайте архив со страницы, на которую выше дана ссылка.
Распакуйте скаченный архив, в него уже включены:
- hashcat-utils-1.0
- cap2hccap
Требования для работы графического интерфейса hashcat:
- только операционная система Windows
- dotNET Framework: v4
- hashcat версии 3.00 или более поздний
Hashcat вам нужно скачать отдельно, как это показано выше. Также у вас должны быть установлены необходимые драйверы.
После того, как вы распаковали Hashcat GUI и саму Hashcat, вам нужно папку с Hashcat переместить в папку с Hashcat GUI. Должна получиться примерно следующая структура папок:
Подсвечена папка с Hashcat – hashcat-4.1.0. Обратите внимание, что переименовывать каталог с хешкэт не нужно.
Для запуска программы дважды кликните файл HashcatGUI.exe. Посмотрите на графический интерфейс Hashcat:
На мой взгляд, он сложный. По моему субъективному ощущению, проще разобраться с опциями командной строки, чем с графическим интерфейсом в котором, между прочим, всё равно присутствуют не все функции.
Более того, без понимания концепций работы Hashcat, вряд ли вы что-то сможете сделать даже в графическом интерфейсе. Поэтому продолжайте чтение данной статьи, а к графическому интерфейсу мы вернёмся позже на страницах сайта HackWare.ru.
Как использовать hashcat
Запуск программы выполняется следующим образом:
hashcat [опции]... хеш|файл_хеша|файл_hccapx [словарь|маска|директория]...
Здесь под hashcat подразумевается имя исполнимого файла, в моих примерах это .\hashcat.exe.
После имени исполнимого файла через пробел следуют опции, с которыми мы уже начали знакомство.
Символ | (труба) в данном случае означает логическое «ИЛИ». Т.е. после опций следует ИЛИ файл, ИЛИ файл с хешем, ИЛИ файл hccapx. А затем через пробел указывается ИЛИ словарь, ИЛИ маска, ИЛИ директория – в зависимости от выбранной атаки.
Рассмотрим использование программы на конкретных примерах. Допустим нам дан хеш 53ab0dff8ecc7d5a18b4416d00568f02, который нужно взломать. Об этом хеше известно, что он получен с помощью алгоритма хеширования MD5 (т.е. это MD5 хеш). Также известно, что зашифрованная строка состоит только из маленьких букв английского алфавита и имеет длину от шести до десяти символов.
Далее будет показано, как запускать атаку, используя разнообразные приёмы перебора паролей.
Указание типа хеша
Разные хеши вычисляются по различным алгоритмам. Аналогично и их взлом происходит по различным алгоритмам. Для того, чтобы правильно запустить атаку в Hashcat, необходимо указать тип атакуемого хеша. Для этого используется опция -m, после которой необходимо указать число, соответствующее выбранному типу хеша.
В исходных условиях нам дано, что предоставленный хеш является MD5. Значит на странице https://kali.tools/?p=3825 мы ищем «MD5»:
Напротив найденного хеша, смотрим столбец «#», т.е. номер. В нашем случае этот номер равен «0».
Значит, к команде запуска Hashcat необходимо добавить -m 0 - опция и её значение.
Если бы нам был дан хеш SHA1, то его номер бы был 100 и к команде запуска Hashcat мы бы добавили -m 100 и аналогично для любого другого алгоритма.
Обычно тип хеша известен исходя из источника, где этот хеш был получен. В случае, если достоверно неизвестен тип атакуемого хеша, его можно попытаться угадать с помощью специализированных инструментов, как это сделать описано в статье «Хеши: определение типа, подсчёт контрольных сумм, нестандартные и итерированные хеши».
Режимы атаки Hashcat
Hashcat поддерживает различные режимы атак, самыми распространёнными являются:
- атака по словарю, когда в качестве кандидатов в пароли используется список слов
- атака по маске (брут-форс, полный перебор), когда кандидаты в пароли генерируются исходя из описанных критериев.
Для указания режима атаки используется опция -a. С помощью неё можно указывать любой тип атаки, поддерживаемый в Hashcat, самыми популярными является атака по словарю – значение 0 – и атака по маске (брут-форс, полный перебор) – значение 3.
Т.е. если мы запускаем атаку по словарю, значит мы указываем -a 0, а если атаку по маске, то -a 3.
Атака по словарю в Hashcat
Запуск атаки по словарю происходит следующим образом:
hashcat [опции]... хеш|файл_хеша|файл_hccapx [путь_до_словаря]...
Чтобы взломать наш хеш, создайте небольшой словарик – обычный текстовый файл с именем dictionary.txt и скопируйте в него:
Примечание: кстати, с Hashcat поставляется пример словаря, он называется example.dict.
Итак, на данном этапе у нас имеется всё необходимое для запуска атаки по словарю. Собираем всё воедино:
.\hashcat.exe -m 0 -a 0 53ab0dff8ecc7d5a18b4416d00568f02 dictionary.txt
Здесь:
- .\hashcat.exe – исполнимый файл
- -m 0 – опция, устанавливающая тип хеша MD5
- -a 0 – опция, значение который запускает атаку по словарю
- 53ab0dff8ecc7d5a18b4416d00568f02 – хеш, который необходимо взломать
- dictionary.txt – путь до файла словаря.
Поскольку словарь очень маленький, то программа завершит свою работу очень быстро:
Результат работы программы:
53ab0dff8ecc7d5a18b4416d00568f02:hackware Session..........: hashcat Status...........: Cracked Hash.Type........: MD5 Hash.Target......: 53ab0dff8ecc7d5a18b4416d00568f02 Time.Started.....: Mon Mar 05 07:23:25 2018 (0 secs) Time.Estimated...: Mon Mar 05 07:23:25 2018 (0 secs) Guess.Base.......: File (dictionary.txt) Guess.Queue......: 1/1 (100.00%) Speed.Dev.#1.....: 17783 H/s (0.04ms) @ Accel:1024 Loops:1 Thr:1 Vec:4 Speed.Dev.#2.....: 0 H/s (0.00ms) @ Accel:256 Loops:1 Thr:256 Vec:1 Speed.Dev.#3.....: 12530 H/s (0.03ms) @ Accel:1024 Loops:1 Thr:1 Vec:4 Speed.Dev.#*.....: 30313 H/s Recovered........: 1/1 (100.00%) Digests, 1/1 (100.00%) Salts Progress.........: 24/48 (50.00%) Rejected.........: 0/24 (0.00%) Restore.Point....: 0/48 (0.00%) Candidates.#1....: aaaaaaaaaa -> dancing2009 Candidates.#2....: [Copying] Candidates.#3....: danciotu -> hackware HWMon.Dev.#1.....: N/A HWMon.Dev.#2.....: Util: 37% Core: 800MHz Mem:1000MHz Bus:16 HWMon.Dev.#3.....: N/A
Первая строка 53ab0dff8ecc7d5a18b4416d00568f02:hackware содержит атакуемый хеш и после двоеточия взломанный пароль – в данном случае это hackware.
Об успешном взлома говорит строка Status………..: Cracked
Хеш необязательно указывать в строке команды – он может быть записан в файл, тогда при запуске взлома указывается путь до файла, содержащего хеш. Например, создадим файл hashmd5.txt и скопируем в него 53ab0dff8ecc7d5a18b4416d00568f02.
Тогда запускаемая команда будет такой:
.\hashcat.exe -m 0 -a 0 hashmd5.txt dictionary.txt
Команда содержит те же опции, что и предыдущая, только вместо непосредственно хеша, мы указали путь до файла, содержащего взламываемый хеш.
Примечание: поскольку в учебных целях мы взламываем один и тот же хеш разными способами, то в случае если вы повторяете примеры, вы увидите сообщение:
INFO: All hashes found in potfile! Use --show to display them.
Оно означает, что хеш, который вы пытаетесь взломать, уже был взломан ранее. Все взломанные хеши храняться в файле hashcat.potfile в той же директории, что и Hashcat. Это обычный текстовый файл, его можно открыть и посмотреть содержимое, в моём случае это:
53ab0dff8ecc7d5a18b4416d00568f02:hackware
Этот файл можно удалить, чтобы запускать заново атаку на один и тот же хеш различными способами.
Также имеется опция --show, после которой нужно указать интересующий хеш:
.\hashcat.exe --show 53ab0dff8ecc7d5a18b4416d00568f02
и если он найден в файле hashcat.potfile, то будет выведена информация о взломанном пароле.
Атака по маске в Hashcat (полный перебор, брут-форс)
В Hashcat нет такого режима как брут-форс – полного перебора паролей. Его поглатил режим «атака по маске». Это более гибкий тип атаки, который позволяет как реализовать полный перебор, так и перебор по тонко настроенным критериям.
В общем виде атака по маске имеет следующий вид:
hashcat [опции]... хеш|файл_хеша|файл_hccapx [маска]...
Т.е. она аналогична предыдущей, но вместо словаря указывается маска.
Как составлять маски в Hashcat
Для составления масок используются наборы символов. Наборы символов в Hashcat бывают двух видов:
- встроенные наборы символов
- пользовательские наборы символов
Начнём с разбора встроенных наборов символов, т.к. для многих ситуаций их бывает достаточно.
В Hashcat встроенными наборами символов являются:
? | Набор символов ===+========= l | abcdefghijklmnopqrstuvwxyz u | ABCDEFGHIJKLMNOPQRSTUVWXYZ d | 0123456789 h | 0123456789abcdef H | 0123456789ABCDEF s | !"#$%&'()*+,-./:;<=>?@[\]^_`{|}~ a | ?l?u?d?s b | 0x00 - 0xff
Первая колонка означает условное обозначение набора символов. Для использования в масках, перед данным обозначением необходимо поставить знак вопроса. Например, ?u означает все заглавные буквы, ?d – все цифры.
Допустим, нам известно, что пароль состоит из четырёх символов, первыми двумя символами являются прописные буквы, а третьим и четвёртым символами являются цифры, тогда маска будет следующая:
?l?l?h?h
Чтобы взломать пароль из нашего хеша, данного в качестве примера, необходимо составить маску, состоящую из восьми символов, каждый из которых является маленькой буквой. Это маска: ?l?l?l?l?l?l?l?l
.\hashcat.exe -m 0 -a 3 53ab0dff8ecc7d5a18b4416d00568f02 ?l?l?l?l?l?l?l?l
Здесь:
- .\hashcat.exe – исполнимый файл
- -m 0 – опция, устанавливающая тип хеша MD5
- -a 3 – опция, значение который запускает атаку по маске
- 53ab0dff8ecc7d5a18b4416d00568f02 – хеш, который необходимо взломать
- ?l?l?l?l?l?l?l?l – маска, которая задаёт генерацию паролей длиной в восемь символов, состоящих из маленьких букв.
Менее чем через минуту пароль успешно взломан:
Обратите внимание на строку:
Progress.........: 15724838912/208827064576 (7.53%)
Т.е. было перебрано 15724838912 вариантов паролей из 208827064576 общего количества вариантов.
Маска при неизвестной длине пароля
Не всегда точно известна длина пароля. Даже по условию нашей задачи пароль имеет длину от шести до десяти символов.
Для того, чтобы генерировались пароли различной длины, имеются следующие опции:
- -i - Включить режим приращения маски
- --increment-min | Числ | Начать прирост маски на X, пример использования: --increment-min=4
- --increment-max | Числ | Остановить прирост маски на X, пример использования: --increment-max=8
Опция -i является необязательной. Если она используется, то это означает, что длина кандидатов в пароли не должна быть фиксированной, она должна увеличиваться по количеству символов.
Опция --increment-min также является необязательной. Она определяет минимальную длину кандидатов в пароли. Если используется опция -i, то значением --increment-min по умолчанию является 1.
И опция --increment-max является необязательной. Она определяет максимальную длину кандидатов в пароли. Если указана опция -i, но пропущена опция --increment-max, то её значением по умолчанию является длина маски.
Правила использования опций приращения маски:
- перед использованием --increment-min и --increment-max необходимо указать опцию -i
- значение опции --increment-min может быть меньшим или равным значению опции --increment-max, но не может превышать его
- длина маски может быть большей по числу символов или равной числу символов, установленной опцией --increment-max, НО длина маски не может быть меньше длины символов, установленной --increment-max.
Итак, скорректируем команду запуска для нашей задачи (пароль имеет длину от шести до десяти символов):
.\hashcat.exe -m 0 -a 3 -i --increment-min=6 --increment-max=10 53ab0dff8ecc7d5a18b4416d00568f02 ?l?l?l?l?l?l?l?l?l?l
Эта команда аналогична предыдущей, но здесь добавлены три новые опции (которые объяснены чуть выше):
- -i
- --increment-min=6
- --increment-max=10
А также увеличена длина маски до 10 символов: ?l?l?l?l?l?l?l?l?l?l (как это требуют правила использования опций приращения).
На перебор понадобилось чуть больше времени, поскольку дополнительно были опробованы кандидаты в пароли длиной 6 (+1 секунда на моём железе) и 7 символов (+22 секунды):
Обратите внимание на новое значение строки Status:
Status...........: Exhausted
Оно означает, что перебраны все кандидаты в пароли, но ни один из них не подошёл.
Взлом пароля, когда известны некоторые символы
Бывают ситуации, когда известны некоторые из символов пароля. Например, нам дан тот же самый хеш 53ab0dff8ecc7d5a18b4416d00568f02 и каким-то образом нам стало известно, что первыми тремя символами в пароле являются «hac». Тогда эти символы можно указать прямо в маске:
hac?l?l?l?l?l?l?l
Получается команда:
.\hashcat.exe -m 0 -a 3 -i --increment-min=6 --increment-max=10 53ab0dff8ecc7d5a18b4416d00568f02 hac?l?l?l?l?l?l?l
Известные символы могут находится в любом месте маски – в начале, середине, конце; это могут быть одиночные символы или группы символов.
Пользовательские наборы символов Hashcat
Выше уже перечислены встроенные наборы символов, которых обычно бывает достаточно. Тем не менее, вы можете задать до четырёх своих собственных, пользовательских наборов.
Предположим, нам известно, что первыми тремя символами в пароле являются цифры, причём не все, а только цифры от 0 до 4, четвёртым символом являются только большие буквы, а пятым и шестым символом являются буквы от a до h, а также цифры от 5 до 9.
Если в маске для первых трёх символов мы укажем просто цифры, то будут перебраны также заведомо не подходящие кандидаты в пароли – содержащие в первых трёх позициях цифры, не входящие в диапазон от 0 до 4. Нужно стараться всячески исключить заведомо неподходящие пароли. Это можно сделать с помощью пользовательских наборов символов.
Всего доступно четыре пользовательских набора символов. Они задаются в опциях и обозначаются цифрами. Но в опциях перед цифрой ставится дефис (например, первый пользовательский набор -1), а в маске перед цифрой ставится знак вопроса (например, использование символов из первого пользовательского набора ?1).
Итак, для решения поставленной задачи начинаем с того, что в опциях задаём необходимое количество пользовательских набора. Эти наборы могут состоять из непосредственно перечисленных символов, также можно использовать встроенные наборы символов, например ?l или ?d или ?u (в любых комбинациях).
Первый пользовательский набор символов для нашей задачи (только цифры от 0 до 4):
-1 01234
Второй пользовательский набор символов (буквы от a до h, а также цифры от 5 до 9)
-2 abcdefgh56789
Напомню – пользовательские наборы символов пишутся среди опций (т.е. до маски и до хеша).
Теперь создаём маску (первыми тремя символами в пароле являются цифры, причём не все, а только цифры от 0 до 4, четвёртым символом являются только большие буквы, а пятым и шестым символом являются буквы от a до h, а также цифры от 5 до 9):
?1?1?1?u?2?2
Разберём маску – первые три символа обозначены как ?1?1?1 (это единички, а не маленькая буква эль) – это символы из первого пользовательского набора. Далее идёт ?u – это встроенные набор символов, обозначающий только заглавные буквы. Последующие два символа обозначены как ?2?2 – это символы из второго пользовательского набора.
При указании пользовательских наборов можно использовать обозначения встроенных наборов символов, например:
-1 ?l?u
обозначает первый пользовательский набор, состоящий только из больших и маленьких латинских букв.
А
-1 ?l?u?d
означает первый пользовательский набор, состоящий только из больших и маленьких латинских букв, а также цифр.
Как уже было показано выше, в маске можно использовать пользовательские и встроенные наборы символов в любых комбинациях.
Как показать пароли (создать словарь) в Hashcat без запуска взлома
После создания сложных масок, особенно с использованием пользовательских наборов символов, хочется проверить, всё ли правильно мы сделали. Также, благодаря гибкости синтаксиса Hashcat её удобно использовать для генерации словарей по любым критериям.
Для того, чтобы только показать пароли без запуска взлома, используется опция --stdout. Эта опция требует -a 3 (режим атаки по маске). Поскольку взлом в этом случае не запускается, то не нужно указывать какие-либо хеши.
Пример генерации паролей для рассмотренной чуть выше задачи (известно, что первыми тремя символами в пароле являются цифры, причём не все, а только цифры от 0 до 4, четвёртым символом являются только большие буквы, а пятым и шестым символом являются буквы от a до h, а также цифры от 5 до 9):
.\hashcat.exe --stdout -a 3 -1 01234 -2 abcdefgh56789 ?1?1?1?u?2?2
Поскольку паролей будет создано много (более полумиллиона), то вместо отображения на экране, их можно сохранить в файл. Для этого после основной команды нужно поставить символ > (означает перенаправление вывода в файл) и написать имя файла. Например, для сохранения всех паролей в файл lab1.dic, который будет создан в той же папке, где размещён исполнимый файл hashcat.exe:
.\hashcat.exe --stdout -a 3 -1 01234 -2 abcdefgh56789 ?1?1?1?u?2?2 > lab1.dic
Как составить маску, если о пароле ничего не известно
Если неизвестно, какие символы присутствуют в пароле, а также какая его длина, приходится перебирать все возможные варианты.
Условно можно выделить три допущения:
- В пароле могут быть любые цифры, а также большие и маленькие буквы.
- В пароле могут быть любые цифры, большие и маленькие буквы, а также другие символы (точки, тире, запятые, кавычки, пробелы, знаки процента, решётки и т.д.)
- В пароле могут быть любые цифры, большие и маленькие буквы, другие символы (точки, тире, запятые, кавычки, пробелы, знаки процента, решётки и т. д.), а также буквы национальных алфавитов (кириллица, иероглифы и т.д.)
В чём проблема задать искать пароль сразу по всем символам? Обратимся к формуле количества возможных комбинаций:
количество символов(длина пароля)
То есть количество возможных символов в пароле в степени числа, которое является длиной пароля. Причём если мы не знаем длину, то необходимо перебрать:
количество символов1 + количество символов2 + количество символов3 + количество символов4 + количество символов5 + …
То есть нужно перебрать все пароли длиной в один символ, затем все пароли длиной в два символа и так далее.
На практике для многих алгоритмов взлома это означает невозможность подобрать пароль за разумный срок.
Поэтому если нет никаких представлений о пароле, то, пожалуй, можно начать с атаки по словарю. Она может оказаться эффективнее, чем ожидание в миллиарды лет полного перебора паролей.
Тем не менее, если нужно запустить полный перебор, когда в пароле могут быть большие и маленькие латинские буквы, а также цифры и длина пароля от 1 до 12, то нужно использовать следующие опции и маску:
-i --increment-min=1 --increment-max=12 -1 ?l?u?d ?1?1?1?1?1?1?1?1?1?1?1?1
Чтобы вывести все кандидаты в пароли или сохранить их в словарь:
hashcat --stdout -a 3 -i --increment-min=1 --increment-max=12 -1 ?l?u?d ?1?1?1?1?1?1?1?1?1?1?1?1
Если нужно запустить полный перебор, когда в пароле могут быть большие и маленькие латинские буквы, цифры, а также символы !"#$%&'()*+,-./:;<=>?@[\]^_`{|}~ и длина пароля от 1 до 12, то нужно использовать следующие опции и маску:
-i --increment-min=1 --increment-max=12 ?a?a?a?a?a?a?a?a?a?a?a?a
Чтобы вывести все кандидаты в пароли или сохранить их в словарь:
hashcat --stdout -a 3 -i --increment-min=1 --increment-max=12 ?a?a?a?a?a?a?a?a?a?a?a?a
Образцы хешей
В программу Hashcat встроена не только справка, но и примеры хешей. Они могут быть полезными, если у вас трудности с правильным написанием формата хешей.
Чтобы вывести сразу все примеры хешей, запустите программу с опцией --example-hashes:
.\hashcat.exe --example-hashes
Можно посмотреть образец одного определённого хеша. К примеру, мне нужно узнать, как выглядит хеш для взлома пароля архива RAR5; тогда я перехожу на страницу справки программы https://kali.tools/?p=578 и ищу RAR5 (используйте CTRL+f). Нахожу, что номер данного хеша 13000; далее я запускаю программу с опцией --example-hashes и уже известной нам опцией -m (после которой указывается номер режима хеша)
.\hashcat.exe --example-hashes -m 13000
Итак, для взлома паролей от архивов RAR5 хеш должен иметь вид:
$rar5$16$38466361001011015181344360681307$15$00000000000000000000000000000000$8$cc7a30583e62676a
Дополнительный материал для изучения Hashcat
В данной статье рассмотрены самые базовые концепции по работе с Hashcat, без понимания которых вряд ли получится запустить взлом пароля.
Для продолжения знакомства с программой рекомендуется к прочтению:
- Опции Hashcat на русском языке
- Статья «Взлом рукопожатий (handshake) с использованием графического процессора в Windows»
- Инструкция «Взлом паролей MS Office, PDF, 7-Zip, RAR, TrueCrypt, Bitcoin/Litecoin wallet.dat, htpasswd в Hashcat»
- Книга «Продвинутый взлом паролей с Hashcat» на русском языке»
- Инструкция «Как в hashcat продолжить перебор с места остановки (сессии hashcat)»
- Как конвертировать рукопожатие (хендшейк) в новый формат Hashcat. Решение проблемы «Old hccap file format detected! You need to update»
Связанные статьи:
- Взлом сетевой аутентификации Windows (92.3%)
- Взлом рукопожатий (handshake) с использованием графического процессора в Windows (90.7%)
- Как установить драйверы для Hashcat в Windows (90.7%)
- Взлом паролей MS Office, PDF, 7-Zip, RAR, TrueCrypt, Bitcoin/Litecoin wallet.dat, htpasswd в Hashcat (86%)
- Базовое и продвинутое использование oclHashcat (Hashcat) для взлома WPA/WPA2 паролей из хендшейков (86%)
- Эксплуатация уязвимости «слепое внедрение команд» (blind command injection) (RANDOM - 9.4%)
Как организовать кластер из нескольких машин для брутфорса в хешкет?)
хешкат можно запустить с того момента на котором остановился брут, если я закрою программу??
Да, про это целая статья "Как в hashcat продолжить перебор с места остановки (сессии hashcat)".
О спасибо Алексей, разобрался.
Если не затруднит вас, подскажите… Что означает функция "Blockchain, My Wallet" ? Как она работает? Вот есть образцы хешей… а как создать свой? Мне надо обязательно ставить ПИТОН что бы запустить office2hashcat.py и сконструировать свой хеш, или я могу через ВИНДОВС это сделать как то?
Для Биткоин кошелька нужно использовать скрипт blockchain2john.py, он идёт в комплекте с JohnTheRipper. Т.е. скачайте его по ссылке или на Kali Linux / в BlackArch найдите этот скрипт:
и запустите, указав в качестве аргумента файлы кошелька.
Файл office2hashcat.py нужен для получения хеша для взлома пароля офисного документа. Да, для использования нужен Python. Наверно, если установить всё необходимое сгенерировать хеш можно и в Windows, но Python (и импортируемые библиотеки), нужны в любом случае. На мой взгляд, проще загрузится в Linux и там получить хеш.
подскажите как написать маску если длина пароля 8 символов содержит заглавные буквы и цифры а то чегото догнать не могу если можно приведите пример
Нам нужно создать пользовательский набор символов, который включает в себя большие латинские буквы и цифры. Первый пользовательский набор символов обозначается -1, большие латинские буквы обозначаются ?u, а цифры ?d.
Получается, что первый пользовательский набор мы задаём следующим образом:
Теперь нам нужно составить маску длиной в восемь символов, состоящую полностью из символов, включённых в первый пользовательский набор. Нужно помнить, что в маске вместо дефиса нужно использовать знак вопроса, то есть вместо -1 пишем ?1. И таким образом получаем маску:
Пример запуска атаки по заданным условиям:
Доброго времени. Подскажите пожалуйста, в чем может быть дело? При запуске бенчмарка, появляется ошибка: ./hashcat.hctune: No such file or directory
С чем это может быть связано? Пробовал запускать сразу брут, точно такая же ситуация. Перевод ошибки понимаю, но не понимаю, как это исправить.
Как именно запускаете? Предварительно переходите в папку, куда распакована программа? Какой именно командой запускаете? Ну и тот самый вопрос — а файл hashcat.hctune в действительности есть?
такой вопрос, какую версию
hashcat
скачать БЕЗ OpenCL под вынь ?как собрать для линукс БЕЗ OpenCL? мне быстродействие особо не нужно, по словарю перебор 3-5 знаков в дополнение 2-3 часа хватает
про параметр --force вкурсе, но почему то в линукс не срабатывает
На главной странице в самом низу есть ссылки на старые версии. Самая старая версия на сайте hashcat v3.00, но это не проблема. Вот ссылка на вторую версию: https://hashcat.net/files/hashcat-2.00.7z
Совсем старые версии можно скачать с Git репозитория Kali Linux: http://git.kali.org/gitweb/?a=project_list&s=oclhashcat&btnS=Search
ах да, и где найти старую утилиту cap2hccap , перекачал 3 версии, там везде под новый формат
а мне бы старый
Такой программы никогда не существовало в природе — сразу была добавлена cap2hccapx.
В те времена (до Hashcat v3.6+ (HCCAPX)) переводили CAP в хеш с помощью aircrack-ng и опции -J
Для предварительной очистки использовали wpaclean:
На HackWare.ru я уже обновил инструкцию, а на моём англоязычном сайте по прежнему старая, посмотрите, как это раньше было: https://miloserdov.org/?p=45
здесь нашел https://sourceforge.net/projects/cap2hccap/files/
но еще не проверял
Подскажите пожалуйста, как написать маску , если знаем что пароль от 8-10 символов, который содержит только 1 большую букву, 1 цифру , а все остальное маленькие буквы ..
Я правильно понимаю, что это заглавная буква и цифра могут быть в любом месте пароля? То есть получаются скользящие символы.
Задача очень интересная — заставила задуматься. Но другого решения, кроме экстенсивного, я не придумал. Единственная идея, это создать 218 масок (8*7 + 9*8 + 10*9), в каждой из которых заглавный символ и цифра находится в разных местах.
Hashcat поддерживает файлы масок (.hcmask), то есть всё это добро можно разместить в одном файле. Про файлы масок информация здесь: https://hackware.ru/?p=283.
Сами маски необязательно писать вручную — можно на каком-нибудь языке программирования автоматизировать этот процесс. Хотя по сравнению с временем, необходимым на брутфорс по этим условиям, относительные временные затраты на написание масок исчезающе малы.
У меня такая проблема, Hashcat установил давно и пользовался им без проблем. Последние 4-5 месяцев не пользовался. Сейчас возникла необходимость, а программа не работает. Ввожу "-b" выскакивает
Поставил Hashcat 5.0.0, тоже самое. Операционку не менял и железо тоже, раньше все работало исключительно. А сейчас не понятно что происходит. Драйвера уже несколько раз переустонавливал. Этот "opencl_runtime_16.1.2_x64_setup" пишет об какой-то ошибке и не ставится, но когда я устанавливал hashcat изначально, полгода назад, я opencl установил. Прошу помощи, уже измотался и не знаю куда ткнуть. Заранее благодарю.
Это обычное информационное сообщение при каждом запуске. Если всё остальное работает, то не обращайте внимание.
Alexey, 10-20 минут и ничего не происходит, ранее же информация показывалась.
Попробуйте запустить с опцией -D 1,2, то есть всё вместе -b -D 1,2
Странно, что никаких ошибок нет. На скриншоте вы находитесь в Windows PowerShell, попробуйте перейти в обычную командную строку, для этого выполните прямо там
а затем опять запустите Hashcat — может быть там напишет ошибки.
Ещё попробуйте добавить к команде ключ --force
Без изменений…
На скриншоте красным написано, что один экзепляр Hashcat уже запущен. Попробуйте перезагрузить Windows и снова запустить с -b -D 1,2
В общем ничего не работает, кроме --help.
Я уже все это делал много раз. Вот очередной раз перезагрузился. Сообщений никаких нет, ну и все равно программа не работает.
Alexey, я проверил еще одно подозрение и отключил интернет и все работающие в фоне приложения (которые знаю), антивирус, acronis, кериш доктор, и попробывал запустить hashcat. При каждом запуске выскакивало сообщение об ошибке (на скриншоте). А о чем это?
Не знаю — что-то совсем не так. Программа даже не доходит до своих процедур, которые показывают ошибки более высокого уровня.
Файл программы не повреждён? Пробовали заново скачать с официального сайта?
Можно попробовать поискать в интернете по фразам
Кстати, а сколько оперативной памяти в системе? (Пишут, что ошибка может возникать в том числе из-за недостатка ОЗУ). Другие приложения работают нормально?
Я уже писал ранее, что все началось с предыдущей версии, которая работала исключительно хорошо, а потом долго оставалась невостребованой. И вот сегодня запустил и на тебе…Ну я зашел на оф.сайт и скачал уже свежую версию.Попробую еще раз переустановить хотя я думаю это не причина.А памяти у меня оперативной 16 Гб., тоже не может быть причиной. Все приложения в норме. Странно что это сообщение выскакивает когда я отключился от сети и отключил 3 приложения. Может как-то связано с БИОС?
Тогда совсем не знаю. Похожие ошибки, в принципе, видел у других программ, но очень давно. Идей нет. Как может быть связана с БИОСом не знаю.
Да, я не ошибся, это все крылось в БИОСЕ. Там есть переключатель обьединения дискретной и интегрированной графики и он был отключен, это видимо произошло когда я обновлял БИОС. И у меня еще есть просьба, можно ли мне как то увеличить скорость перебора, исходя из имеющегося железа. Я подразумеваю подключение для этого мощностей процессора. И мне почему то кажется, что где то я не догоняю что нужно включить и это у меня не работает. И как ваше мнение, судя по скриншоту, достаточная ли у меня скорость обработки?
У меня точно такая же видеокарта И цифры похожие.
Попробуйте добавить опцию -D 1,2 — она включает и процессор и видеокарту. Если всё равно не будет задействован процессор, то добавьте ещё и опцию --force.
Если понадобиться, опять попробуйте установить OpenCL Runtime for Intel Core — возможно, после внесённых изменений это удастся.
UPD: только что прочитал на скриншоте - там написано, что сейчас драйвера OpenCL сломаны и нужно ждать их обновление - у меня на Linux эта же самая надпись и не получается использовать центральный процессор.
Большое спасибо за поддержку и за внимание! А эти опции -D 1,2 и --force в каком порядке ставятся, после -m 2500 и после -a 3 или между?
Опции (которые начинаются с одного или двух дефисов) можно ставить в любом порядке — разницы нет.
Добрый день!
Подскажите плз, есть архив zip с паролем, есть его хэш типа sha-256.
Надо узнать ключ от архива zip. Знаю что в пароле только цифры. Запускаю подбор по маске - пишет Exhausted.
В смысле хеш sha-256? То есть вы вычислили контрольную сумму и из этой контрольной суммы хотите извлечь пароль? Это троллинг или вы действительно до такой степени в этом не разбираетесь? Чтобы было понятно: это как пустая обёртка от шоколадки и вы спрашиваете, как извлечь из этой пустой обёртки шоколадку, ведь на обёртке написано «Шоколадка» - значит там должна быть шоколадка. Примерно такой же уровень понимания ситуации…
«Хеш» для взлома паролей называется «хешем» из-за того, что представляет собой длинную непонятную строку, внешне напоминающую результат работы функции по вычислению хеш суммы. На самом деле, это особым образом извлечённые и структурированные данные, не имеющие никакого отношения к «обычным хешам», то есть к контрольным суммам, например, той же самой sha-256.
Для формирования хеша, предназначенного для восстановления пароля, используются специальные утилиты. Примеры смотрите в этой статье.
Привет. Запускаю Hashcat последнюю версию на WIndows, требуется перебор MD5, выходит ошибка hashcat no such file or directory.
Нужна помощь -)
Перевод ошибки: «нет такого файла или каталога» - ошиблись при написании имени файла или не перешли в папку, где этот файл.
Здравствуйте, помогите пожалуйста. Не могу запустить Hashcat на видеокарте.
GTX7010 драйвер версия 417,35. OpenCL 18,1. центральнй процессор cire i3 4 ядра 3,6 ггц.
при запуске команды
hashcat64.exe -b --force -D1,2
работает только центральый процессор.
Приветствую! GTX 7010? Я что-то даже в Гугле ничего не нашёл про эту карту.
Запустите hashcat с опцией -I и напишите, что будет выведено (или сделайте скриншот).
Спасибо. проблема с драйверами была. и порядке установки. сперва OpenCL затем графический драйвер.
и еще возможно настройки UEFI(BIOS). выставил все поддержки касаемых видео.
Алексей, добрый день! подскажите, есть хэш мд5 , точно знаем маску 73611425.20. и что после точки 16 цифр, 73611425.20.?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d верна ли маска? есть ли альтернатива ?
применил команду --force -D 2, но очень долго, подскажите, возможное примерное время на современных аппаратах.
заранее спасибо
Доброго времени суток. Подскажите как можно быстро расшифровать md5 зная первые 8 чисел.
Например md5 20269436fe05c3115fbd064bb22e8c0d . исходный текст 66629664.67.8828773676667257 , изначально знаем 66629664. По факту важно только значение между точками ( 67 ), но число может быть от 0 до 100.
Не парься, не взломаешь ты гидру.
Чтобы узнать значение рулетки, тебе нужно около 10 000 компов как минимум с 2 видеокартами GTX 1070 так что гуляй
И да, ты еще не сможешь зайти на все эти 10 000 компов чтобы одновременно запустить перебор, а даже если и запустишь то время рулетки уже истечет.
при попытке запустить мне пишет вот это hash hash file hccap file dictionary mask, что это?
драйвера 417 гтх 1050 путь к файлу такой
c:\Users\user> C:\Users\User\Desktop\tt\hashcat-5.1.0\hashcat64.exe
при попытке запустить мне пишет вот это hash hash file hccap file dictionary mask, что это?
драйвера 417 гтх 1050 путь к файлу такой
c:\Users\user> C:\Users\User\Desktop\tt\hashcat-5.1.0\hashcat64.exe
Может быть, вам выводиться краткая справка?
Добрый вечер.Для hashcat не могу установить драйвер графики Intel® для Windows® 10 Версия: DCH 25.20.100.6519 Процессор Intel® Core™ i5-7300HQ.Пишет система не удовлетворяет минимальным требованиям.Подскажите пожалуйста выход.Спасибо
При запуске benchmark определяет только один девайс-Intel(R) Core(TM) i5-7300HQ CPU @ 2.50GHz, 2036/8144 MB allocatable, 4MCU.Установил opencl_runtime_18.1_x64,видео карта Nvidia Geforce GTX 1060.Скорость перебора очень низкая без видеоадаптера.Заранее спасибо
Привет. Подскажите пожалуйста, как можно сделать перебор по всевозмжным комбинациям?
Пример:1njh553m/.2-=1
тоесть что бы он начал перебебирать начиная с одного символа и до 10 предположим. Но что бы ипользовалсиь как латинские буквы так цифры и спец символы
подскажите пожл.
1)
получаю хеш
потом делаю так
2)
Вывод программы:
не подбирает, знаю что пас написан в кирилице большими буквами.
что делаю не так ?
-a 3 означает атаку по маске. В результате программа воспринимает E:\share\Obrazzz\slovar\word_rus.txt как маску, составляет на основе неё один возможный пароль, проверяет пароль — он не подходит. Программа пишет, что все пароли перебраны и завершает работу.
Для атаки по словарю нужно указать -a 0
Ещё при указании типа хеша -m 12500 между числом и самим хешем должен быть пробел.
Здравстыуйте ! Хочу сказать Вам спасибо за такие класные статьи !
И вопросик , для hashcat лучше держать один словарь на 30Гб , или 30 по 1ГБ ? Это как пример , как бы ))
Заранее благодарен !
Спасибо за добрые слова.
Hashcat не просто отправляет содержимое словаря в GPU начиная с первой строки и вплоть до последней — имеется процедура кэширования словаря. В начале содержимое словаря сортируется по длине. Это делается из-за того, что многие алгоритмы в дальнейшем могут быть оптимизированы, когда все входные данные одинаковой длины. Это требует много оперативной памяти. Также надо заметить, что на потребление оперативной памяти дополнительно влияет число GPU и установленное опцией -n значение.
В общем, запуск атаки с гигантским словарём может потребовать слишком много оперативной памяти и слишком много времени на подготовку (сортировка и т. д.), то есть, ИМХО, лучше держать несколько более мелких словарей (если речь идёт о списках слов размером в гигабайты).
Добрвый день.
Подскажите, пожалуйста, что не так?
Пишу:
hashcat64.exe -m 2500 -a 3 -i --increment-min=6 --increment-max=8 C:\Users\User\Desktop\123.hccapx ?u?u?u?s?1?1?1?d
Получаю:
hashcat (v5.1.0) starting…
* Device #1: WARNING! Kernel exec timeout is not disabled.
This may cause "CL_OUT_OF_RESOURCES" or related errors.
To disable the timeout, see: https://hashcat.net/q/timeoutpatch
OpenCL Platform #1: NVIDIA Corporation
======================================
* Device #1: GeForce GTX 1050, 512/2048 MB allocatable, 5MCU
Hashes: 3 digests; 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
* Slow-Hash-SIMD-LOOP
Minimum password length supported by kernel: 8
Maximum password length supported by kernel: 63
Watchdog: Temperature abort trigger set to 90c
Custom-charset 1 is undefined.
Что делаю не так.
Спасибо.
Приветствую! Вы в маске используете цифру один (?1). Возможно, вы хотели указать маленькую букву l (она означает прописные латинские буквы), то есть должно быть ?l
Если вы действительно хотите использовать пользовательский набор символов, который обозначается цифрой один (?1), то предварительно его нужно задать опцией -1 после которой перечислить символы, которые должны входить в этот пользовательский набор.
Спасибо.
Маску установил верную, вроде как данная ошибка ушла.
Изменив запрос, появляется новая ошибка:
запрос: hashcat64.exe -m 2500 -a 3 -w 3 --force C:\Users\User\Desktop\123.hccapx ?l?l?l?l?l?l?l?появляется:
OpenCL Platform #1: NVIDIA Corporation
======================================
* Device #1: GeForce GTX 1050, 512/2048 MB allocatable, 5MCU
Hashes: 3 digests; 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
* Slow-Hash-SIMD-LOOP
Minimum password length supported by kernel: 8
Maximum password length supported by kernel: 63
Watchdog: Temperature abort trigger set to 90c
Cracking performance lower than expected?
* Update your OpenCL runtime / driver the right way:
https://hashcat.net/faq/wrongdriver
* Create more work items to make use of your parallelization power:
https://hashcat.net/faq/morework
[s]tatus [p]ause [b]ypass [c]heckpoint [q]uit =>
и более ни чего не происходит, видеокарта вроде как нагружена (кулеры шумят)
если нажать - s, то:
Session……….: hashcat
Status………..: Running
Hash.Type……..: WPA-EAPOL-PBKDF2
Hash.Target……: TESTBEE (AP:d4:21:22:35:0a:5e STA:b0:6f:e0:5f:b9:74)
Time.Started…..: Tue Nov 19 15:58:16 2019 (7 mins, 20 secs)
Time.Estimated…: Thu Dec 19 08:53:05 2019 (29 days, 16 hours)
Guess.Mask…….: ?l?l?l?l?l?l?l?l [8]
Guess.Queue……: 1/1 (100.00%)
Speed.#1………: 81367 H/s (53.53ms) @ Accel:256 Loops:64 Thr:256 Vec:1
Recovered……..: 0/1 (0.00%) Digests, 0/1 (0.00%) Salts
Progress………: 35717120/208827064576 (0.02%)
Rejected………: 0/35717120 (0.00%)
Restore.Point….: 1310720/8031810176 (0.02%)
Restore.Sub.#1…: Salt:0 Amplifier:5-6 Iteration:704-768
Candidates.#1….: pnxpwerd -> pmhiferd
Hardware.Mon.#1..: Temp: 67c Fan: 51% Util: 84% Core:1708MHz Mem:3504MHz Bus:16
______________________________________________________________________________
Помогите, пожалуйста.
На этом сообщении всё норм — перебор идёт. Конечно, если вас не смущает, что он должен завершиться через 29 дней и 16 часов.
Алексей,спасибо, разобрался. Поспешил с сообщением, сначала написал а потом расшифровал.
Ещё раз спасибо за наводки и помощь.
Статья огонь!
Добрый день.
Пытаюсь запустить benchmark mode через .bat и появляется ошибка: ./hashcat.hctune: No such file or directory
Содержимое батника:
@echo on
D:\hashcat-5.1.0\hashcat64.exe -b -m 2500
Pause
Заметил такую фичу, что если батник поместить в папку с программой hashcat64.exe, то всё работает без ошибок, стоит только батник вытащить в другое место - ошибка.
Подскажите, пожалуйста, есть возможность победить данную ошибку? или это специфика работы программы?
Спасибо.
Доброго времени суток, Alexey! Можно спросить, откуда у Вас такая высокая вычислительная мощность на 1-ом девайсе (50K в сек)? Это что за зверь-устройство такое, если не секрет )
Имеется ввиду алгоритм 2500 - WPA-EAPOL? Если да, то 50 kH/s это довольно мало. В этой статье тесты делались на моём старом ноутбуке, который я купил 7 лет назад и который уже сломался. В переборе задействована мобильная AMD карта (не помню уже модель) и центральный процессор (модель можно увидеть на скриншоте).
Сейчас у меня на ноутбуке GeForce GTX 1050 Ti и Intel(R) Core(TM) i7-8750H и вместе они выдают 120.8 kH/s на алгоритме 2500 - WPA-EAPOL. Это тоже мало, поскольку видео карта и процессор является мобильными, а они всегда менее производительны.
Топовые настольные видеокарты перебирают хеши намного быстрее.
Настольная GTX 1080FE с драйвером 375.39 на Hashcat 3.40, на алгоритме 2500 перебирает хеши со скоростью 411,666.
GTX 980 Ti (+190Mhz) — 376.09 на этом же самом алгоритме перебирает со скоростью 289,072.
Информация по другим алгоритмам и AMD картам в таблице: https://docs.google.com/spreadsheets/d/1B1S_t1Z0KsqByH3pNkYUM-RCFMu860nlfSsYEqOoqco/edit#gid=1439721324
День добрый.
Точно известно что пароль 11 символов.
Запускаю:
Получаю ошибку:
Какую ошибку получаете?
Integer overflow detected in keyspace of mask: ?1?1?1?1?1?1?1?1?1?1?1?1
Здравствуйте! ОС Windows 10. Драйвера все стоят, но как понял, не видит устройтсва, в чатсности видеокарту. В чем проблема? Спасибо.
Здравствуйте, как вы поняли, что не видит устройства? Вероятность решения проблемы прямо пропорциональна подробности описания: что хотели сделать, какие команды вводили, что не так в результатах, копи-паст ошибок, скриншоты.
Ошибка: Cannot find an OpenCL ICD loader library.
Начните с обновления Hashcat — сейчас актуальной является пятая версия.
Проверьте, что версии драйверов удовлетворяют минимальным требованиям:
Самые вероятные причины:
Для проверки установленных видеодрайверов, нажмите Win+x, затем выберите «Диспетчер устройств» → Видеоадаптеры → [Выберите нужную модель видеокарты и нажмите на нём правой кнопкой мыши]→Свойства → Драйвер.
Ещё одна причина: поддерживаемое оборудование есть, но не полностью поддерживаемых версий, поэтому Hashcat отбрасывает его. В этом случае было бы выведено соответствующее сообщение, но на скриншоте его нет. Тем не менее посмотрите раздел «Предупреждения и ошибки при запуске hashcat» - вдруг после обновления Hashcat это сообщение появится. Суть в том, что надо запустить с дополнительными опциями --force -D 1,2:
1. Уже разные версии пробовал, и самые старые и самые новые версии Hashcat. Ошибка аналогичная.
2. Драйвер видеокарты Nvidia стоит самый последний = 391.35
3. Возможно видеокарту не поддерживает, стоит GeForce GTX 560.
.
Хотя у меня Linux, но я решил сейчас перепроверить инструкцию на Windows. После установки драйвера для NVIDIA карты, Hashcat её не видел. Помогло следующее: Win+x, затем «Диспетчер устройств» → Видеоадаптеры → [Выберите нужную модель видеокарты и нажмите на нём правой кнопкой мыши]→Обновить драйвер. После этого всё заработало — не потребовалась даже перезагрузка.
С графикой Intel тоже возникла заминка — не хотел устанавливаться файл opencl_runtime_18.1_x64_setup.msi, в ошибке было что-то вроде «уже установлен драйвер Intel HD, сначала удалите его». Я удалил драйвер через «Установка и удаление программ», но это не помогло. Помогло следующее: Win+x, затем «Диспетчер устройств» → Видеоадаптеры → [Выберите модель Intel и нажмите на нём правой кнопкой мыши]→Удалить устройство. Затем сразу, до перезагрузки установил файл opencl_runtime_18.1_x64_setup.msi и после перезагрузки уже Hashcat увидел оба устройства:
Вот так вот у меня
C:\Users\flagm\Desktop\hashcat-5.1.0>hashcat64.exe -m 11300 -a 3 hash.txt ?l?l?d?d?d?a?a
hashcat (v5.1.0) starting…
* Device #1: WARNING! Kernel exec timeout is not disabled.
This may cause "CL_OUT_OF_RESOURCES" or related errors.
To disable the timeout, see: https://hashcat.net/q/timeoutpatch
* Device #2: Intel's OpenCL runtime (GPU only) is currently broken.
We are waiting for updated OpenCL drivers from Intel.
You can use --force to override, but do not report related errors.
nvmlDeviceGetFanSpeed(): Not Supported
OpenCL Platform #1: NVIDIA Corporation
======================================
* Device #1: GeForce GTX 1050 Ti, 1024/4096 MB allocatable, 6MCU
OpenCL Platform #2: Intel(R) Corporation
========================================
* Device #2: Intel(R) UHD Graphics 630, skipped.
Hash 'hash.txt': Token length exception
No hashes loaded.
Started: Fri Apr 17 00:00:19 2020
Stopped: Fri Apr 17 00:00:20 2020
Что я только не делал и разные версии и просто хэш вставлял. Просто хэш от wallet..dat скопировать в командную строку не получается. А .txt с хэшем не читается.
Значит хеш изначально неправильный — в сообщении именно это и написана, неверная длина токена.
Примеры хешей можно посмотреть командой
Проблема в другом. Хэш из .txt файла не берется. То есть к примеру я вставляю хэш md5 просто в програмку и он подбирается. А если вместо него пишу имя файла в котором md5 или sha256 любой… То такая же один в один ошибка. А вставить например просто в програмку хэш от моего кошелька wallet.dat не получается так как он длинный очень и вставляется не полностью.
Аааа, значит проблема очень простая: программа расценивает указанный текстовый файл не как файл, а как сам хеш. Просто укажите полный путь до файла, чтобы не было неоднозначности.
В этих примерах я везде указываю текущую папку, например:
То есть точка впереди означает, что файл нужно смотреть в текущей папке (иначе просто будет ошибка, что команда не найдена). Так и вы, или укажите не hash.txt, а .\hash.txt, либо полный путь, например: C:\\hashcat_stuff\hash.txt
Здравствуйте, при запуске выдает ошибку: * Device #1: This device's local mem size is too small.. К видеокарте очередь даже не доходит. Что не так ? У меня проц: QuadCore Intel Core 2 Quad Q6600, 2400 MHz (9 x 267). Неужели слабоват для кота?
Приветствую! При запуске программы проверяются сразу все устройства. Если не видит видеокарту, значит нет подходящего драйвера или неподдерживаемая модель.
Хотя у меня такое ощущение, что данное сообщение о недостатке памяти относится именно к видеокарте, а процессор программа не видит, например, из-за того, что не установили OpenCL Runtime for Intel Core.
В статье ссылка на сайт с графическим интерфейсом не работает.
Теперь они выглядит вот так:
https://hashkiller.io/downloads/
Приветствую! Спасибо за полезное замечание — в статье ссылку поправил.
Добрый день. Может встречали такую проблему? Использую в маске ?a или сам указываю все символы - прописные, заглавные, цифры и некоторые спецсимволы….но… при переборе, заглавные используются только в масках до 5 символов….. Я для примера сделал MD5 на 7 символов с заглавными, строчными и цифрами и маску -1 ?a ?1?1?1?1?1?1?1…. и не подобрался хэш…
Приветствую! У Hashcat есть опция --stdout чтобы не взламывать, а только показать пароли. Попробуйте посмотреть кандидаты в пароли с помощью этой функции. Если баг действительно есть, то откройте тикет на Гитхабе.
Да, я пробовал с --stdout опицей в файл. Так и есть, после 5 символов в длину не работает… При чем я даже сгенерил хэш для MyHASH и пробовал такие маски: -1 ?l?u ?1?1?1?1?1?1, -1 ?a ?1?1?1?1?1?1, -1 abcdef….xyzABCEF….XYZ ?1?1?1?1?1?1 и с ними не расшифровывает… а когда указал -1 MyHASH ?1?1?1?1?1?1 - раскрыло…. Реально баг. Ладно, спасибо, думал че не так делаю. Система ubuntu 18.04
Подскажите пожалуйста, что не так? На видеокарте gtx1650 не работает, работает только на проце и встроенной видеокарте AMD Ryzen 5 3550H with Radeon Vega Mobile Gfx
Вывод:
Приветствую! Почему вы думаете, что GeForce GTX 1650 не работает? Судя по приведённой информации, как раз она и работает — первое устройство. Второе устройство gfx902, видимо это MD Ryzen 5 3550H with Radeon Vega Mobile Gfx. А центральный процессор отсутствует.
Что у вас показывает следующая команда?
Кстати, у вас v3.6.0, а сейчас актуальная версия v5.1.0 — если нет каких-то особых причин, я бы настоятельно советовал обновиться. Ну или хотя бы скачать новую версию (программы портативные) и писать на этом сайте ошибки из неё. Т.к. если будет совсем непонятно, главным советом будет «обновитесь». ))))
У меня не открывается новая версия, для 240 000 в секунду для данного железа хорошая скорость?
А если попробовать 32-битную версию? Ещё попробуйте перекачать архив - возможно, файл повреждён.
Что касается скорости, то я не могу сказать точно — можно поискать таблицы скоростей. По идее, Hashcat в любом случае будет выжимать всё возможное, а замедления перебора могут быть связаны, в первую очередь, с перегревом железа и сбросом частот. В этом случае поможет только улучшение охлаждения/вентиляции.
Сейчас выходит вот эта ошибка : не понимаю почему, после подбора вышла, не судите строго 2 день всего в этой теме(.
op\Wifi\mail\8.txt C:\Users\Tvist\Desktop\Wifi\mail\7.txt
hashcat (v3.6.0) starting…
* Device #1: WARNING! Kernel exec timeout is not disabled.
This may cause "CL_OUT_OF_RESOURCES" or related errors.
To disable the timeout, see: https://hashcat.net/q/timeoutpatch
ADL_Overdrive_Caps(): -8
ADL_Overdrive_Caps(): -8
ADL_Overdrive_Caps(): -8
ADL_Overdrive_Caps(): -8
nvmlDeviceGetFanSpeed(): Not Supported
OpenCL Platform #1: NVIDIA Corporation
======================================
* Device #1: GeForce GTX 1650, 1024/4096 MB allocatable, 16MCU
OpenCL Platform #2: Advanced Micro Devices, Inc.
================================================
* Device #2: gfx902, 2079/4127 MB allocatable, 8MCU
INFO: All hashes found in potfile! Use --show to display them.
ADL_Overdrive6_FanSpeed_Reset(): -8
Failed to restore default fan speed and policy for device #2
Started: Tue May 12 20:11:17 2020
Stopped: Tue May 12 20:11:18 2020
C:\Users\Tvist\Desktop\Wifi\hashcat-3.6.0>
Возможно, вы не до конца понимаете этот вывод.
Самая главная причина в остановке работы программы эта строчка:
В ней сказано, что все хеши уже взломаны, чтобы их посмотреть используйте опцию --show.
Кстати, в этой статье рассказывается про это, нажмите Ctrl+f и поищите «INFO: All hashes found in potfile! Use --show to display them.»
Все другие строки носят информационный характер и не являются критическими, их можно игнорировать. По крайней мере, я так и делаю.
32 бита работает, но на сколько знаю там старые команды убрали,
hashcat64.exe -m 2500 --gpu-temp-retain=80 --gpu-temp-abort=85 -w 2 C:\Users\Tvist\Desktop\Wifi\new\32.hccapx C:\Users\Tvist\Desktop\Wifi\mail\6.txt
Помогите пожалуйста переделать под новую
Вместо опции --gpu-temp-abort теперь используется опция --hwmon-temp-abort. Что касается опции --gpu-temp-retain, то я не помню для чего она нужна.
Так должно работать:
Спасибо, на сколько помню, что бы выходило предупреждение
Alexey, подскажите, пожалуйста ссылочку, где скачать OpenCL для драйвера i915, процессор Intel Celeron CPU N3050 @ 1.60GHz. И инструкция по его инсталляции на netbook Acer.
Спасибо
Все ссылки в этой статье по-прежнему работают. Инструкции тоже даны здесь же.
Обратите внимание, что далеко не все Celeron поддерживают OpenCL. Смотрите «Поддерживаемые прикладные программные интерфейсы для контроллеров графических систем Intel®».
Спасибо. Моя вина, не указал, что на нетбуке у меня стоит Кали, а вот под Линукс я не могу найти OpenCL, везде только Виндовс. Да к тому же я очень слаб в английском, приходится работать через Гугловский переводчик.
Эта статья должна помочь, при условии, что ЦПУ поддерживает OpenCL.
Здравствуйте, Alexey!
Скачал, как Вы советовали OpenCL. Встал нормально, но бэнчмарк все равно показывает ту же ерунду.
Посмотрите, как я запускаю бенчмарк в той статье (какие использую опции), посмотрите, как я вывожу список устройств (посмотрите сами и покажите здесь, если останутся вопросы). Если вы не понимаете сообщения на английском, то это не делает их ерундой. Просто копируйте построчно и вставляйте в переводчик https://translate.google.ru/ В сообщениях чётко написано, что от этого устройства не ожидается ничего хорошего в плане производительности, поэтому оно пропускается. А других устройств больше нет. Но если сильно надо, то можно использовать и то малопроизводительное устройство — даже написана опция, которой это можно сделать. Получился целый рассказ и это всё на вашем скриншоте: я уже не представляю, как программа могла бы выразить проблему доходчивее.
Alexey, подскажите пожалуйста, что это за непонятный набор символов - ?b. Какие символы будет брутить программа, если я выберу такую маску?
?b обозначает шестнадцатеричные значения в диапазоне 0x00 — 0xff. В этом диапазоне печатные, контрольные и расширенные символы. Если не понимаете, как связаны шестнадцатеричные значения и символы, то смотрите статью «ASCII и шестнадцатеричное представление строк».
Посмотреть на эти символы можно так:
Или сохранить их в файл и открыть в текстовом/шестнадцатеричном редакторе:
На сайте HackWare есть два примера использования шестнадцатеричных символов для брут-форса пароля:
Но там ситуации более сложные и в обоих случаях составляется пользовательский набор шестнадцатеричных значений. При брутфорсе нелатинских символов нужно конвертировать UTF кодировку, а при взломе VNC пароля берём во внимание, что с символами выполняются операции по определённому алгоритму, поэтому составляется пользовательский набор символов по этому алгоритму.
Рассмотрим практический пример использования набора символов ?b.
Получен хеш: 2ce41e94c17d62df08e6694aaa5652cf, известно, что это MD5 строки из трёх любых символов ASCII. Если использовать любые наборы символов Hashcat, такие как ?l, ?u, ?d, то не удастся подобрать пароль.
В этом случае поможет набор символов ?b:
Пароль подобран:
В строке
получены три байта aebfb1, правильнее их записать как \xae\xbf\xb1. Если это печатные символы (могут быть и не печатные!), то их можно попробовать конвертировать:
Консоль обычно настроена на использование кодировки UTF-8, поэтому в терминале эти символы отображает неправильно. Но их можно сохранить в файл и открыть в редакторе, который может работать с разными кодировками:
В общем, хеш MD5 2ce41e94c17d62df08e6694aaa5652cf получен из символов ®¿± в кодировке ASCII.
Добрый день Alexey, подскажите мне пожалуйста какой драйвер мне нужно утанвить если AMD Radeon Software Crimson Edition не поддерживается на моей видеокарте AMD Radeon 6600M and 6700M Series, где найти драйвер поддерживающий мою видеокарту чтобы работала hashcat ? Зарание спасибо !
С выходом новой, шестой версии Hashcat (вышла на днях), теперь требования к драйверам повышены, в частности:
Чтобы заставить работать устаревшее железо, наверное, нужно пробовать предыдущие версии Hashcat. Более старые версии вы можете найти на официальной внизу официальной страницы: https://hashcat.net/hashcat/
В скаченных архивах в файле docs/readme.txt в самом верху написаны требования для драйверов, например для v3.00:
Ещё более старая вторая версия, ссылка на которую отсутствует: https://hashcat.net/files/hashcat-2.00.7z
Если даже эти версии несовместимы, то остаётся искать файлы из тех лет, когда Hashcat ещё называлась oclHashcat. На Windows, думаю, в теории это ещё может как-то заработать, если найдёте драйвер под эту видеокарту и совместимую версию oclHashcat. А на Linux я бы посоветовал ничего не делать, чтобы сберечь нервные клетки.
Здравстуйте, Alexey, подскажите как при помощи Hashcat можно сгенерировать словарь хешей MD5 всех шестизначных чисел от 000000 до 999999. Спасибо.
В функциях Hashcat не обозначено создание радужных таблиц. И я не знаю как с помощью неё это сделать.
С помощью PHP это можно сделать в несколько строк:
Время выполнение — 1-4 секунды. За это время будут сгенерированы все md5 хеши для строк 000000…999999.
Сохраните приведённый выше код в файл md5-rb-gen.php, запускать так:
Чтобы сохранить полученные хеши в файл:
Смотрите, кстати «Как запустить PHP скрипт без веб-сервера».
Интересное наблюдение о скорости достижения задачи.
Следующие две команды делают ровно то же самое:
Но на среднем компьютере выполнение команд займёт до часа. PHP оказался быстрее, чем нативные Linux команды…
Доброго времени. Подскажите, как запустить перебор паролей, не зная длины, и из каких символов, букв, цифр состоит пароль?
Здравствуйте. Меня интересует тот же вопрос : как составитт маску не зная ни длины, ни какие буквы/цыфры на каких позициях в искомом пароле?
Спасибо.
Приветствую! Посмотрите раздел «Как составить маску, если о пароле ничего не известно».
Здравствуйте. Пытаюсь достать пароли от всех имеющихся учёток сохранённых на компе. В администрирование учетных данных имеются сохранённые логины и пароли для входа по сети на другой комп. Их можно заархивировать в файл *crd. Так вот сохранив SAM и System нашёл хэши, но достать пароль получилось только от простой локальной учётки с коротким набором нижнего регистра. От основной учётки сложный пароль из цифр и символов верхнего и нижнего регистра длинной около 15 символов Хэшкэт не смог подобрать. Но задача найти пароли ещё и сохранённые в администрировании учётных данных. Их я не смог найти. Возможно ли расшифровать файл *.crd или они могут храниться ещё гдето кроме SAM?
Все хеши, в том числе и от онлайн учётных записей, хранятся в файлах SYSTEM и SAM. Хеши можно извлечь с помощью mimikatz, процесс описан в статье «Как взломать пароль Windows».
Здравствуйте, подскажите пожалуйста, какую максимальную длинну пароля можно вычислить при помощи Хэшкат?
Моё железо:
AMD Radeon HD 5670
Процессор AMD athlon 2 X3 445
Какую версию Хэшкат использовать для моего желдеза
Cannot load module ./modules/module_19400.dll
Вылезает такая ошибка при начале расшифровке
Значит в качестве типа хеша указан 19400, а такого типа хеша не существует.
Добрый вечер. Никогда этим не занимался, но вот возникла нужда. Есть архив rar. Я знаю старый пароль, но я его немного изменил. И вот этот новый я не помню. Я знаю какие цифры там есть, какие знакие и какие два слова с правильным регистром. Как правильно написать маску?
Там есть: !, точно 11 и 77, -, \, /, и два слова Pam и paraM. При этом длина от 19 символов до 25
Старый пароль был примерно вот такой \\11Pam-paraM77//
но в его я добавил !
в какое место и в какие места и в каком количестве не помню, а может вообще заменил какие то знаки))
Это реально подобрать?
Приветствую! Атака по маске при таких условиях не подойдёт.
В принципе, есть атака на основе правил, она позволяет вставлять символы и заменять некоторые символы в исходном пароле, то есть именно то, о чём вы говорите.
Но в правилах нет «вставить в какое-то место», есть правило «вставить символ (или строку) в позицию n» или «заменить символ (строку) на символ (строку) которые являются символом (строкой) ИЛИ находятся в позиции n». Ну, то есть, правила можно составить по конкретным условиям. С исходными условиями «хочу то, не знаю что» проблематично составить и маску и правила.
Но с правилами тоже не всё так просто. Для условий «хочу то, не знаю что» этих правил нужно создать просто дофигища. Что может привести к другим проблемам.
Вот к примеру, следующие две строки сгенерируют правила и сохранят их в файл ins.rule.
Эти правила вставляют буквы от a до z в любое произвольное место. Затем следующий набор правил вставляет две буквы a до z в любое произвольное место. Ну, то есть, эти правила вставляют от одной до двух маленьких букв в произвольные места. Для простоты мы «забыли» про большие буквы и про цифры, ещё мы «забыли» про специальные символы и про то, что может быть вставлено больше, чем 2 буквы.
Содержимое файла passwords.txt:
Теперь следующая команда сгенерирует пароли по указанным правилам.
Паролей будет 60636 (на самом деле это мало).
Мы можем добавить ещё и третий набор правил:
Этот набор правил вставляет три маленькие буквы в любые произвольные места.
Но теперь с hashcat на моей системе я получил ошибку:
Суть ошибки в том, что недостаточно оперативной памяти. А у меня 32 Гигабайта оперативной памяти…
А это всего три набора правил, в которых мы «забыли» вставить большие буквы, цифры, специальные символы. А ещё вы говорите, что что-то могло быть заменено на что-то. Это ещё херово количество правил.
Ну, то есть, если прям сильно надо, можно разбить задачу на подзадачи и применять все правила не за раз, а постепенно. Конечно, нужно добавить ещё правила, соответствующие замене символов. То есть в принципе это возможно, но если вам это надо, вам придётся этим заниматься самим.
Поскольку вы знаете части пароля, можно в принципе попытаться составить маску чтобы хоть как-то ускорить перебор. Но конкретно из того что вы написали, маска может выглядеть только как 'ХЗ'.
P.S. Атака на основе правил есть ещё в John, вроде бы, там есть поддержка вставки диапазонов, то есть можно сильно сократить количество правил. Надо будет подумать об этом. Если что-то получится, то этот пример допишу в статью «Полное руководство по John the Ripper. Ч.5: атака на основе правил».
В статью по John the Ripper (атака на основе правил) добавил раздел «Практические примеры атаки на основе правил в John» по мотивам вашего вопроса, но я взял не такие размытые условия. В John поддерживаются диапазоны для указания символов вставки и для указания позиции вставки, и поэтому там нужно писать намного меньше правил.
Не знаю, поможет ли вам это (составление правил не особо простое, что-то среднее между регулярными выражениями и программированием), но главная проблема вашей задачи в её размытости.
Подскажите как в символах для перебора указать пробел который есть в пароле?
Поместите маску в кавычки:
Или используйте символ экранирования:
Alex , спасибо за статьи и вопросы с ответами интересно почитать !
У меня только один в полне актуальный вопрос на который я не смог найти ответа 🙂
В файле hashcat.restore оброзуется много строк с хэшом и паролем как сопоставить их с точками доступа?) Может это очевидно я не нашел ответа.
Мне почему-то кажется, что вы спрашиваете про файл hashcat.potfile.
В строках этого файла всегда содержится название ТД перед последним двоеточием.
Иногда оно записано так:
8053b8ba46189df8b8e916053ca7bbff:149d09cff508:6cab317133a5:3BB-SAYJAI:670323273
А иногда так:
5cb6fed5b59ca41bc8b31c0346d5bc84810f7a371daef664da695ff6c4de8b05*706f6c696e61:04071928
Здесь название закодировано как 706f6c696e61. Это (почти) шестнадцатеричная запись строки. Чтобы была действительно шестнадцатеричная, перед каждым нечётным символом нужно поставить «\x». То есть правильной должна быть такая строка \x70\x6f\x6c\x69\x6e\x61.
Чтобы конвертировать получившуюся строку, перейдите сюда и введите строку в поле «\xXX».
Или можно использовать команду вида:
Например:
Но если вдруг вы действительно спрашиваете про файл hashcat.restore, то всё, что я о нём знаю, я написал в этом комментарии.
Подскажите пожалуйста эмулирую взлом пароля с турецких символов использую --hex-charset и hcmask, система Windows 10 язык системы русский , hashcat находить ответ турецкого символа Ş но в строке где найден пароль показывает какие-то кракозябры типа ┼Ю, понимаю что где-то что-то с кодировкой но как настроить и в строке Candidates тоже идёт перебор по такой кракозябре ┼Ю а не букве турецкого языка Ş
Проблема в кодировке или в шрифтах.
Следующей командой поменяйте кодировку CMD на турецкую:
И проверьте, поможет ли это вашей проблеме.
Чтобы вернуться на кириллицу:
Или чтобы вернуться к английской:
Если это не помогло, то установите шрифты турецкого языка.
Если необходимые шрифты уже установлены и в текстовых файлах всё выглядит нормально, то попробуйте CMD сменить на PowerShell или на новый официальный терминал Windows Terminal.
Кстати, подобные вопросы лучше задавайте под специализированной статьёй «Как использовать Hashcat для взлома паролей, содержащих нелатинские символы (русские буквы в пароле, китайские иероглифы и пр.)».
Добый день.
Подскажите пожалуйста как мне записать строку правильно если я знаю что пароль состоит только из символов, при этом я даже знаю какие это именно символы но не знаю их правильное положение. Расположение знаю только двух символов - третьего и шестой. (вот для примера ??+??+???? Плюс это символ который я знаю где расположен соответственно)
Приветствую!
Вроде всё совсем просто — я бы рекомендовал вам не читать ответ далее, а подумать самостоятельно. Подсказка — нужно использовать пользовательский набор символов и буквальные символы. Специальные символы должны быть экранированы или помещены в кавычки.
Если вам лень думать, то дальше ответ.
Если бы вы перечислили конкретные символы, то я бы написал конкретную команду. Но так как вы не написали, какие именно это символы, то я возьму свои собственные для примера.
Задача: Итак, известно, что в пароле используются символы AaDq12-, и /. Также известно расположение двух символов на третьей и шестой позиции, которыми являются знак + (плюс). Общий вид пароля: ??+??+????.
Итак, составляем пользовательский набор из известных символов:
Составляем маску с использованием пользовательского набора символов и буквальных символов, чьё расположением нам известно:
Команда для генерации словаря:
Спасибо за подробный ответ. Я в этом деле совсем новичок, только изучать начал программу.
Будьте так добрый еще подскажите один момент.
Есть пароль 12 символов в котором мне извесно что первые 4 символа это слово (я не помню его, но у меня есть список кандидатов - порядка 50 слов), далее 4 символа я знаю, и далее последние 4 символа я не знаю, знаю только что это цифры.
Как в таком случае быть подскажите пожалуйста.
Можно сформировать промежуточный словарь, включающий в себя известные символы (вторая четвёрка) и цифры (третья четвёрка), а затем объединить с известными словами Комбинаторной атакой.
Предположим, что четыре известных символа это PASS, тогда промежуточный словарь формируем командой:
Допустим известные слова (первая четвёрка символов) расположены в файле words.txt, тогда для создания словаря запускаем Комбинаторную атаку (-a 1), требуемый словарь будет сохранён в файл 12ch.txt:
Спасибо помогли очень!
Могли бы еще на один вопрос дать ответ?
У меня есть пароль 8 символов, я знаю 4 символа но не знаю их положение. И оставшиеся 4 символа я не знаю. известно только что это могут быть цифры, буквы маленькие либо большие.
Таким образом мне надо чтобы при подборе пароля известных 4 символа всегда присутствовало но в разном порядке. И оставшиеся 4 неизвестных символа по сути просто брутилось ?l?u?d
Известные символы это fewT
В любом случае нужно создать промежуточный словарь:
А затем можно использовать «Атаку на основе правил», а именно 4 правило, отклоняющие кандидаты в пароли, не содержащие указанные символы.
Либо просто взять и отфильтровать пароли, содержащие нужные символы:
Добрый день! Нуждаюсь в совете профессионала, так как сам, по видимому, туплю. Установил хэшкэт. Поставил gui. Указываю хэш (ссылка на txt) файл. Указываю маску (примерно DIkf_ad) к маске добавляю ?а, т.е. примерно так DIkf_ad?а и раздел Brute-force работает, проиcходит перебор символов и.т.д. Но стоит только в разделе Brute-force/набор симоволов 1, 2, 3, 4 указать ссылку на набор симоволов свой, или любой из имеющихся и заменить в маске значения ?а на ?1, ?2, ?3, 4? соответственно, программа при исполнении говорит что-то типа Custom-charset 1 is undefined. Не могу понять что я делаю не так. Уже и файлы типичного набора из hashcat использовал и в самом файле прописывал вариации типа -1 = ….., но помогает. В интернете внятных пояснений по этому поводу не нашел. Учитвая что специалист я в этом аж ни разу, нужен совет. Прошу помощи.
Приветствую!
Ваша проблема не кажется сложной, но я не пользуюсь графическим интерфейсом, поэтому не могу вам помочь.
Возможно, кто-то из пользователей GUI вам бы мог помочь, но вы не указали, какую именно программу используете в качестве графического интерфейса (их несколько).
Использую Gui по ссылке из этой статьи - https://hashkiller.io/downloads/ Перепробовал все версии. Везде аналогичный результат.
Во-первых, использовать программу с закрытым исходным кодом в задачах связанных с аудитом безопасности?.. А если там троян?
Во-вторых, видимо, в вашей программе какой-то баг и здесь вам вряд ли помогут с программой, на которую вы даёте ссылку. Лично я не собираюсь запускать бинарник от непонятно кого — и никому не советую. Обратитесь лучше на их форум — я посмотрел сайт, там есть форум и Discord.
В-третьих, опять же, вместо того, чтобы мучатся с графическими интерфейсами, не лучше ли просто запустить в командной строке?
Пример:
В ней:
Всё очень просто, не нужно ждать, пока авторы GUI обновят исполнимые файлы Hashcat (там в архиве какое-то древние файлы), никакой опасности, что вместе с GUI вам подсадят трояна, никаких непонятных ошибок.
Вас понял. Спасибо большое за развернутный ответ. Очень вам признателен. Удачи вам во всех начинаниях!
Здравствуйте, Алексей.
Как мне создать для hashcat полный список паролей всех комбинации русского алфавита? Я знаю что пароль из 10 строчных букв русского алфавита. Спасибо
Так же как и здесь, только из файла с пользовательскими символами уберите большие буквы.
Алексей, доброго времени суток! Подскажите пожалуйста, есть ли вариант через hashcat попробовать брутом перебор 13 разных неповторящихся символов, типа 1aByd8203|"pK ?
Т.есть чтобы перебирая он в любых вариантах не подставлял одинаковых типа ААААааааа1111.
Приветствую! С помощью Атаки по маске это невозможно. А с помощью Атаки на основе правил в теории это возможно (но это не решение в «одну строку», это потребовало бы много труда на написание групп правил). Но на практике исходный словарь, из которого мы бы отбирали подходящие пароли, займёт слишком много места — Атака на основе правил возможна только по имеющемуся словарю. Подробности о проблемах смотрите в статье «Как создать словари, соответствующие определённым политикам надёжности паролей».
Бодрого веремени суток)
Возможно ли запустить CUDA , в/карта Nvidia GTX650 1G, ОС Win 7х64 Pro?
СUDA 5.5 данной в/картой поддерживается, драйвер установлен. Зпускаю в режиме benchmark пишет, что устаревший или "сломаный" драйвер. Hashcat использовал v.3.40.
Может версию еще ниже попробовать или же с данной картой ничего не выйдет?
Вам не сложно былобы перевести статью и добавить к себе на сайт:
https://hackingvision.com/2020/03/30/distributed-hash-cracking-hashcat-hashtopolis-tutorial
В любом случае, спасибо за ваши труды)
Приветствую! Спасибо за добрые слова!
Статья интересная и вообще весь тот сайт мне понравился, но я не знаю, когда смогу перевести. ИМХО, для понимания сути должно хватить Гугл.Переводчика.
как узнать какой хеш на вайфае которы я хочу взломать ?
Хеш высчитывается из данных, которыми обмениваются клиент и точка доступа в самом начале подключения. Эти данные называются «четырёх-этапное рукопожатие». Это рукопожатие ещё нужно суметь перехватить.
Более подробно смотрите в статье «Как взломать Wi-Fi» раздел «Что такое рукопожатие (хэндшэйк)».
Алексей, такой вопрос к Вам.
Есть практически нужный мне хэш (4110 | md5($salt.md5($pass.$salt)))
В моём случае используется такой алгоритм: $password = md5($password2.md5($password2.$password2));
Вопрос: Как заставить hashcat за место соли подставлять пароль? Т.е берёт хэшкат пароль 123456 и соль тоже будет 123456.
Или может есть человек, который делает модули под hashcat?
Приветствую! Такое умеет John the Ripper. Если будете разбираться самостоятельно, то в папке с исходным кодом john-bleeding-jumbo/doc/ смотрите файлы:
Я пишу руководство по John the Ripper, сейчас остановился на пятой части, шестая часть должна быть про опции и конфигурационные файлы, а седьмая часть как раз про dynamic. Часть про опции написана наполовину, но я то ли запутался, то ли заскучал на ней )))))
В общем, часть про dynamic я сделаю шестой и завтра начну над ней работу. И, соответственно, в течение нескольких дней опубликую. Эта тема очень интересная — позволяет брутфорсить любые варианты пользовательских хешей на основе MD5/SHA1 (можно составлять самому), а также сразу «из коробки» имеется множество встроенных форматов.
Написал статью, в ней показано как сделать что вам нужно.
Подскажите, пожалуйста, как организовать такой перебор: сначала в пароле должно быть определенное значение, а потом значение из словаря? Например: vasya+(пароль из словаря).
Смотрите раздел «Как создавать комбинированные словари». В качестве первого словаря создайте файл с одной нужной вам строкой (например, vasya).
Добрый день. Возникла проблема с атакой -m 11300, на пк имеется 2 видеокарты nvidia tesla k40 и процессор intel xeon e57. Все драйвера установлены правильно. Но при запуске атаки 11300 софт по какой-то причине пропускает видеокарты и начинает работать в openCL режиме. Скорость из-за этого значительно падает. Что-то можно с этим сделать?
Работаю из под CentOS
Приветствую! Проблемы только с одним хешем или другие не пробовали?
Убедитесь, что установлен «CUDA Toolkit» (9.0 или более поздний).
Напишите, какие сообщения программа выводит при запуске брут-форса вашего хеша или запустите бенчмарк — если не понимаете, то напишите эти сообщения здесь в комментарии:
Ждать окончания бенчмарка не нужно.
Посмотрите, что выводит следующая команда, если хотите, приложите к комментарию скриншот с выводом:
Проблема со всеми хешами bitcoin, метод атаки -m 11300
Nvidia CUDA стоит 10.1 версии
Вот это выдает бенчмарк по -m 11300
Скриншоты по hashcat -I приложил
Для всех устройств пишет «This hardware has outdated CUDA compute capability (3.5). For modern OpenCL performance, upgrade to hardware that supports CUDA compute capability version 5.0 (Maxwell) or higher.», то есть устаревшая версия CUDA 3.5. Но дальше сама же программа пишет «CUDA API (CUDA 10.1)». На сркиншотах также видна десятая версия. Может быть, какой-то баг.
Попробуйте использовать опцию принудительного задействования устройств «-D 1,2 --force», например:
Здравствуйте, при запуске котика получается такая ошибка. Что посоветуете делать?
Hashcat показывает критическую ошибку «cuFuncSetAttribute is missing from CUDA shared library», но, думаю, главной является системная ошибка «Запуск программы невозможен, так как на компьютере отсутствует api-ms-win-core-winrt-l1-1-0.dll».
Видимо, у вас Windows 7 и, видимо, Hashcat не совместима с этой ОС.
Кстати, а с установкой требуемых версий драйверов и CUDA не возникло проблем? Честно говоря, не думаю что хоть что-то из этого будет работать с Windows 7.
Можете попробовать старые версии Hashcat, что-нибудь вроде https://hashcat.net/files/hashcat-2.00.7z. Но, на самом деле, у меня и здесь сомнения, что что-то будет работать, всё-таки где 2009 и где 2021 год…
А если необходимо создать словарь длинной 8-10 символов, используя все заглавные и строчные буквы, а также все цифры
Здравствуйте, такая ошибка при использовании версии для gui (в обычном то же самое)
Приветствую! На данном скриншоте ошибок нет. То, что написано шрифтом белого цвета — просто информация, то, что написано коричным — некритичные предупреждения, которые иногда можно просто игнорировать.
В последнем «коричневом» сообщении говорится, что не отключён какой-то таймаут и это МОЖЕТ привести к каким-то ошибкам.
Самое верхнее обрезанное сообщение я не могу прочитать целиком по понятным причинам, то, что на экране сообщает, что для максимальной производительности необходим CUDA SDK (но, видимо, он отсутствует), поэтому делается откат к OpenCL.
Я проверил на свежей системе — действительно, если не установить CUDA, то ошибки не показываются, но ничего и не происходит.
Я переписал раздел Драйверы для hashcat — добавил туда ссылки, где нужно скачать необходимое ПО.
Более подробное описание процесса установки драйверов для графических карт и необходимого ПО в статье «Как установить драйверы для Hashcat в Windows».
Здравствуйте, а каким образом брать хэш для взлома. т е откуда? я нач программист.
Здравствуйте, смотрел старое видео Undermind, по перебору пароля с помощью видеокарты, у него старая версия hashcat,(3яя), у меня 6.2.5. Хэндшейк теперь переводится не в hccapx, а в hc22000. подскажите какую команду ввести чтобы перебиралось с помощью видоекарты?
Здравствуйте! В следующих двух инструкциях говориться об этом:
Первая больше теоретическая, в ней говориться о причинах перехода на новый хеш и новые инструменты. Во второй показываются конкретные команды.
Добрый.. нигде не увидел разбора ситуации подобной той что получил у себя.. После n-часового перебора паролей из словаря, hashcat пишет что хеш cracked, сообщает подобраный пароль, но к запаролированному архивному файлу, на корорый подбирался пароль, он не подходит.. Бывает ли такое и с чем может быть связано. Исходный архив типа 7z. Генераторов хеша было проверено два разных, под линукс и виндовс, хеш-файлы получилимь одинаковыми. Спасибо.
Привет, нужно составить словарь от 3 до 6 символов(из символов ?l?u?d). Но исключить слова не содержащие ?l И ?u И ?d одновременно. Т.е. НЕ нужны пароли "aaaa", "aa22", а нужны "aA22" и т.п