По мере того, как цифровые следы организаций становятся все больше и больше, сетевая разведка и перечень услуг, доступных через общедоступный Интернет, стали критически важной областью в обеспечении безопасности организации. А с учетом увеличения числа уязвимостей и угроз, нацеленных на веб-приложения, выполнение автоматического анализа и перечисления сервисов становится все более важным. Поэтому сегодня рассмотрим AutoRecon: инструмент для разведки сетей.
К счастью, использование инструментов с открытым исходным кодом и бесплатных инструментов, таких как recon-ng, упростило этот процесс до точки, близкой к автоматизации.
Что такое AutoRecon?
AutoRecon — это проект с открытым исходным кодом, созданный для выполнения сетевой разведки с автоматическим перечислением сервисов.
Преимущество AutoRecon перед другими инструментами сбора информации и сканирования в Интернете заключается в том, что он позволяет обрабатывать и принимать дальнейшие меры по информации, собранной непосредственно в AutoRecon. Это включает в себя выполнение таких действий, как Nmap, а также запуск собранных данных с помощью других инструментов сканирования, таких как feroxbuster, sslscan, nbtscan, Nikto и других.
Установка AutoRecon
Примечание. Поскольку его зависимости легко доступны в KaliLinux, мы предлагаем использовать AutoRecon в этом дистрибутиве.
Для начала убедитесь, что у вас есть python3 и pip.
Затем используйте Python pip, чтобы получить последнюю версию AutoRecon и установить ее:
sudo python3 -m pip install git+https://github.com/Tib3rius/AutoRecon.git
Далее вам нужно будет установить определенные зависимости:
sudo apt install seclists curl enum4linux feroxbuster impacket-scripts nbtscan nikto nmap onesixtyone oscanner redis-tools smbclient smbmap snmp sslscan sipvicious tnscmd10g whatweb wkhtmltopdf
Выполните команду autorecon –help,
чтобы определить, успешно ли он установлен:
autorecon --help
В результате вы получите следующий отчет, содержащий различные параметры, доступные в AutoRecon:
Ипользование
Начать работу с AutoRecon очень просто — можно даже запустить AutoRecon без каких-либо флагов или параметров:
autorecon domain.com
Замените domain.com на доменное имя, которое вы хотите просканировать.
После завершения выполнения команды она должна вернуть следующий отчет:
Анализ результатов
После завершения сканирования AutoRecon сохраняет результаты сканирования в каталоге «results», внутри которого создается новый подкаталог для каждой цели, сканируемой AutoRecon.
Структура результатов, созданная AutoRecon, показана ниже:
results
└── domain-name.here
├── exploit
├── loot
├── report
│ ├── local.txt
│ ├── notes.txt
│ ├── proof.txt
│ ├── report.md
│ │ └── domain-name.here
│ │ ├── Commands.md
│ │ ├── Errors.md
│ │ ├── Manual Commands.md
│ │ ├── Patterns.md
│ │ ├── Port Scans
│ │ │ ├── PortScan - All TCP Ports.md
│ │ │ ├── PortScan - Top 100 UDP Ports.md
│ │ │ └── PortScan - Top TCP Ports.md
│ │ └── Services
│ │ ├── Service - tcp-22-ssh
│ │ │ └── Nmap SSH.md
│ │ ├── Service - tcp-443-http
│ │ │ ├── Curl.md
│ │ │ ├── Curl Robots.md
│ │ │ ├── Directory Buster.md
│ │ │ ├── Nmap HTTP.md
│ │ │ ├── SSL Scan.md
│ │ │ ├── whatweb.md
│ │ │ └── wkhtmltoimage.md
│ │ └── Service - tcp-80-http
│ │ ├── Curl.md
│ │ ├── Curl Robots.md
│ │ ├── Directory Buster.md
│ │ ├── Nmap HTTP.md
│ │ ├── whatweb.md
│ │ └── wkhtmltoimage.md
│ └── screenshots
└── scans
├── _commands.log
├── _errors.log
├── _full_tcp_nmap.txt
├── _manual_commands.txt
├── _patterns.log
├── _quick_tcp_nmap.txt
├── tcp22 │
├── tcp_22_ssh_nmap.txt
│ └── xml
│ └── tcp_22_ssh_nmap.xml
├── tcp443
│ ├── tcp_443_https_curl.html
│ ├── tcp_443_https_feroxbuster_big.txt
│ ├── tcp_443_https_feroxbuster_common.txt
│ ├── tcp_443_https_feroxbuster_raft-large-words.txt
│ ├── tcp_443_https_nmap.txt
│ ├── tcp_443_https_screenshot.png
│ ├── tcp_443_https_whatweb.txt
│ ├── tcp_443_sslscan.html
│ └── xml
│ └── tcp_443_https_nmap.xml
├── tcp80
│ ├── tcp_80_http_curl.html
│ ├── tcp_80_http_curl-robots.txt
│ ├── tcp_80_http_feroxbuster_big.txt
│ ├── tcp_80_http_feroxbuster_common.txt
│ ├── tcp_80_http_feroxbuster_raft-large-words.txt
│ ├── tcp_80_http_nmap.txt
│ ├── tcp_80_http_screenshot.png
│ ├── tcp_80_http_whatweb.txt
│ └── xml
│ └── tcp_80_http_nmap.xml
├── _top_100_udp_nmap.txt
└── xml
├── _full_tcp_nmap.xml
├── _quick_tcp_nmap.xml
└── _top_100_udp_nmap.xml
-
- Каталог эксплойтов используется для хранения любого кода эксплойта, который вы запускаете для сканируемой цели.
- Каталог добычи предназначен для хранения любых хэшей или примечательных файлов, которые вы найдете на сканируемой цели.
- Каталог отчетов содержит отчеты о проверке, выполненной AutoRecon; файлы генерируются следующим образом:
-
- local.txt можно использовать для хранения флага local.txt, найденного на целевых объектах.
- notes.txt должен содержать базовый шаблон, в котором вы можете писать заметки для каждой службы.
- proof.txt может использоваться для хранения флага proof.txt, найденного на цели.
-
- Каталог снимков экрана используется для хранения любых снимков экрана, которые вы используете для документирования эксплуатации цели.
- Каталог сканирований — это место, куда будут отправляться все результаты сканирований, выполненных AutoRecon. Сюда входят все команды, выполняемые AutoRecon, а также сведения о том, завершились ли какие-либо команды неправильно или завершились успешно.
- В каталоге scans / XML хранятся результаты данных сканирования в формате XML (из Nmap и т. д.), который можно использовать для простого импорта данных результатов сканирования в другое программное обеспечение для дальнейшей обработки или хранения.
Дальнейшее понимание результатов
Поиск версии веб-сервера
По результатам, полученным с помощью AutoRecon, можно также найти версию веб-сервера, работающую в целевой системе. Большинство веб-серверов по умолчанию раскрывают свое имя и версию; например, из вывода Nmap:
PORT STATE SERVICE REASON VERSION
80/tcp open http syn-ack ttl 55 nginx 1.14.0 (Ubuntu)
Это говорит нам, что веб-сервер, работающий на сканируемой цели, — это Nginx 1.14.0.
Обнаружение операционных систем
Если посмотреть еще дальше на вывод, который мы собрали выше, веб-сервер часто также предоставляет операционную систему или семейство операционных систем. Кроме того, как показано выше, мы видим, что сканируемая цель работает в Ubuntu.
Сбор скриншотов по пути
Часто снимки экрана веб-приложений могут многое сказать — они могут выявлять / отображать ошибки, находить веб-приложения, работающие на нестандартных портах, показывать устаревшие запущенные веб-приложения и многое другое. AutoRecon собирает скриншоты для всех портов, которые он обнаруживает по пути.
Эти скриншоты можно найти по пути: results / DOMAIN.NAME / scans / tcpPORT.
Это позволяет эффективно оптимизировать их процесс. Обычно нужно определить открытые порты, а затем запустить другой инструмент для сбора снимков экрана. Однако AutoRecon сделает это за вас автоматически.
Резюме
AutoRecon зарекомендовал себя как отличный инструмент для проведения сетевой разведки с автоматическим подсчетом сервисов. В сочетании с возможностью дальнейшей обработки собранных данных с помощью других полезных инструментов, включая feroxbuster, sslscan, nbtscan и Nikto, количество вариантов использования AutoRecon значительно увеличивается.
AutoRecon также предоставляет данные о результатах сканирования в формате XML, что позволяет обрабатывать результаты сканирования в большей степени и упрощает регистрацию в базах данных.