Статья AutoRecon – твой помощник при сдаче OSCP, решении машин на HTB и не только

Всем привет! Решил рассказать об очень интересном инструменте, который очень сильно облегчает задачу и сохраняет время на этапе сканирования и анализа хостов.

Описание

Как описывает своё творение автор Tib3rius на GitHub:
«AutoRecon - это инструмент сетевой разведки для сканирования портов и автоматического анализа найденных сервисов.»
Автор был вдохновлён такими инструментами как Reconnoitre, ReconScan, и bscan. AutoRecon содержит в себе всё лучшее от них и дополнен удобными функционалом для сканирования нескольких хостов одновременно.

Этот инструмент можно легально использовать при сдаче OSCP, поскольку он не нарушает правил. В уставе сдачи экзамена указано, что запрещено использовать средства автоматизации эксплоитов, но не сканирования.
Было крайне удобно запустить сканирование на 4 экзаменационных машинах и параллельно заниматься машиной с BOF. Сканирование работало в фоне и абсолютно не мешало, а к моменту завершения машины с BOF пара хостов уже была полностью просканирована.
В том числе, благодаря этому инструменту, я успешно сдал OSCP экзамен и продолжаю успешно использовать инструмент при решении хостов на HTB.

Механизм работы

При запуске AutoRecon первым делом проверяет открытые порты на хосте с помощью Nmap.
По умолчанию одновременно запускается 3 сканирования:

  • полное сканирование всех TCP портов;
  • сканирование топ 20 UDP портов ;
  • полное сканирование топ 1000 TCP портов.

(Может возникнуть вопрос: «Зачем AutoRecon сканирует топ 1000 TCP-портов одновременно со сканированием всех TCP-портов?».Причина проста: большинство открытых портов, как правило, входит в топ 1000, и благодаря этому мы ускорим запуск анализа сервисов, не дожидаясь, пока Nmap просканирует все TCP порты).
По факту, анализ сервисов завершается раньше, чем заканчивается полное сканирование всех TCP-портов. Несмотря на дублирование задач, затраты окупаются за счет более быстрого анализа.

После того, как были найдены открытые порты, AutoRecon запускает проверку сервисов на этих портах, а после запускает анализ сервисов.
К примеру, если будет найден Web сервер, то инструмент натравит на него Nikto и Gobuster, запустит Nmap скрипты для Web серверов, попробует скачать robots.txt.

Но хватит лирики, переходим к установке и обзору AutoRecon.

Установка

Для демонстрации я взял готовую виртуальную машину с Kali2020.2
AutoRecon работает на Python 3 и не поддерживает никак Python 2. Также нам потребуется Python3-pip.

Устанавливаем командой:

Код:
sudo apt install python3 python3-pip
Также для работы AutoRecon необходим дополнительный софт:
Код:
curl
enum4linux
gobuster
nbtscan
nikto
nmap
onesixtyone
oscanner
smbclient
smbmap
smtp-user-enum
snmpwalk
sslscan
svwar
tnscmd10g
whatweb
wkhtmltoimage
seclist
Устанавливаем всё командой:

Код:
sudo apt install seclists curl enum4linux gobuster nbtscan nikto nmap onesixtyone oscanner smbclient smbmap smtp-user-enum snmp sslscan sipvicious tnscmd10g whatweb wkhtmltopdf
Дальше автор предлагает несколько вариантов установки, но я опишу вариант установки через pip (есть ещё вариант установки через pipx, если кому-то этот вариант предпочтительней, инструкцию можно найти на GitHub):
Код:
python3 -m pip install git+https://github.com/Tib3rius/AutoRecon.git

После этого AutoRecon будет установлен на машину, его можно будет вызвать командой:

Код:
autorecon
А при использовании флага -h мы увидим подсказки и описание функционала других ключей.

autorecon.png


Сканирование
Для демонстрации сканирования я развернул у себя всем известную Metasploitable2.

Запустим сканирование командой и ключом -o. Этот ключ сообщит AutoRecon, что всю информацию по сканированию нужно размещать в директорию запуска инструмента:

Код:
autorecon 172.16.0.24 -o ./

scan_start.png


На экране будут отображаться текущие задачи, выполняемые утилитой. Также мы сразу увидим, что в директории, откуда производился запуск AutoRecon, появилась директория с ip адресом сканируемого хоста.

В ней находятся поддиректории. Дерево поддиректорий выглядит вот так:

Код:
├── exploit/
├── loot/
├── report/
│   ├── local.txt
│   ├── notes.txt
│   ├── proof.txt
│   └── screenshots/
└── scans/
    ├── _commands.log
    ├── _manual_commands.txt
    └── xml/
Инструмент автоматически генерирует директории для последующего распределения полученных файлов или заметок по категориям.
На самом деле, очень удобная структура. Мне всегда было удобно систематизировать разные файлы по категориям, чтобы не путаться в них.

Я предпочитаю открывать несколько вкладок в termux и в них уже работать с нужными директориями.
Сейчас нас интересует директория scans. В ней будут появляться все результаты сканирования хоста.

scan_results.png


Как видно из скриншота выше, инструмент подписывает все файлы для простоты ориентирования и понимания, какими инструментами сканировались определенные порты.

Также нас могут заинтересовать следующие файлы в этой директории:
  • _commands.log содержит в себе список всех команд, которые запускал AutoRecon. Может пригодиться, если потребуется немного изменить команду и повторно её запустить.
  • _manual_commands.txt содержит в себе команды, которые потенциально опасны для автоматического запуска, либо команды, требующие модификации после анализа полученных данных.
  • _errors.log содержит в себе информацию по ошибкам, возникшим во время сканирования.
Также предоставлю листинг команд, которые запускались для моего примера.
Код:
nmap -vv --reason -Pn -sU -A --top-ports=20 --version-all -oN "/root/172.16.0.24/scans/_top_20_udp_nmap.txt" -oX "/root/172.16.0.24/scans/xml/_top_20_udp_nmap.xml" 172.16.0.24

nmap -vv --reason -Pn -A --osscan-guess --version-all -p- -oN "/root/172.16.0.24/scans/_full_tcp_nmap.txt" -oX "/root/172.16.0.24/scans/xml/_full_tcp_nmap.xml" 172.16.0.24

nmap -vv --reason -Pn -sV -sC --version-all -oN "/root/172.16.0.24/scans/_quick_tcp_nmap.txt" -oX "/root/172.16.0.24/scans/xml/_quick_tcp_nmap.xml" 172.16.0.24

if [ "False" == "True" ]; then sslscan --show-certificate --no-colour 172.16.0.24:21 2>&1 | tee "/root/172.16.0.24/scans/tcp_21_sslscan.txt"; fi

nmap -vv --reason -Pn -sV -p 21 --script="banner,(ftp* or ssl*) and not (brute or broadcast or dos or external or fuzzer)" -oN "/root/172.16.0.24/scans/tcp_21_ftp_nmap.txt" -oX "/root/172.16.0.24/scans/xml/tcp_21_ftp_nmap.xml" 172.16.0.24

if [ "False" == "True" ]; then sslscan --show-certificate --no-colour 172.16.0.24:22 2>&1 | tee "/root/172.16.0.24/scans/tcp_22_sslscan.txt"; fi

nmap -vv --reason -Pn -sV -p 22 --script="banner,ssh2-enum-algos,ssh-hostkey,ssh-auth-methods" -oN "/root/172.16.0.24/scans/tcp_22_ssh_nmap.txt" -oX "/root/172.16.0.24/scans/xml/tcp_22_ssh_nmap.xml" 172.16.0.24

if [ "False" == "True" ]; then sslscan --show-certificate --no-colour 172.16.0.24:23 2>&1 | tee "/root/172.16.0.24/scans/tcp_23_sslscan.txt"; fi

nmap -vv --reason -Pn -sV -p 23 --script="banner,telnet-encryption,telnet-ntlm-info" -oN "/root/172.16.0.24/scans/tcp_23_telnet-nmap.txt" -oX "/root/172.16.0.24/scans/xml/tcp_23_telnet_nmap.xml" 172.16.0.24

if [ "False" == "True" ]; then sslscan --show-certificate --no-colour 172.16.0.24:25 2>&1 | tee "/root/172.16.0.24/scans/tcp_25_sslscan.txt"; fi

nmap -vv --reason -Pn -sV -p 25 --script="banner,(smtp* or ssl*) and not (brute or broadcast or dos or external or fuzzer)" -oN "/root/172.16.0.24/scans/tcp_25_smtp_nmap.txt" -oX "/root/172.16.0.24/scans/xml/tcp_25_smtp_nmap.xml" 172.16.0.24

smtp-user-enum -M VRFY -U "/usr/share/seclists/Usernames/top-usernames-shortlist.txt" -t 172.16.0.24 -p 25 2>&1 | tee "/root/172.16.0.24/scans/tcp_25_smtp_user-enum.txt"

if [ "False" == "True" ]; then sslscan --show-certificate --no-colour 172.16.0.24:53 2>&1 | tee "/root/172.16.0.24/scans/tcp_53_sslscan.txt"; fi

nmap -vv --reason -Pn -sV -p 53 --script="banner,(dns* or ssl*) and not (brute or broadcast or dos or external or fuzzer)" -oN "/root/172.16.0.24/scans/tcp_53_dns_nmap.txt" -oX "/root/172.16.0.24/scans/xml/tcp_53_dns_nmap.xml" 172.16.0.24

if [ "False" == "True" ]; then sslscan --show-certificate --no-colour 172.16.0.24:80 2>&1 | tee "/root/172.16.0.24/scans/tcp_80_sslscan.txt"; fi

nmap -vv --reason -Pn -sV -p 80 --script="banner,(http* or ssl*) and not (brute or broadcast or dos or external or http-slowloris* or fuzzer)" -oN "/root/172.16.0.24/scans/tcp_80_http_nmap.txt" -oX "/root/172.16.0.24/scans/xml/tcp_80_http_nmap.xml" 172.16.0.24

curl -sSik http://172.16.0.24:80/ -m 10 2>&1 | tee "/root/172.16.0.24/scans/tcp_80_http_index.html"

curl -sSik http://172.16.0.24:80/robots.txt -m 10 2>&1 | tee "/root/172.16.0.24/scans/tcp_80_http_robots.txt"

if hash wkhtmltoimage 2> /dev/null; then wkhtmltoimage --format png http://172.16.0.24:80/ /root/172.16.0.24/scans/tcp_80_http_screenshot.png; fi

whatweb --color=never --no-errors -a 3 -v http://172.16.0.24:80 2>&1 | tee "/root/172.16.0.24/scans/tcp_80_http_whatweb.txt"

nikto -ask=no -h http://172.16.0.24:80 2>&1 | tee "/root/172.16.0.24/scans/tcp_80_http_nikto.txt"

if [[ `gobuster -h 2>&1 | grep -F "mode (dir)"` ]]; then gobuster -u http://172.16.0.24:80/ -w /usr/share/seclists/Discovery/Web-Content/common.txt -e -k -l -s "200,204,301,302,307,401,403" -x "txt,html,php,asp,aspx,jsp" -o "/root/172.16.0.24/scans/tcp_80_http_gobuster.txt"; else gobuster dir -u http://172.16.0.24:80/ -w /usr/share/seclists/Discovery/Web-Content/common.txt -z -k -l -x "txt,html,php,asp,aspx,jsp" -o "/root/172.16.0.24/scans/tcp_80_http_gobuster.txt"; fi

if [ "False" == "True" ]; then sslscan --show-certificate --no-colour 172.16.0.24:111 2>&1 | tee "/root/172.16.0.24/scans/tcp_111_sslscan.txt"; fi

nmap -vv --reason -Pn -sV -p 111 --script="banner,(rpcinfo or nfs*) and not (brute or broadcast or dos or external or fuzzer)" -oN "/root/172.16.0.24/scans/tcp_111_nfs_nmap.txt" -oX "/root/172.16.0.24/scans/xml/tcp_111_nfs_nmap.xml" 172.16.0.24

showmount -e 172.16.0.24 2>&1 | tee "/root/172.16.0.24/scans/tcp_111_showmount.txt"

nmap -vv --reason -Pn -sV -p 111 --script="banner,msrpc-enum,rpc-grind,rpcinfo" -oN "/root/172.16.0.24/scans/tcp_111_rpc_nmap.txt" -oX "/root/172.16.0.24/scans/xml/tcp_111_rpc_nmap.xml" 172.16.0.24

if [ "False" == "True" ]; then sslscan --show-certificate --no-colour 172.16.0.24:139 2>&1 | tee "/root/172.16.0.24/scans/tcp_139_sslscan.txt"; fi

nmap -vv --reason -Pn -sV -p 139 --script="banner,(nbstat or smb* or ssl*) and not (brute or broadcast or dos or external or fuzzer)" --script-args="unsafe=1" -oN "/root/172.16.0.24/scans/tcp_139_smb_nmap.txt" -oX "/root/172.16.0.24/scans/xml/tcp_139_smb_nmap.xml" 172.16.0.24

enum4linux -a -M -l -d 172.16.0.24 2>&1 | tee "/root/172.16.0.24/scans/enum4linux.txt"

smbclient -L\\ -N -I 172.16.0.24 2>&1 | tee "/root/172.16.0.24/scans/smbclient.txt"

smbmap -H 172.16.0.24 -P 139 2>&1 | tee -a "/root/172.16.0.24/scans/smbmap-share-permissions.txt"; smbmap -u null -p "" -H 172.16.0.24 -P 139 2>&1 | tee -a "/root/172.16.0.24/scans/smbmap-share-permissions.txt"

smbmap -H 172.16.0.24 -P 139 -R 2>&1 | tee -a "/root/172.16.0.24/scans/smbmap-list-contents.txt"; smbmap -u null -p "" -H 172.16.0.24 -P 139 -R 2>&1 | tee -a "/root/172.16.0.24/scans/smbmap-list-contents.txt"

smbmap -H 172.16.0.24 -P 139 -x "ipconfig /all" 2>&1 | tee -a "/root/172.16.0.24/scans/smbmap-execute-command.txt"; smbmap -u null -p "" -H 172.16.0.24 -P 139 -x "ipconfig /all" 2>&1 | tee -a "/root/172.16.0.24/scans/smbmap-execute-command.txt"

if [ "False" == "True" ]; then sslscan --show-certificate --no-colour 172.16.0.24:445 2>&1 | tee "/root/172.16.0.24/scans/tcp_445_sslscan.txt"; fi

nmap -vv --reason -Pn -sV -p 445 --script="banner,(nbstat or smb* or ssl*) and not (brute or broadcast or dos or external or fuzzer)" --script-args="unsafe=1" -oN "/root/172.16.0.24/scans/tcp_445_smb_nmap.txt" -oX "/root/172.16.0.24/scans/xml/tcp_445_smb_nmap.xml" 172.16.0.24

smbmap -H 172.16.0.24 -P 445 2>&1 | tee -a "/root/172.16.0.24/scans/smbmap-share-permissions.txt"; smbmap -u null -p "" -H 172.16.0.24 -P 445 2>&1 | tee -a "/root/172.16.0.24/scans/smbmap-share-permissions.txt"

smbmap -H 172.16.0.24 -P 445 -R 2>&1 | tee -a "/root/172.16.0.24/scans/smbmap-list-contents.txt"; smbmap -u null -p "" -H 172.16.0.24 -P 445 -R 2>&1 | tee -a "/root/172.16.0.24/scans/smbmap-list-contents.txt"

smbmap -H 172.16.0.24 -P 445 -x "ipconfig /all" 2>&1 | tee -a "/root/172.16.0.24/scans/smbmap-execute-command.txt"; smbmap -u null -p "" -H 172.16.0.24 -P 445 -x "ipconfig /all" 2>&1 | tee -a "/root/172.16.0.24/scans/smbmap-execute-command.txt"

if [ "False" == "True" ]; then sslscan --show-certificate --no-colour 172.16.0.24:512 2>&1 | tee "/root/172.16.0.24/scans/tcp_512_sslscan.txt"; fi

if [ "False" == "True" ]; then sslscan --show-certificate --no-colour 172.16.0.24:513 2>&1 | tee "/root/172.16.0.24/scans/tcp_513_sslscan.txt"; fi

if [ "False" == "True" ]; then sslscan --show-certificate --no-colour 172.16.0.24:514 2>&1 | tee "/root/172.16.0.24/scans/tcp_514_sslscan.txt"; fi

if [ "False" == "True" ]; then sslscan --show-certificate --no-colour 172.16.0.24:1099 2>&1 | tee "/root/172.16.0.24/scans/tcp_1099_sslscan.txt"; fi

nmap -vv --reason -Pn -sV -p 1099 --script="banner,rmi-vuln-classloader,rmi-dumpregistry" -oN "/root/172.16.0.24/scans/tcp_1099_rmi_nmap.txt" -oX "/root/172.16.0.24/scans/xml/tcp_1099_rmi_nmap.xml" 172.16.0.24

if [ "False" == "True" ]; then sslscan --show-certificate --no-colour 172.16.0.24:1524 2>&1 | tee "/root/172.16.0.24/scans/tcp_1524_sslscan.txt"; fi

if [ "False" == "True" ]; then sslscan --show-certificate --no-colour 172.16.0.24:2049 2>&1 | tee "/root/172.16.0.24/scans/tcp_2049_sslscan.txt"; fi

nmap -vv --reason -Pn -sV -p 2049 --script="banner,(rpcinfo or nfs*) and not (brute or broadcast or dos or external or fuzzer)" -oN "/root/172.16.0.24/scans/tcp_2049_nfs_nmap.txt" -oX "/root/172.16.0.24/scans/xml/tcp_2049_nfs_nmap.xml" 172.16.0.24

showmount -e 172.16.0.24 2>&1 | tee "/root/172.16.0.24/scans/tcp_2049_showmount.txt"

if [ "False" == "True" ]; then sslscan --show-certificate --no-colour 172.16.0.24:2121 2>&1 | tee "/root/172.16.0.24/scans/tcp_2121_sslscan.txt"; fi

nmap -vv --reason -Pn -sV -p 2121 --script="banner,(ftp* or ssl*) and not (brute or broadcast or dos or external or fuzzer)" -oN "/root/172.16.0.24/scans/tcp_2121_ftp_nmap.txt" -oX "/root/172.16.0.24/scans/xml/tcp_2121_ftp_nmap.xml" 172.16.0.24

if [ "False" == "True" ]; then sslscan --show-certificate --no-colour 172.16.0.24:3306 2>&1 | tee "/root/172.16.0.24/scans/tcp_3306_sslscan.txt"; fi

nmap -vv --reason -Pn -sV -p 3306 --script="banner,(mysql* or ssl*) and not (brute or broadcast or dos or external or fuzzer)" -oN "/root/172.16.0.24/scans/tcp_3306_mysql_nmap.txt" -oX "/root/172.16.0.24/scans/xml/tcp_3306_mysql_nmap.xml" 172.16.0.24

if [ "False" == "True" ]; then sslscan --show-certificate --no-colour 172.16.0.24:5432 2>&1 | tee "/root/172.16.0.24/scans/tcp_5432_sslscan.txt"; fi

if [ "False" == "True" ]; then sslscan --show-certificate --no-colour 172.16.0.24:5900 2>&1 | tee "/root/172.16.0.24/scans/tcp_5900_sslscan.txt"; fi

nmap -vv --reason -Pn -sV -p 5900 --script="banner,(vnc* or realvnc* or ssl*) and not (brute or broadcast or dos or external or fuzzer)" --script-args="unsafe=1" -oN "/root/172.16.0.24/scans/tcp_5900_vnc_nmap.txt" -oX "/root/172.16.0.24/scans/xml/tcp_5900_vnc_nmap.xml" 172.16.0.24

if [ "False" == "True" ]; then sslscan --show-certificate --no-colour 172.16.0.24:6000 2>&1 | tee "/root/172.16.0.24/scans/tcp_6000_sslscan.txt"; fi

if [ "False" == "True" ]; then sslscan --show-certificate --no-colour 172.16.0.24:6667 2>&1 | tee "/root/172.16.0.24/scans/tcp_6667_sslscan.txt"; fi

if [ "False" == "True" ]; then sslscan --show-certificate --no-colour 172.16.0.24:8009 2>&1 | tee "/root/172.16.0.24/scans/tcp_8009_sslscan.txt"; fi

if [ "False" == "True" ]; then sslscan --show-certificate --no-colour 172.16.0.24:8180 2>&1 | tee "/root/172.16.0.24/scans/tcp_8180_sslscan.txt"; fi

nmap -vv --reason -Pn -sV -p 8180 --script="banner,(http* or ssl*) and not (brute or broadcast or dos or external or http-slowloris* or fuzzer)" -oN "/root/172.16.0.24/scans/tcp_8180_http_nmap.txt" -oX "/root/172.16.0.24/scans/xml/tcp_8180_http_nmap.xml" 172.16.0.24

curl -sSik http://172.16.0.24:8180/ -m 10 2>&1 | tee "/root/172.16.0.24/scans/tcp_8180_http_index.html"

curl -sSik http://172.16.0.24:8180/robots.txt -m 10 2>&1 | tee "/root/172.16.0.24/scans/tcp_8180_http_robots.txt"

if hash wkhtmltoimage 2> /dev/null; then wkhtmltoimage --format png http://172.16.0.24:8180/ /root/172.16.0.24/scans/tcp_8180_http_screenshot.png; fi

whatweb --color=never --no-errors -a 3 -v http://172.16.0.24:8180 2>&1 | tee "/root/172.16.0.24/scans/tcp_8180_http_whatweb.txt"

nikto -ask=no -h http://172.16.0.24:8180 2>&1 | tee "/root/172.16.0.24/scans/tcp_8180_http_nikto.txt"

if [[ `gobuster -h 2>&1 | grep -F "mode (dir)"` ]]; then gobuster -u http://172.16.0.24:8180/ -w /usr/share/seclists/Discovery/Web-Content/common.txt -e -k -l -s "200,204,301,302,307,401,403" -x "txt,html,php,asp,aspx,jsp" -o "/root/172.16.0.24/scans/tcp_8180_http_gobuster.txt"; else gobuster dir -u http://172.16.0.24:8180/ -w /usr/share/seclists/Discovery/Web-Content/common.txt -z -k -l -x "txt,html,php,asp,aspx,jsp" -o "/root/172.16.0.24/scans/tcp_8180_http_gobuster.txt"; fi

if [ "False" == "True" ]; then sslscan --show-certificate --no-colour 172.16.0.24:3632 2>&1 | tee "/root/172.16.0.24/scans/tcp_3632_sslscan.txt"; fi

nmap -vv --reason -Pn -sV -p 3632 --script="banner,distcc-cve2004-2687" --script-args="distcc-cve2004-2687.cmd=id" -oN "/root/172.16.0.24/scans/tcp_3632_distcc_nmap.txt" -oX "/root/172.16.0.24/scans/xml/tcp_3632_distcc_nmap.xml" 172.16.0.24

if [ "False" == "True" ]; then sslscan --show-certificate --no-colour 172.16.0.24:6697 2>&1 | tee "/root/172.16.0.24/scans/tcp_6697_sslscan.txt"; fi

if [ "False" == "True" ]; then sslscan --show-certificate --no-colour 172.16.0.24:8787 2>&1 | tee "/root/172.16.0.24/scans/tcp_8787_sslscan.txt"; fi

if [ "False" == "True" ]; then sslscan --show-certificate --no-colour 172.16.0.24:35883 2>&1 | tee "/root/172.16.0.24/scans/tcp_35883_sslscan.txt"; fi

nmap -vv --reason -Pn -sV -p 35883 --script="banner,rmi-vuln-classloader,rmi-dumpregistry" -oN "/root/172.16.0.24/scans/tcp_35883_rmi_nmap.txt" -oX "/root/172.16.0.24/scans/xml/tcp_35883_rmi_nmap.xml" 172.16.0.24

if [ "False" == "True" ]; then sslscan --show-certificate --no-colour 172.16.0.24:41328 2>&1 | tee "/root/172.16.0.24/scans/tcp_41328_sslscan.txt"; fi

if [ "False" == "True" ]; then sslscan --show-certificate --no-colour 172.16.0.24:45081 2>&1 | tee "/root/172.16.0.24/scans/tcp_45081_sslscan.txt"; fi

if [ "False" == "True" ]; then sslscan --show-certificate --no-colour 172.16.0.24:53712 2>&1 | tee "/root/172.16.0.24/scans/tcp_53712_sslscan.txt"; fi

if [ "False" == "True" ]; then sslscan --show-certificate --no-colour 172.16.0.24:53 2>&1 | tee "/root/172.16.0.24/scans/udp_53_sslscan.txt"; fi

nmap -vv --reason -Pn -sU -sV -p 53 --script="banner,(dns* or ssl*) and not (brute or broadcast or dos or external or fuzzer)" -oN "/root/172.16.0.24/scans/udp_53_dns_nmap.txt" -oX "/root/172.16.0.24/scans/xml/udp_53_dns_nmap.xml" 172.16.0.24

if [ "False" == "True" ]; then sslscan --show-certificate --no-colour 172.16.0.24:137 2>&1 | tee "/root/172.16.0.24/scans/udp_137_sslscan.txt"; fi

nmap -vv --reason -Pn -sU -sV -p 137 --script="banner,(nbstat or smb* or ssl*) and not (brute or broadcast or dos or external or fuzzer)" --script-args="unsafe=1" -oN "/root/172.16.0.24/scans/udp_137_smb_nmap.txt" -oX "/root/172.16.0.24/scans/xml/udp_137_smb_nmap.xml" 172.16.0.24

nbtscan -rvh 172.16.0.24 2>&1 | tee "/root/172.16.0.24/scans/nbtscan.txt"

smbmap -H 172.16.0.24 -P 137 2>&1 | tee -a "/root/172.16.0.24/scans/smbmap-share-permissions.txt"; smbmap -u null -p "" -H 172.16.0.24 -P 137 2>&1 | tee -a "/root/172.16.0.24/scans/smbmap-share-permissions.txt"

smbmap -H 172.16.0.24 -P 137 -R 2>&1 | tee -a "/root/172.16.0.24/scans/smbmap-list-contents.txt"; smbmap -u null -p "" -H 172.16.0.24 -P 137 -R 2>&1 | tee -a "/root/172.16.0.24/scans/smbmap-list-contents.txt"

smbmap -H 172.16.0.24 -P 137 -x "ipconfig /all" 2>&1 | tee -a "/root/172.16.0.24/scans/smbmap-execute-command.txt"; smbmap -u null -p "" -H 172.16.0.24 -P 137 -x "ipconfig /all" 2>&1 | tee -a "/root/172.16.0.24/scans/smbmap-execute-command.txt"

Выводы

Инструмент крайне удобен, поскольку берёт на себя автоматизацию процессов сканирования портов и анализа сервисов. Он может пригодиться как начинающим, так и более опытным специалистам.

Единственную вещь я бы хотел посоветовать начинающим пользователям: не полагайтесь полностью на автоматизацию процесса. Этот инструмент и правда может решить за вас большую часть работы, но вы тогда ничему не научитесь. Экспериментируйте на тестовых машинах, изучайте списки команд, которые вы найдете в _commands.log. Попытайтесь понять, почему запускается тот или иной инструмент. Только тогда будет накапливаться опыт, и вы будете учиться чему-то новому.

Ссылка на источник: Tib3rius/AutoRecon

Всем спасибо за внимание.
 
Последнее редактирование модератором:

Devflex

New member
14.08.2020
1
0
BIT
0
Не понял, в чем по отношению к nmap это удобней тулза? Сканировать порты умеет море утилит, nmap бог в этом вообще.
 

BearSec

Platinum
20.04.2020
210
290
BIT
28
Не понял, в чем по отношению к nmap это удобней тулза? Сканировать порты умеет море утилит, nmap бог в этом вообще.
Тулза удобнее тем, что автоматизирует процесс сканироаания и enumeration сервисов.
Нет необходимости сначала запустить nmap, который найдёт, к примеру, открытые 80 и 139 порты. После чего нужно будет руками запускать сканеры nikto и gobuster, а на 139 smb сканеры.
Приложение это сделает автоматически, пока ты можешь заниматься исследованием других вещей
 
  • Нравится
Реакции: Montana_Toni
Мы в соцсетях:

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