
Распределенная система взлома паролей методом перебора, которая распараллеливает атаки на основе словарей и crunch на нескольких машинах через веб- и десктопные клиенты.
Предупреждение
Я просматривал код Kraken-Client, и поскольку это было мое первое React-приложение, оно старое, громоздкое и требует серьезных улучшений (сервер тоже нуждается в доработке). В ближайшие недели/месяцы я постараюсь переписать его на обновленном React или на другом фреймворке. Пожалуйста, продолжайте использовать его как есть; если возникнут проблемы, сообщайте о них и оставляйте отзывы. Спасибо!
Kraken — это онлайн-инструмент для распределенного подбора паролей методом грубой силы. Он позволяет распараллеливать словари и взлом на основе генератора слов crunch на нескольких машинах как в виде веб-приложения в браузере, так и в виде автономного клиента на базе Electron. Kraken стремится быть простым в использовании, отказоустойчивым и масштабируемым.
Я написал Kraken, потому что хотел узнать больше об атакующей безопасности и создать простое решение для преодоления ограничения использования одного устройства при попытке распределения нагрузки по подбору паролей.
Kraken — это контейнеризированное приложение с использованием docker-compose, которое запускает БД (Postgres), S3-совместимое файловое хранилище (Minio), сервер и браузерный клиент. Файл docker-compose находится в корневом каталоге репозитория. Развернуть его можно следующей командой:
docker-compose up
Браузерный клиент Kraken должен быть доступен по адресам:
Примечание: Для запуска браузерного клиента с удаленной машины вы ОБЯЗАНЫ использовать HTTPS как для URL сервера, так и для URL браузера. Например, если вы размещаете сервер на 192.168.1.2, то браузерный клиент будет доступен по адресу https://192.168.1.2:8443, а URL сервера должен быть https://192.168.1.2:8443/api
Чтобы загрузить списки паролей или словари, загрузите их в консоль Minio по адресу <a href=http://localhost:9001>localhost:9001. Подробные шаги приведены ниже. В противном случае вы можете динамически генерировать списки слов с помощью crunch. Параметры crunch и инструкции по их использованию: страница man crunch
Сервер Kraken работает на <a href=http://localhost:5000>localhost:5000 и также предоставляет документацию Swagger по адресу <a href=http://localhost:5000/swagger>localhost:5000/swagger.
Настольный клиент — это портативное приложение на базе Electron, которое может работать на Mac, Windows и Linux. Из-за требуемых конфиденциальных разрешений настоятельно рекомендуется скомпилировать его самостоятельно, клонировав репозиторий и выполнив:
cd kraken-client
npm install
npm run electron-start
Примечание: Переносимый клиент Windows EXE должен работать в папке с зависимостями hashcat. Файлы hashcat можно загрузить с домашней страницы или отсюда. Я включил сжатый zip-файл с переносимым исполняемым файлом и необходимыми файлами hashcat. Их можно загрузить:
Релизы включают Linux AppImage, для которого требуется только установленный hashcat.
Установка hashcat:
sudo apt-get install hashcat
Вам нужно будет дать AppImage разрешение на выполнение через свойства.
Чтобы добавить свои списки слов в Minio, выполните следующие шаги:





Это руководство находится в разработке, но не стесняйтесь создавать issue или обращаться ко мне за любой необходимой помощью.