Сканируем сеть. Собираем информацию об организациях
Введение
Снова рад приветствовать всех подписчиков и читателей! Сегодня хочу представить вашему вниманию несколько инструментов OSINT подходящих для сканирования сети и сбора информации об организациях. В этой статье подробно разберём установку, настройку и использование каждого инструмента, так же разберём случаи для чего эти инструменты нам могут пригодиться.
Дисклеймер: Все данные, предоставленные в данной статье, взяты из открытых источников, не призывают к действию и являются только лишь данными для ознакомления, и изучения механизмов используемых технологий.
Setezor
Что это?
Сетевой анализатор трафика с возможностью автоматического построения топологии сети. Инструмент сочетает в себе сразу два популярных сетевых сканера это Nmap и Masscan, а так же инструмент создания и работы с сетевыми пакетами Scapy. Имеет вполне себе интуитивно понятный и удобный интерфейс, так же обладает возможностью создавать отчёты о сканировании.
Установка и использование
В первую очередь нам нужно будет клонировать сам репозиторий:
git clone https://github.com/lmsecure/Setezor.git
cd Setezor/src
Далее устанавливаем необходимое ПО:
sudo apt install nmap python3.11
Далее воспользуемся виртуальной оболочкой чтобы установка произвелась как можно успешней:
sudo apt install -y python3-venv
python3 -m venv venv
source venv/bin/activate
Выдаём права на работу с сокетами для nmap и python3.11:
sudo setcap cap_net_raw=eip »$(readlink -f which venv/bin/python3.11
)»
sudo setcap cap_net_raw, cap_net_admin, cap_net_bind_service+eip which nmap
После успешной установки и выдачи прав запускаем наш сканер:
python setezor.py
Далее нам должно вылезти сообщение о том, что интерфейс был запущен и ссылку на веб-интерфейс.
После этого мы можем наконец, можем приступить к работе с нашим инструментом, для этого просто открываем наш браузер и вводим адрес который в терминале.
Вот и начало работы в нашем инструменте, сканирования здесь делятся на проекты, и тем самым мы можем проводить несколько сканирований одновременно при помощи создания нескольких проектов. Так же можно и импортировать проекты, на начальной странице интерфейса это весьма просто и наглядно показано. В пункте Tools мы сможем выбрать доступные нам инструменты.
Давайте создадим проект и просканируем локальную сеть.
Активное сканирование с использованием Nmap, здесь интегрированы практически все дополнительные параметры для сканирования. Ну, а если для сканирования вам нужны особые параметры которых нету в этом меню, вы можете перейти с вкладки «Simple» на вкладку «Extended». Ну, а для пользователей незнакомых с синтаксисом Nmap расшифрую все опции:
-sS
(Stealth Scan) — способ сканирования портов, при котором трёхуровневое рукопожатие TCP соединения принудительно обрывается.--traceroute
— сканирование с трассировкой хостов. Очень полезно, когда необходимо узнать, через какие промежуточные сетевые устройства строится соединение до цели.-PE/PP/PM
: Пингование с использованием ICMP-эхо запросов, запросов временной метки и сетевой маски.-sS/sT/sA/sW/sM
: TCP SYN/с использованием системного вызова Connect ()/ACK/Window/Maimon сканирования.-PS/PA/PU
: TCP SYN/ACK или UDP пингование заданных хостов
Так же мы можем и редактировать иконки устройств в нашем графе для наглядности и разумеется при нажатии на каждое устройство будет отображаться вся информация которую смогли добыть наши сканеры.
Пассивное сканирование при помощи Scapy, создаётся асинхронный сниффер и налету «потрошит пакеты» получая информацию из таких типов пакетов как: ARP, LLNMR, NBNS и TCP. Так же после сниффинга пакетов для загрузки данных в проекты имеется парсинг pcap-файлов.
При сниффинге у нас вышел такой результат, довольно красиво, но не всем в первый раз может быть понятно что это ещё за дополнительные адреса, но если проверить их все через любой сервис по проверке IP-адреса, то всё встанет на свои места. Так как это адреса ресурсов на которых сидит пользователь.
Здесь так же доступно активное сканирование с использованием Masscan, и в том числе парсинг xml/list/json-логов.
Ещё одной классной фишкой является удобная система оповещений, которая моментально сообщает о запущенных, остановленных и оконченных процессах.
Теперь предлагаю ознакомиться с пунктом Information в котором у нас представлены 4 таблицы данных нашего сканирования.
В таблице OBJECT у нас представлена информация об устройствах которые имеются в нашей сети.
В таблице L3LINK имеется информация обо всех «родительских» и «дочерних» IP-адресах.
В таблице PIVOT представлены все открытые порты IP-адресов в этой сети.
Ну и наконец в таблице TASK у нас представлены все процессы сканирования, как активные так и завершённые.
В целом очень рекомендую инструмент к использованию. Так как благодаря централизации, широкому спектру функционала и наглядности процесса сбора информации, инструмент может очень хорошо помочь в вопросе разведки сети.
SpiderFoot
Что это?
Инструмент с открытым исходным кодом для автоматизированного сбора информации о заданной цели.
Для чего пригодиться?
Инструмент наиболее эффективен в использовании не на физические лица, а на юридические (компании). По большей части инструмент идеален для сбора «базы» о компании, и уже далее основываясь на этих данных выявлять точечные цели (номера телефонов, почтовые адреса, никнеймы), и проводить разведку уже по ним.
Установка и использование
Здесь всё как обычно, клонируем репозиторий, устанавливаем модули и запускаем веб-интерфейс:
git clone https://github.com/smicallef/spiderfoot.git
cd spiderfoot
pip3 install -r requirements.txt
python3 ./sf.py -l 127.0.0.1:5001
После установки и запуска, у вас должно было отобразиться такое сообщение в терминале, с успешным запуском инструмента и адресом на веб-интерфейс.
Переходим в наш инструмент и видим в главном меню задачи по сканированию которые запущены/приостановлены/завершены. Но поскольку мы ещё ничего не искали, у нас тут просто пусто, поэтому нужно перейти в пункт нового сканирования.
Здесь нас встречает довольно обширное и подробное меню для поиска со своими параметрами, режимами и представленными примерами поисковых запросов. Здесь у нас представлено 4 режима сканирования, давайте разберём особенности каждого:
All
Все модули SpiderFoot будут включены, будет получена и проанализирована вся возможная информация о цели. Работать будет очень долго — возможно целые сутки.
Footprint
Получение только той информации о ресурсе, которая имеется в открытом доступе в сети интернет.
Investigate
На случай если вы подозреваете что цель является вредоносным сайтом. Некоторые базовые проверки будут выполнены в дополнение к запросам из черных списков и других источников, которые могут содержать информацию о вредоносности вашей цели.
Passive
Когда вы не хотите, чтобы цель даже подозревала, что вы ищите информацию о ней.
Кроме этих четырех предустановленных режимов, можно создавать собственные комбинации настроек на вкладках By Required Data — определяет какие данные нужно искать, и вкладке By Module — определяет какие модули нужно задействовать при поиске.
Предлагаю в качестве тестовой цели просканировать одну небезызвестную социальную сеть и посмотреть какую информацию нам сможет о ней предоставить этот инструмент.
Как видим в нашей таблице отобразилась новая цель и её статус, давайте же перейдём и подробно посмотрим какую информацию уже удалось найти.
В разделе Summary мы можем наглядно следить за тем, сколько и какую информацию достал инструмент, что является очень удобным решением.
В разделе Browse мы уже можем конкретно посмотреть ту информацию которая была собрана, здесь у нас пишется тип, количество и дата.
Вот довольно наглядный пример со сбором почты.
В разделе Graph мы сможем так же наблюдать графическое отображение всей собранной информации, но просто в другом виде.
Если приблизить точки, то будет видна информация которая в них хранится, но как мне это не совсем удобный вариант просмотра собранной информации, красиво конечно, но куда удобнее это всё просматривать в разделе Summary.
В разделе Logs у нас хранится история выполненных операций при проведении поиска.
Так же у этого инструмента очень большой список настроек. К примеру можно включить API других ресурсов для поиска: Censys, Shodan, Social Links и другие. Засчёт чего поиск можно проводить намного эффективнее.
В целом SpiderFoot предоставляет большие возможности для автоматизированного поиска и этот инструмент очень хорошо вписывается в арсенал любого разведчика.
Uscrapper
Что это?
Инструмент командной строки, который создан чтобы искать и извлекать личные данные с веб-сайтов. Производит обход страницы и собирает почту, ссылки на социальные сети, имена людей, номера телефонов и юзернеймы при помощи регулярных выражений. В наличие несколько модулей для обхода защиты от парсинга. Так же по завершению работы генерирует отчёт со всей информацией которую нашёл.
Для чего может пригодиться?
Этот довольно легковесный инструмент может быть в качестве лайтовой замены того же SpiderFoot который мы разобрали вверху. Но как по моему взгляду он может послужить составным элементом для построения собственного автоматизированного поиска.
Установка и использование
git clone https://github.com/z0m31en7/Uscrapper.git
cd Uscrapper
chmod +x install/install.sh && bash install/install.sh
python Uscrapper-vanta.py -h
Давайте же разберём параметры которые мы можем использовать в работе с этим инструментом.
-h, --help — показать справку и выйти.
-u URL, --url URL — указать URL веб-сайта, из которого извлекать данные.
-c INT, --crawl INT — указать количество ссылок для парсинга.
-t INT, --threads INT — указать количество потоков для использования при парсинге и скрапинге.
-O, --generate-report — сгенерировать файл отчета, содержащий извлеченные данные.
-ns, --nonstrict отображать неполные имена пользователей во время извлечения.
Ну что же предлагаю попробовать в деле наш инструмент для сбора информации и просканируем что-нибудь лёгкое на нескольких примерах для наглядности.
python Uscrapper-vanta.py -u google.com -c40 -t20
Как можем наблюдать, инструмент отлично выполнил свою задачу и вывел странички в социальных сетях, а так же номера телефонов.
Повторим сканирование теперь к примеру для сайта профессиональной киберспортивной организации Fnatic.
Как можем наблюдать, инструмент так же отлично справился со своей задачей, нашёл страницы в социальных сетях и почту.
Вывод
Сегодня я представил вашему вниманию три достойных инструмента сетевой разведки, разумеется эти инструменты подходят больше для каких-либо глобальных, а не точечных целей. У этих инструментов довольно высокий потенциал в использовании и в этом плане в основном всё зависит лишь от того, как и кто их будет использовать.
Наш канал по информационной безопастности в телеграме, подпишись!