
Фреймворк для выявления и эксплуатации out-of-band (OOB) уязвимостей приложений с пользовательским DNS/токен-сервером, расширением Burp Suite и плагинами уведомлений для автоматизированного тестирования безопасности.
Фреймворк для выявления и эксплуатации внеполосных (OOB) уязвимостей.
Python >= 3.6
virtualenv -p /usr/bin/python3 venv
source venv/bin/activate
./venv/bin/pip3 install -r requirements.txt
git submodule update --init --recursive
Установите API-ключ в config.yml (должен быть одинаковым для клиента и сервера)
Вам нужно настроить DNS-записи в вашем регистраторе, чтобы они указывали на ваш сервер Mole. Минимально вам потребуется запись A для сервера имён и запись NS.
Mole может быть настроен для размещения других параметров конфигурации.
Mailgun требует DNS-записей для включения сервиса: https://help.mailgun.com/hc/en-us/articles/203637190-How-Do-I-Add-or-Delete-a-Domain-
В настоящее время Mole не поддерживает TLS нативно. Для реализации TLS используйте обратный прокси-сервер, такой как nginx, для завершения TLS-соединения и перенаправления трафика на сервер Mole.
Расширение Burp Suite требует отдельной виртуальной среды Python 2.7 из-за того, что последняя версия Jython поддерживает только 2.7. Ниже приведены инструкции по настройке виртуальной среды и конфигурации расширения.
virtualenv -p /usr/bin/python2.7 burp_venvsource ./burp_venv/bin/activate./burp_venv/bin/pip -r requirementsburp_venv/lib/python2.7/site-packages, созданной на шагах 1–3.

Python и выберите файл mole_burp_extension.py из каталога проекта mole.

domain — ваш собственный домен
length — длина токенов (по умолчанию 5)
Набор символов токена — ASCII верхний и нижний регистр, а также цифры. Длину можно изменить в соответствии с потребностями, например, для ограниченного пространства полезной нагрузки. Количество токенов для каждой длины приведено ниже.
ssl — настройка полезных нагрузок для https vs http
``server` — домен или IP-адрес сервера токенов Mole
default_tags — список тегов по умолчанию, добавляемых ко всем токенам. Полезно для токенов, специфичных для проекта/клиента.
api_key — API-ключ, используемый для аутентификации запросов к API mole
dns_addr — IP-адрес, используемый для ответа на DNS-запросы
db_conn — SQLAlchemy URL базы данных. По умолчанию — база данных SQLite в корневом каталоге sqlite:///mole.db
static_responses — список статических DNS-ответов (пары ключ/значение)
web_port — настройка прослушивающего веб-порта
dns_port -настройка прослушивающего DNS-порта
Все уведомления имеют флаг enabled, определяющий, следует ли запускать уведомление при взаимодействии. Каждый плагин уведомлений имеет свои собственные параметры конфигурации.
mailgun — настройте domain, to, from и api_key для включения email-уведомлений через Mailgun
slack — token и channel
webhook — универсальный POST webhook
Я уверен, что их много, пожалуйста, создайте новый issue и заполните шаблон как можно лучше для быстрой сортировки.