Hashcat

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску
Hashcat
Тип Взлом пароля
Разработчик Jens 'atom' Steube
Операционная система Linux, macOS, Windows
Последняя версия 5.0.0 / 28 Октября 2018
Лицензия MIT License
Сайт hashcat.net/hashcat/

Hashcat — это, по словам создателей, самый быстрый в мире инструмент для восстановления паролей. До 2015 года программа была проприетарной, но теперь выпускается как свободное программное обеспечение. Версии доступны для Linux, macOSи Windows и могут быть представлены в вариантах на базе CPU или GPU. Примерами алгоритмов хеширования, поддерживаемых хеш-кэтами, являются хеши Microsoft LM, MD4, MD5, семейство SHA, форматы Unix Crypt, MySQL и Cisco PIX.



Hashcat получил свою популярность благодаря найденным его создателем недостаткам в других программах, использующих шифрование данных. Например, была обнаружена ошибка в схеме хеширования менеджера паролей 1Password, которая позволяла подбирать мастер-пароли.[1][2] На данный момент Hashcat активно используется для подбора WPA/WPA2 паролей, взлома паролей от документов MS Office, PDF, 7-Zip, RAR, TrueCrypt. Активное развитие и использование Hashcat в качестве утилиты для взлома паролей заставляет разработчиков задумываться о безопасности создаваемых ими систем.[3]

Версии[править | править код]

Раньше Hashcat выпускался в двух версиях:

  • hashcat — инструмент для восстановления пароля на базе процессора
  • oclHashcat / cudaHashcat — инструмент с графическим ускорением (OpenCL или CUDA)

С выпуском hashcat v3.00 инструменты GPU и CPU были объединены в один инструмент под названием hashcat v3.00.[4]Версия, предназначенная только для процессора, получила название hashcat-legacy. И CPU, и GPU теперь используют OpenCL.

Многие из алгоритмов, поддерживаемых hashcat-legacy, могут быть взломаны за более короткое время с помощью хорошо документированного ускорения за счет графического процессора (GPU), используемого в oclHashcat, cudaHashcat и hashcat v3.00 (например, MD5, SHA1 и другие). Однако не все алгоритмы могут быть ускорены за счет использования графических процессоров (например, bcrypt), поэтому oclHashcat/cudaHashcat не может считаться полноценной заменой для hashcat-legacy.

На данный момент hashcat доступен для macOS, Windows и Linux с GPU, CPU и общей поддержкой OpenCL, что позволяет использовать FPGA и другие ускорительные карты.

Принцип работы[править | править код]

Принцип работы всех программ, позволяющих взламывать пароли, практически одинаковый. Утилиты различаются разве что скоростью перебора пробных паролей, в них могут быть реализованы и разные алгоритмы генерации пробных паролей (типы атак). Основная идея состоит в том, чтобы по заранее заданному подмножеству букв/слов (так называемый словарь) осуществлять быстрый перебор комбинаций. От каждой комбинации вычисляется хеш и сравнивается с оригинальным. В случае совпадения пароль считается взломанным. В случае с Hashcat подбор рекомендуется производить на GPU, так как графический процессор способен перебирать комбинации значительно быстрее.

Типы атак[править | править код]

Hashcat предполагает использование различных типов атак для достижения эффективного покрытия всевозможных хешей:

  • Атака «грубой силой» (Brute-force attack)
  • Атака по маске (Mask attack)
    • Считается самой эффективной на данный момент. Идея состоит в том, чтобы с помощью частотного словаря (наиболее употребляемые пароли) построить маску и тем самым сократить количество комбинаций.
    • Например, достаточно стандартной являются комбинации с заглавной первой буквой и цифрами на конце (Julia1983). В случае обычного перебора количество комбинаций равняется комбинаций, что заняло бы чуть более чем 4 года на обычной для современного GPU скорости (100 Мега-хешей в секунду)
    • Используя стандартную для многих людей маску (заглавная буква в начале и год в конце), подобный пароль можно было бы перебрать за комбинаций, что заняло бы около 40 минут на той же скорости GPU.
  • Атака перебором всех комбинаций в словаре (Combinator attack)
  • Простой перебор по словарю (Dictionary attack)
  • Атака по следу (Fingerprint attack)
  • Гибридная атака (Hybrid attack)
  • Атака перемешиванием (Permutation attack)
  • Атака на основе правила (Rule-based attack)
  • Атака поиском по таблице (Table-lookup attack), только на CPU
  • Атака перебором по заглавным и прописным буквам (Toggle-Case attack)

Традиционная атака "Грубой силой" считается устаревшей, поэтому команда Hashcat рекомендует использовать атаку по маске в качестве полной замены.

Примечания[править | править код]

  1. Toward better Master Passwords | 1Password (англ.). 1Password Blog (28 August 2018). Дата обращения 13 декабря 2018.
  2. hashcat. Support added to crack 1Password to oclHashcat-plus, 100% computed on GPU! Plus I found an exploitable design flaw http://hashcat.net/forum/thread-2238.html … (англ.). @hashcat (16 April 2013). Дата обращения 13 декабря 2018.
  3. 1Password hashcat strong master passwords | 1Password (англ.). 1Password Blog (16 March 2013). Дата обращения 14 декабря 2018.
  4. hashcat v3.00. hashcat.net. Дата обращения 13 декабря 2018.