Доброго времени суток! Сегодня я хочу рассказать об утилите, которая помогает при тесте на проникновение и ловли багов. Речь пойдет о Chomp scan
Данная утилита помогает автоматизировать, иногда утомительные, процессы разведки, при этом объединив самые быстрые и эффективные утилиты.
Теперь нет надобности искать нужные словари, запоминать, что вы уже тестировали, а что нет, и также не нужно искать во всем компьютере отдельные логи программ после теста.
Chomp scan умеет фокусироваться на список потенциальных и интересных поддоменов, позволит вам сохранить ваше драгоценное время и сообщит вас о завершении через
Если вы раньше не сталкивались с этой программой, то если вы будете следовать простым советам, то все будет работать прекрасно.
1. При переходе на сайт, вы получаете определенный идентификатор в виде notica.us/?xxxxxxxx:
2. После того, как вы зашли на сайт, нужно разрешить этому сайту высылать уведомления:
3. После команды быстрой установки:
Вы можете активно использовать эту функцию.
На этом пути вы можете, при желании, сконцентрироваться на интересных доменах. Стандартный CLI мод (одна из разновидностей текстового интерфейса) включен в утилиту, и функционирует отлично. Доступен как управляемый и интерактивный режим, так и не интерактивный, который полезен, если вы не желаете искать параметры либо беспокоиться по поводу настроек нескольких аргументов.
Так же, в новой версии Chomp Scan'a включена утилита rescope. Rescope парсит все полученный домены, которые были найдены Chomp Scan'ом и генерирует .json файл, который можно импортировать в Burp Suite (подробнее вы можете узнать на github странице утилиты). Данная опция может использоваться при настройке переменной ENABLE_RESCOPE либо в файле конфигурации, либо при начале работы, простой командой -r.
Прошу отметить, что Champ scan активно развивается, и различные новые утилиты скоро будут добавлены разработчиками. Поэтому, если вам эта утилита пришлась по душе, заглядывайте на ее github страницу, что бы быть в курсе всех нововведений!
Для поиска поддоменов:
Для создания скриншотов:
Для скана портов:
Для поиска информации:
Chomp scan теперь имеет опцию парсинга файла конфигурации, которая обеспечивает более детальный контроль над тем, какие утилиты запущены, и какие из них являются менее «тяжелыми» для передачи большого количества аргументов в CLI. Данную опцию можно использовать, при вводе -L перед началом работы в строку терминала. Пример файла конфигурации включен в этот репозиторий, вы можете его использовать как шаблон для построения своего.
Файл конфигурации Chomp Scan'а дает вам полный гранулярный контроль (простыми словами, более строгий) над всеми утилитами и опциями, который могут быть выбраны. Это самое простое и более предпочтительное использование Chomp Scan'а. По сути, этот как бланк, который вы заполняете, и отдаете потом утилите, которая работает только по нему.
Так же, прошу заметить, что есть только два возможных значения для включения опции либо инструментов: с учетом регистра YES или пропуск.
Для добавления посторонних ресурсов, существует лишь 3 возможных варианта: пропуск (то есть не использование данной функции) либо имя встроенного списка слов, либо путь к файлу.
В других случаях, утилита может работать не корректно, либо вообще не работать
Пример файла:
Вариация словарей используется как для брутфорса поддоменов, так и для поиска информации. Chomp scan активно использует Seclists , а так же словари
Для брутофорс поддоменов:
Для поиска информации:
Более детально можете ознакомиться с ними здесь.
2. При запуске installer.sh утилита автоматически установит все необходимые для ее работы утилиты в папке ~/bounty/tools, но вы можете указать свой собственный путь: ./installer.sh [путь к нужной вам папке]
3. После запуска установщика, убедитесь, что вы создали папку ~/go/bin и запустили source ~/.profile в вашем терминале, что бы добавить бинарный путь Go в переменную $PATH
Chomp Scan всегда выполняет перечисление поддоменов, поэтому домен нужно вводить после флага -u. Как я уже описывал раньше, домен не должен содержать http:// либо htpps://. По умолчанию, протокол HTTPS используется всегда, поэтому, если вам нужен протокол HTTP, укажите флаг -H. Словарь является необязательным, и, например, если он не указан, то утилита продолжит работу, используя встроенный небольшой словарь на 20 тысяч слов.
Остальные сканеры могут быть не использованы. При обнаружении информации, утилита может брать любой словарь в .txt формате. Если словарь не будет указан, то утилита будет использовать свой: 22 тысячи слов.
После успешной работы утилиты, окончательные результаты будут сохранены в виду 3 текстовых файлах в выходной папке. Все найденные уникальные домены, хранятся в all_discovered_domains.txt, а все обнаруженные уникальные IP-адреса хранятся в all_discovered_ips.txt. Все домены, которые можно разложить на IP, сохранены в all_resolved_domains.txt.
К сожалению, утилита стабильно работает только на:
Ниже наводиться таблица, которая поможет вам в работе с утилитой:
Так же хочу отметить, что домены с «интересными» словами, это те домены, которые имеют в себе слова из списка interesting.txt, то есть, к примеру такие слова:
На своей github странице, автор поделился некоторыми идеями, которые будут реализованы в ближайшем будущем, а именно:
Спасибо за внимание!
Данная утилита помогает автоматизировать, иногда утомительные, процессы разведки, при этом объединив самые быстрые и эффективные утилиты.
Теперь нет надобности искать нужные словари, запоминать, что вы уже тестировали, а что нет, и также не нужно искать во всем компьютере отдельные логи программ после теста.
Chomp scan умеет фокусироваться на список потенциальных и интересных поддоменов, позволит вам сохранить ваше драгоценное время и сообщит вас о завершении через
Ссылка скрыта от гостей
Если вы раньше не сталкивались с этой программой, то если вы будете следовать простым советам, то все будет работать прекрасно.
1. При переходе на сайт, вы получаете определенный идентификатор в виде notica.us/?xxxxxxxx:
2. После того, как вы зашли на сайт, нужно разрешить этому сайту высылать уведомления:
3. После команды быстрой установки:
$ echo 'notica() { curl --data "d:$*" "https://notica.us/?mGEnf3M" ; }' >> ~/.bashrc && source ~/.bashrc
Вы можете активно использовать эту функцию.
Немного об утилите
Список интересных слов включает в себя, например, такие слова: dev, test, uat, staging и т. д. Так же домены, которые содержат эти слова, помечены.
На этом пути вы можете, при желании, сконцентрироваться на интересных доменах. Стандартный CLI мод (одна из разновидностей текстового интерфейса) включен в утилиту, и функционирует отлично. Доступен как управляемый и интерактивный режим, так и не интерактивный, который полезен, если вы не желаете искать параметры либо беспокоиться по поводу настроек нескольких аргументов.
Так же, в новой версии Chomp Scan'a включена утилита rescope. Rescope парсит все полученный домены, которые были найдены Chomp Scan'ом и генерирует .json файл, который можно импортировать в Burp Suite (подробнее вы можете узнать на github странице утилиты). Данная опция может использоваться при настройке переменной ENABLE_RESCOPE либо в файле конфигурации, либо при начале работы, простой командой -r.
Прошу отметить, что Champ scan активно развивается, и различные новые утилиты скоро будут добавлены разработчиками. Поэтому, если вам эта утилита пришлась по душе, заглядывайте на ее github страницу, что бы быть в курсе всех нововведений!
Утилиты, которые использует chomp scan
Для поиска поддоменов:
Для создания скриншотов:
Для скана портов:
- masscan и/или
Ссылка скрыта от гостей
- nmap вывод в стиле: nmap-bootstrap-xsl
Для поиска информации:
Файл конфигурации
Chomp scan теперь имеет опцию парсинга файла конфигурации, которая обеспечивает более детальный контроль над тем, какие утилиты запущены, и какие из них являются менее «тяжелыми» для передачи большого количества аргументов в CLI. Данную опцию можно использовать, при вводе -L перед началом работы в строку терминала. Пример файла конфигурации включен в этот репозиторий, вы можете его использовать как шаблон для построения своего.
Разбор файла конфигурации
Файл конфигурации Chomp Scan'а дает вам полный гранулярный контроль (простыми словами, более строгий) над всеми утилитами и опциями, который могут быть выбраны. Это самое простое и более предпочтительное использование Chomp Scan'а. По сути, этот как бланк, который вы заполняете, и отдаете потом утилите, которая работает только по нему.
Так же, прошу заметить, что есть только два возможных значения для включения опции либо инструментов: с учетом регистра YES или пропуск.
Для добавления посторонних ресурсов, существует лишь 3 возможных варианта: пропуск (то есть не использование данной функции) либо имя встроенного списка слов, либо путь к файлу.
В других случаях, утилита может работать не корректно, либо вообще не работать
Пример файла:
Код:
[general] #основные настройки
# Ввод домена. Не вводите https:// или http://, Chomp Scan введет все сам, для успешной работы.
DOMAIN=
# Использовать HTTP вместо установленного HTTPS.
ENABLE_HTTP=
# Выбор папки для хранения информации о полученных результатах после работы программы, ввод пути
OUTPUT_DIR=
# Использовать все обнаруженные домены, вместо обычных "интересных" обнаруженных доменах.
USE_ALL=
# Ввод ссылки Notica с параметром для уведомлений.
NOTICA=
# Выбор собственного файла с запрещенными ссылками, ввод пути
BLACKLIST=
# Выбор собственного словаря с "интересными" словами, ввод пути
INTERESTING=
# Выбор пути для собственных программ. Это должен быть полный путь к директории, которая содержит загруженные утилиты с github'а
TOOL_PATH=
# Подключение утилиты Rescope
ENABLE_RESCOPE=YES
[subdomain enumeration] # перечисление поддоменов
# Выбор запуска утилит
ENABLE_DNSCAN=YES
ENABLE_SUBFINDER=YES
ENABLE_SUBLIST3R=YES
ENABLE_ALTDNS=YES
# Выбор словаря
# Возможные варианты словарей: SMALL, MEDIUM, LARGE или путь к собственным
SUBDOMAIN_WORDLIST=
[content discovery] # поиск информации
# Выбор запуска утилит
ENABLE_INCEPTION=YES
ENABLE_WAYBACKURLS=YES
ENABLE_FFUF=YES
ENABLE_GOBUSTER=YES
ENABLE_DIRSEARCH=YES
# Выбор словаря
# Возможные варианты словарей: SMALL, MEDIUM, LARGE, XL, XXL, или путь к собственным
CONTENT_WORDLIST=
[information gathering] # сбор информации
# Выбор запуска утилит
ENABLE_SUBJACK=YES
ENABLE_CORSTEST=YES
ENABLE_S3SCANNER=YES
ENABLE_BFAC=YES
ENABLE_WHATWEB=YES
ENABLE_WAFW00F=YES
ENABLE_NIKTO=YES
[port scanning] #сканирование портов
# Выбор запуска утилит
ENABLE_MASSCAN=YES
ENABLE_NMAP=YES
[screenshots] #создание скриншотов
# Задействуем aquatone
ENABLE_SCREENSHOTS=YES
Словари
Вариация словарей используется как для брутфорса поддоменов, так и для поиска информации. Chomp scan активно использует Seclists , а так же словари
Ссылка скрыта от гостей
. Разные словари могут использоваться для парсинга. Можно использовать, как кастомные, то есть собственного производства, так и встроенные. Но встроенные словари не везде могут использоваться, ниже можете ознакомиться с этим:Для брутофорс поддоменов:
Аругмент | Название файла | Количество слов | Описание |
---|---|---|---|
SHORT | subdomains-top1mil-20000.txt | 22к | Из Seclists |
LONG | sortedcombined-knock-dnsrecon-fierce-reconng.txt | 102к | Из Seclists |
HUGE | huge-200k.txt | 199к | Различная комбинация словарей включая Seclists |
Для поиска информации:
Аргумент | Название файла | Количество слов | Описание |
---|---|---|---|
SMALL | big.txt | 20к | Из Seclists |
MEDIUM | raft-large-combined.txt | 167к | Комбинация списков из Seclists |
LARGE | seclists-combined.txt | 215к | Огромная комбинация из всех Discovery/DNS списков в Seclists |
XL | haddix_content_discovery_all.txt | 373к | Все словари для поиска информации
Ссылка скрыта от гостей
|
XXL | haddix-seclists-combined.txt | 486к | Комбинация из двух предыдущих словарей |
Более детально можете ознакомиться с ними здесь.
Установка
1. Скопируйте этот репозиторий:
git clone https://github.com/SolomonSklash/chomp-scan/
2. При запуске installer.sh утилита автоматически установит все необходимые для ее работы утилиты в папке ~/bounty/tools, но вы можете указать свой собственный путь: ./installer.sh [путь к нужной вам папке]
3. После запуска установщика, убедитесь, что вы создали папку ~/go/bin и запустили source ~/.profile в вашем терминале, что бы добавить бинарный путь Go в переменную $PATH
Использование
Chomp Scan всегда выполняет перечисление поддоменов, поэтому домен нужно вводить после флага -u. Как я уже описывал раньше, домен не должен содержать http:// либо htpps://. По умолчанию, протокол HTTPS используется всегда, поэтому, если вам нужен протокол HTTP, укажите флаг -H. Словарь является необязательным, и, например, если он не указан, то утилита продолжит работу, используя встроенный небольшой словарь на 20 тысяч слов.
Остальные сканеры могут быть не использованы. При обнаружении информации, утилита может брать любой словарь в .txt формате. Если словарь не будет указан, то утилита будет использовать свой: 22 тысячи слов.
После успешной работы утилиты, окончательные результаты будут сохранены в виду 3 текстовых файлах в выходной папке. Все найденные уникальные домены, хранятся в all_discovered_domains.txt, а все обнаруженные уникальные IP-адреса хранятся в all_discovered_ips.txt. Все домены, которые можно разложить на IP, сохранены в all_resolved_domains.txt.
К сожалению, утилита стабильно работает только на:
- Kali Linux
- Debian 9
- Ubuntu 18.04
Ниже наводиться таблица, которая поможет вам в работе с утилитой:
-u [домен] | Домен, который нужно просканировать |
-L [файл конфигурации] | Путь к файлу конфигурации, который дает более строгий контроль |
-d [словарь] | Словарь, который будет использоваться для перечисления поддоменов |
-c | Включение фазы поиска информации. Будет использован встроенный словарь |
-C [словарь] | Словарь, который будет использоваться для поиска информации |
-P [путь к файлу] | Выбрать собственный путь для размещения утилит |
-s | Включение создания скриншотов утилитой aquatone |
-i | Включение поиска информации такими утилитами как: subjack, S3Scanner и т.д. |
-p | Включение опции сканирования портов, используя masscan (запускать только как администратор) и nmap |
-I | Включение интерактивного мода (выбор определенных функции в утилитах и выходных данных) |
-D | Не задействование интерактивного режима, при этом опции остаются такими:
|
-b [словарь] | Выбрать пользовательский черный список доменов |
-X [словарь] | Выбрать пользовательский список «интересных» слов |
-o [директория] | Выбрать собственную директорию для получения выходной информации |
-a | Использовать все уникальный домены которые были обнаружены для сканирования первым, чем домены с «интересными» словами |
-A | Использовать для сканирования только домены с «интересными словами» |
-H | Использовать только HTTP для соединения с сайтами, вместо HTTPS |
-r | Включение создания JSON файла rescope'ом |
-h | Выведет подсказку по использовании утилиты |
Так же хочу отметить, что домены с «интересными» словами, это те домены, которые имеют в себе слова из списка interesting.txt, то есть, к примеру такие слова:
- stg
- svn
- test
- testing
- tools
- trial
- uat
- upload
- vpn
На своей github странице, автор поделился некоторыми идеями, которые будут реализованы в ближайшем будущем, а именно:
- Внедрение новых утилит.
- Генерация утилитой HTML рапорта
Спасибо за внимание!