Основные понятия:
**Разведка в сети** – это процесс сбора информации об объекте или цели в интернете. Это может быть любая информация, которая может помочь в осуществлении дальнейших действий по отношению к объекту, например, определение уязвимостей или сбор данных для атаки.
**Инфраструктура компании** — это совокупность аппаратных, программных и сетевых средств, используемых для поддержания бизнес-процессов и обеспечения безопасности информации, находящейся в распоряжении компании. Она включает в себя серверы, сетевые устройства, базы данных, приложения и другие компоненты, используемые для обработки, хранения и передачи данных. Эффективная инфраструктура компании должна быть разработана с учетом требований к безопасности и включать в себя меры защиты, которые обеспечат целостность, конфиденциальность и доступность информации в пределах организации.
**Сетевой сканер** — это программа, предназначенная для сканирования компьютерных сетей и обнаружения устройств, портов и служб, работающих на этих устройствах. Они используются для проверки безопасности сетей, выявления уязвимостей и проверки соответствия настроек безопасности определенным стандартам.
**Доменное имя** – это уникальное текстовое имя, которое используется для идентификации адреса ресурса в Интернете.
**DNS (Domain Name System) сервис** – это сервис, который преобразует доменные имена, которые мы используем для поиска ресурсов в Интернете, в соответствующие IP-адреса, по которым эти ресурсы находятся на серверах в сети Интернет.
**SSL (Secure Sockets Layer) сертификат** – это цифровой сертификат, который подтверждает подлинность веб-сайта и обеспечивает защищенное соединение между веб-браузером и сервером, на котором расположен веб-сайт. Сертификаты выпускаются специальными доверенными для широкой массы компьютеров удостоверяющими центрами по всему миру, представляют из себя файлы определенного формата, которые располагаются на серверах, для предоставления их пользователям и проверки легитимности сервисов.
**Сетевой порт** – это номер, который идентифицирует определенный сетевой протокол и процесс, который использует этот протокол для передачи данных в компьютерных сетях. Когда компьютер или устройство отправляет или получает данные через сеть, оно использует определенный порт для связи с другим устройством или сервером, используя определенный сетевой протокол. Номер порта представляет собой целое число от 0 до 65535.
**Хост / узел** – это устройство или программа, которая может быть связана с другими устройствами или программами в компьютерной сети. Узлы сети могут выполнять различные функции, такие, как передача данных, маршрутизация, хранение информации, обработка запросов и т.д. Каждый узел сети имеет свой уникальный адрес, который позволяет другим узлам обращаться к нему и передавать данные. Примерами узлов сети могут быть компьютеры, маршрутизаторы, сетевые принтеры, серверы, мобильные устройства и т.д.
Сбор информации автоматизированным средствами
Ход действий
1. Начинаем с проверки существования доменного имени cyber-ed.ru командой: host cyber-ed.ru
Утилита host есть в большинстве популярных ОС. Вызов команды host cyber-ed.ru в Linux позволяет получить информацию о доменном имени "cyber-ed.ru". Конкретно, эта команда выполняет DNS-запрос для определения IP-адреса, связанного с этим доменным именем, и выводит результаты в терминал.
В ответ на команду "host cyber-ed.ru" будет выведено одно или несколько строк, содержащих информацию об IP-адресе, ассоциированном с доменным именем "cyber-ed.ru", а также что на этом доменном имени настроена почтовая служба. Убедившись в существовании данного доменного имени, мы можем прейти к поиску информации о прочих доменных именах, связанных с ним.

2. Перейдем на сайт https://dnsdumpster.com/ для быстрого изучения известной информации о домене и связанных с ним ресурсов.

3. Далее переходим на сайт https://crt.sh/. Сервис crt.sh — это база данных открытых SSL/TLS-сертификатов, которые были выданы для доменных имен. Сервис позволяет просматривать информацию о сертификатах и узнавать, какие доменные имена были зарегистрированы на конкретное лицо или организацию.

4. После использования методов пассивного сбора информации (о том, что такое "пассивный" и "активный" сбор информации, мы поговорим в следующих шагах) перейдем к методом активного сбора информации, а именно, воспользуемся утилитой Amass.
Утилита Amass — это инструмент для сбора информации об инфраструктуре, который используется в тестировании на проникновение, исследовании цифровых активов и других областях информационной безопасности. Amass может помочь исследователям обнаруживать активные домены, поддомены, IP-адреса, а также другую связанную с инфраструктурой информацию. Amass использует множество источников данных, включая базы данных WHOIS, поиск по DNS, поиск веб-страниц, сборщики данных, базы данных сертификатов и другие. Он также может использовать дополнительные источники данных, предоставляемые пользователем.
В результате использования всех этих инструментов мы смогли обнаружить список ресурсов, связанных с основным доменным именем, и расширили набор данных о цели, которые нужны будут в дальнейших шаг по оценке защищенности организации.
Общие методы и конкретные способы сбора информации
Общие методы сбора информации разделяются на две категории: активные и пассивные.
Активные методы сбора информации в OSINT – это методы, которые требуют непосредственного взаимодействия с источником информации, например, с использованием запросов, сканирования портов и опроса сервисов.
Иначе говоря, непосредственный владелец ИТ-инфраструктуры сможет определить применение по отношению к нему активных методов сбора информации, т.к. его системы получат запросы от действующего лица и его программ. При активном методе ваши сетевые запросы приходят прямо от ваших систем на системы владельца, и он может их увидеть.
Примеры активных методов сбора информации включают:
Сканирование портов – это способ, который позволяет определить, какие порты на серверах компании открыты для доступа извне. Сканирование портов может помочь определить, какие службы доступны на серверах и какая операционная система установлена на серверах.
Энумерация и предугадывание доменных имен – это способы определения доменных имён, которые используются компанией или организацией. Этот процесс может включать в себя использование различных методов, таких, как перебор имен поддоменов, используемых в названии компании, и различных вариантов доменных зон (например, .com, .org, .net).
Посещение и анализ сайтов – это способы углубленного анализа сайтов на предмет их функций, используемых ими технологий, поиске отладочной и технической информации о внутренней сети или устройстве ПО организации.
Пассивные методы сбора информации в OSINT – это методы, которые не требуют непосредственного взаимодействия с источником информации, а основываются на анализе открытых источников информации.
Примеры пассивных методов сбора информации включают:
Интернет-мониторинг – это процесс отслеживания и анализа информации, публикуемой в онлайн-ресурсах, включая репозитории, блоги, форумы и другие интернет-сайты.
Анализ открытых баз данных – это процесс сбора информации из открытых баз данных, таких, как государственные реестры, базы данных компаний, справочники и т.д.
Анализ открытых источников информации – это процесс сбора и анализа информации, полученной из различных открытых источников, таких, как сайты-агрегаторы утечек данных, сайты, собирающие информацию о изменении DNS имен и историю DNS, сайты, исследующие интернет и опубликованные в нем сервисы.
Отсев нерелевантных данных
После применения различных методов и способов сбора информации всю полученную информацию необходимо валидировать. В общем случае белые хакеры предоставляют собранную информацию организации заказчику и выверяют с ней данные, которые действительно останутся в списке всей полученной информации, чтобы не затронуть информационные системы, которые не предполагаются для дальнейшего исследования и тестирования.
Данные, которые мы собираем на этапе сбора информации об инфраструктуре
Наши цели по исполнению этапа сбора информации:
1. Обнаружение доменных имен, принадлежащих организации
1. Обнаружение “живых” хостов в сети и составления списка их IP-адресов
1. Определение актуального статуса сетевых портов узлов из списка
1. Определение типа и версии операционной системы на исследованных машинах
1. Определение версий ПО или служб, которые находятся на сетевых портах
1. Сбор информации об используемых технологиях на веб-сайте
Агрегация для OSINT:
https://osintframework.com/
https://github.com/jivoi/awesome-osint
https://habr.com/ru/companies/tensor/articles/706656/
Доменные имена
Большинство организаций управляют своей ИТ-инфраструктурой, как публичной, так и внутренней, именуя ее логически и на основе мнемонических имен. Каждый узел сети охарактеризован адресом, по которому к узлу можно обратиться. Для того, чтобы удобно, по памяти, даже при смене адреса, обращаться к определенному узлу сети, таким узлам дают доменные имена.
Из-за такой распространенной практики злоумышленники могут обнаружить все связанные с организацией ИТ-активы и впоследствии атаковать их. В свою очередь, белые хакеры могут имитировать эту деятельность: для того, чтобы показать организации, как много о ней могут узнать злоумышленники.
С высокой вероятностью все имена узлов, принадлежащих компании ООО "Компания" с сайтом company.corp, будут располагаться в доменах 3-го уровня домена company.corp.
Домен 3-го уровня – это часть доменного имени, расположенная перед доменным именем второго уровня. Например, часть "blog" в "blog.example.com" является доменом 3-го уровня, а "example.com" является доменом 2-го уровня. Они могут использоваться для разных целей, но выбор доменного имени зависит от намерений и потребностей владельца.
Например:
web.company.corp
mail.company.corp
support.company.corp
portal.company.corp
moscow.company.corp
Таким образом, зная доменное имя 2-го уровня, мы можем попытаться найти массу имен 3-го уровня, которые будут ссылать нас на неизвестные нам ранее узлы инфраструктуры организации.
Whois – это протокол поиска информации о зарегистрированных доменных именах, IP-адресах и автономных системах. Утилита whois является встроенной утилитой терминальной оболочки многих дистрибутивов операционных систем, таких как MacOS и Ubuntu Linux.
СПАРК (https://spark-interfax.ru/) – это система, собирающая всю доступную информацию о компаниях и извлекая из нее знания, помогает получать подробную информацию о бизнесе организаций и о привязанных к нему информационных активах, сайтах и доменных именах.
RIPE (Réseaux IP Européens) – это некоммерческая организация, которая занимается управлением и распределением ресурсов IP-адресации и автономных систем в регионе Европы, Ближнего Востока и некоторых частях Африки и Азии. На ее сайте https://apps.db.ripe.net/db-web-ui/fulltextsearch можно изучить информацию о связи доменных имен, автоматизированных систем и пр. зарегистрированную о ряде компаний.
1. Опрашивание DNS сервиса на известные ему записи раскрывающие доменные имена, связанные с доменом 2-го уровня. Т.е. выполнение запросов к таким DNS записям, как: CNAME, ANY, MX, NS, SRV и т.д.
Пример выполнения запроса: nslookup -q=ANY example.com

2. Перебор доменных имен на DNS сервисе компании при помощи использования словарей или правил мутации. В данном случае мы заранее подготавливаем большой список слов и возможных поддоменов и опрашиваем DNS сервис в формате слово.example.com, чтобы выявить все имена, которые существуют в инфраструктуре организации.
Пример использования утилиты amass со стандартным словарем для перебора доменных имен: amass enum -v -src -ip -d example.com

3. Выполнение запроса AXFR. AXFR запрос, или Zone transfer — это процесс передачи копии базы данных с DNS-зоной от главного сервера к вторичному. В идеале трансфер зоны ограничен только для определенных доверенных серверов, но неправильно сконфигурированные серверы разрешают трансферы любому, кто их попросит.
Пример выполнения такого запроса: nslookup -q=AXFR example.com (зачастую требует указания конкретного DNS-сервера, к которому будет отправлен запрос).
Другие примеры инструментов активного поиска:
**amass — многофункциональный инструмент для разведки
Sublist3r — OSINT инструмент поиска поддоменов
assetfinder — пассивный сканер поддоменов на Go**
Методы пассивного поиска доменных имен и поддоменов
Методы пассивного поиска сводятся к использованию каких либо служб и сайтов, которые произвели активный поиск за нас или агрегировали известную информацию среди открытых источников. Есть множество веб-сайтов и служб, которые предлагают такие услуги в разной форме.
Примеры:
dnsdumpster.com
shodan.io
censys.io
crt.sh
pentest-tools.com
Сканеры сети
Сетевой сканер — это программа, предназначенная для сканирования компьютерных сетей и обнаружения устройств, портов и служб, работающих на этих устройствах. Они используются для проверки безопасности сетей, выявления уязвимостей и проверки соответствия настроек безопасности определенным стандартам.
Популярные примеры сканеров:
Nmap — один из самых популярных сканеров сети
Zenmap — GUI для nmap
Masscan — сканер сети, разработанный с целью увеличения скорости сканирования крупных сегментов сети, в т.ч. всего пространства адресов IPv4
https://nmap.org/presentations/BHDC10/Fyodor-David-BlackHatUSA-2010-Slides.pdf
https://nmap.org/book/
https://github.com/chacka0101/Hacking_Books/raw/master/2017%20-%20NMAP%20-%20Network%20Exploration%20and%20Security%20Auditing%20Cookbook%20-%20Second%20Edition.pdf