Soft SubScanPy - сканер поддоменов

Выкладывать еще самописные скрипты?

  • Да

    Голосов: 1 100,0%
  • Нет

    Голосов: 0 0,0%

  • Всего проголосовало
    1
08.10.2024
2
0
BIT
47
SubScanPy - это сканер поддоменов DNS на основе списка слов на языке python.

Ссылка на скачивание -> git

Сначала скрипт попытается выполнить перенос зоны, используя каждый из серверов имен целевого домена.

Если это не удастся, программа выполнит поиск записей TXT и MX для домена, а затем выполнит рекурсивное сканирование поддомена, используя предоставленный список слов.

Usage​

Banner

Bash:
$ SubScanPy.py (-d <domain> | -l <list>) [OPTIONS]

Обязательные аргументы​

Bash:
-d  --domain                              Целевой домен; ИЛИ
-l  --list                                Файл с доменами для сканирования, разделенными новой строкой; ИЛИ
-b  BRUTEFORCE, --bruteforce BRUTEFORCE   Длина генерируемого поддомена в формате 6 или 3-8

Опциональные аргументы​

Bash:
-h, --help                            show this help message and exit
-w WORDLIST, --wordlist WORDLIST      Словарь
-t THREADS, --threads THREADS         Количество потоков
-6, --ipv6                            Сканировать записи AAAA
-z, --zonetransfer                    Только выполнять передачу зоны
-r, --recursive                       Рекурсивно сканировать поддомены
--recurse-wildcards                   Рекурсивно сканировать подстановочные знаки (медленно)
-m MAXDEPTH, --maxdepth MAXDEPTH      Максимальная глубина рекурсии (для перебора)
-a, --alterations                     Сканировать изменения поддоменов (медленно)
-R RESOLVERS, --resolver RESOLVERS    Использовать указанные резолверы (разделенные запятыми)
-L RESOLVER_LIST, --resolver-list RESOLVER_LIST Файл, содержащий список резолверов
-T, --tld                             Сканировать TLD
-o OUTPUT_FILENAME, --output OUTPUT_FILENAME Записать вывод в файл
-i OUTPUT_IPS, --output-ips OUTPUT_IPS Записать обнаруженные IP-адреса в файл
-D, --domain-first                    Выводить сначала домен, а не IP-адрес
-N, --no-ip                           Не выводить IP-адреса в выводе
-v, --verbose                         Подробный режим
-n, --nocheck                         Не проверять серверы имен перед сканированием
-q, --quick                           Только выполнять передачу зоны и сканирование поддоменов с минимальным выводом в файл

Пользовательские точки вставки можно задать, добавив "%%" в доменное имя, например:

Bash:
$ SubScanPy.py -d dev-%%.example.org<br>

Wordlists​

Несколько списков слов поставляются вместе с SubScanPy.

Первые четыре (subdomains-100.txt, subdomains-500.txt, subdomains-1000.txt и subdomains-10000.txt) были созданы путем анализа наиболее часто встречающихся подобластей примерно в 86 000 файлах зон, которые были переданы в рамках отдельного исследовательского проекта. Эти списки слов отсортированы по популярности поддоменов (точнее, по проценту зон, которые содержали их в наборе данных).

Окончательный (и используемый по умолчанию) список слов (subdomains.txt) основан на лучших поддоменах по популярности, но в него был внесен ряд дополнений вручную на основе доменов, выявленных в ходе тестирования.

Этот список отсортирован в алфавитном порядке и в настоящее время содержит приблизительно 770 записи.

Сканирование TLD​

Параметр -T (--tld) можно использовать для поиска всех TLD, в которых существует конкретное доменное имя. По умолчанию будет использоваться tlds.txt список, содержащий все TLD, перечисленные IANA (включая новые TLD). Вы также можете указать пользовательский список слов с помощью -w. Прилагаемый файл suffixes.txt представляет собой сокращенную версию общедоступного списка суффиксов, поэтому он будет включать большинство доменов второго уровня (таких как co.uk).

Обратите внимание, что при использовании этой опции вам следует указывать только базу доменного имени ("github" и "github.com").

Изменения​

Переключатель "-a"/"--alternations" добавляет различные префиксы и суффиксы (такие как "dev", "test", "01" и т.д.) к доменам, как с дефисами, так и без них. Это приводит к большому количеству дополнительных перестановок (примерно 60 перестановок на домен), поэтому выполняется намного медленнее, особенно при использовании больших списков слов.

Установка​

Для работы с SubScanPy требуется Python 3 и библиотеки netaddr (версии 0.7.19 или выше) и dnspython (версии 2.0.0 или выше).

Для установки зависимостей выполните следующую команду:

Bash:
$ pip install -r requirements.txt
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!