
Высокоскоростной DNS-резолвер и брутфорсер поддоменов с точной фильтрацией wildcard-записей и проверкой отравления DNS для точной разведки.

Быстрый резолвер доменов и инструмент для брутфорса поддоменов с точной фильтрацией wildcard-записей
Начало работы »
Использование
·
Как это работает
·
Спонсорство
·
ЧаВО
puredns — это быстрый резолвер доменов и инструмент для брутфорса поддоменов, который может точно отфильтровывать wildcard-поддомены и записи, отравленные DNS.
Он использует massdns — мощный заглушечный DNS-резолвер, для массовых запросов. При достаточной пропускной способности и хорошем списке публичных резолверов он может разрешить миллионы запросов всего за несколько минут. К сожалению, результаты massdns настолько же хороши, насколько хороши ответы, предоставляемые публичными резолверами. Результаты часто загрязнены неверными DNS-ответами и ложными срабатываниями от wildcard-поддоменов.
puredns решает эту проблему с помощью своего алгоритма обнаружения wildcard. Он может отфильтровывать wildcard-записи на основе DNS-ответов, полученных от набора доверенных резолверов. Он также пытается обойти отравление DNS, проверяя ответы с помощью этих доверенных резолверов.
Считаете это полезным? ⭐ Поставьте нам звезду на GitHub — это помогает!

|
Если моя работа приносит вам деньги, подумайте о том, чтобы стать спонсором! Вы можете получить уникальные привилегии! Это также будет значить ОЧЕНЬ МНОГО ❤️, так как позволит мне продолжать работать бесплатно для сообщества. Но что бы вы ни решили, можете быть уверены, что моё программное обеспечение останется бесплатным и открытым для вашего использования. |
Puredns требует massdns на хост-машине. Если путь к бинарному файлу massdns присутствует в переменной окружения PATH, puredns будет работать «из коробки». Хорошим местом для копирования исполняемого файла massdns является /usr/local/bin на большинстве систем. В противном случае вам нужно будет указать путь к бинарному файлу massdns с помощью аргумента командной строки --bin.
Следующее должно работать на большинстве систем на базе Debian. Следуйте официальным инструкциям для получения дополнительной информации.
git clone https://github.com/blechschmidt/massdns.git
cd massdns
make
sudo make install
Вам необходимо получить список публичных DNS-серверов для использования puredns. Обратитесь к разделу ЧаВО, чтобы узнать, как составить собственный список рабочих серверов.
Вы можете скачать готовый бинарный релиз.
Кроме того, вы можете легко скомпилировать последнюю версию. Убедитесь, что Go установлен в вашей системе — поддерживаются два последних основных релиза Go. Обратитесь к официальной странице установки Go для получения инструкций. Затем выполните следующую команду:
go install github.com/d3mondev/puredns/v2@latest
Обязательно просмотрите полный список доступных команд и опций с помощью puredns --help.
Если в текущей рабочей директории существует файл resolvers.txt, puredns по умолчанию будет использовать его. В противном случае, если присутствуют файлы ~/.config/puredns/resolvers.txt или ~/.config/puredns/resolvers-trusted.txt, puredns автоматически воспользуется ими как резолверами. Если ни один из этих вариантов недоступен, укажите резолверы для использования с помощью аргументов --resolvers и --resolvers-trusted.
Указание доверенных резолверов необязательно. По умолчанию puredns просто использует 8.8.8.8 и 8.8.4.4.
Вот как выполнить брутфорс огромного списка поддоменов, используя словарь с именем all.txt:
puredns bruteforce all.txt domain.com
Вы также можете выполнить брутфорс нескольких доменов одновременно с помощью опции -d, чтобы загрузить текстовый файл, содержащий домены, вместо указания одного домена в качестве аргумента:
puredns bruteforce all.txt -d domains.txt
Вы также можете разрешить список доменов, содержащихся в текстовом файле (по одному на строку).
puredns resolve domains.txt
Вы можете передать список доменов для разрешения через stdin:
cat domains.txt | puredns resolve
Или список слов для использования в брутфорсе:
cat wordlist.txt | puredns bruteforce domain.com
Вы также можете добавить ключ -q, чтобы выводить только найденные домены для передачи в другие инструменты:
cat domains.txt | puredns resolve -q | httprobe
Вы можете сохранить следующую информацию в файлы для повторного использования в своих рабочих процессах:
puredns resolve domains.txt --write valid_domains.txt \
--write-wildcards wildcards.txt \
--write-massdns massdns.txt
