Hashcat | |
---|---|
Тип | Взлом пароля |
Разработчик | Jens 'atom' Steube |
Написана на | Си |
Операционные системы | Linux, macOS, Windows |
Последняя версия | 6.2.6 / 2 сентября 2022 |
Репозиторий | github.com/hashcat/hashc… |
Лицензия | MIT License |
Сайт | hashcat.net/hashcat/ |
Hashcat — это, по словам создателей, самый быстрый в мире инструмент для восстановления паролей. До 2016 года программа была проприетарной, но теперь выпускается как свободное программное обеспечение. Версии доступны для 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 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 предполагает использование различных типов атак для достижения эффективного покрытия всевозможных хешей:
Традиционная атака «Грубой силой» считается устаревшей, поэтому команда Hashcat рекомендует использовать атаку по маске в качестве полной замены.