Построение карты сети

Моя цель - предложение широкого ассортимента товаров и услуг на постоянно высоком качестве обслуживания по самым выгодным ценам.

Прежде чем перейти к статье, хочу вам представить, экономическую онлайн игру Brave Knights, в которой вы можете играть и зарабатывать. Регистируйтесь, играйте и зарабатывайте!

Построение карты сети — это длительный процесс. Исследование происходит за счет отслеживания откликов операционных систем на испорченные данные в заголовках сетевых протоколов. Этот подход обычно дает ~ 80% точности. И довольно сложно найти информацию о том, как точно каждая ОС отзывается на подобные воздействия. А что, если будет технология или функция операционной системы, которая на 100% точно будет говорить о состоянии сетевой подсистемы и сообщать дополнительную информацию? Статья расскажет о таких функциях ОС Windows.

«Старые как мир» технологии

Чтобы получить полную картину того, как ОС Windows представляет свои функции в сети, нужно вспомнить о таких механизмах, как DCOM и RPC.

Remote Procedure Call — механизм межпроцессного взаимодействия (IPC). Механизм позволяет обмениваться информацией и вызывать функции в разных процессах в рамках ОС, локальной сети или через Интернет.

Distributed Component Object Model — спецификация COM объектов, которая регламентирует правила взаимодействия в сети между объектами. В документации можно встретить формулировку — DCOM Remote Protocol.

Два механизма соотносятся по следующей схеме:

Схема взята отсюда

Как это работает? Общая схема работы протокола представлена ниже.

Схема взята отсюда

Основная идея — организация взаимодействия осуществляется по клиент-серверной модели. Клиент может запросить по идентификатору запуск процедуры через RPC на сервере. При этом сервер должен самостоятельно произвести поиск нужного обработчика для идентификатора и, если он найден, передать ему информацию в соответствии с моделью безопасности. Затем информация о доступности и, по возможности, результат возвращается клиенту.

Кстати, о модели безопасности, на схеме красными прямоугольниками выделены те интерфейсы, которые в некоторых случаях можно использовать без прохождения процедуры авторизации.

Что интересного для карты сети

DCOM для Offensive уже изучался на BlackHat 2004. В выступлении было очень много информации, которая может быть использована для версий Windows вплоть до Windows Server 2003. Вот список некоторых действий, которые можно выполнять:

  • Сбор информации о конфигурации ОС (не требует авторизации);

  • Перебор паролей для учетных данных пользователей;

  • Отправка запроса на создание задач ScheduledTask, а так же удаление, просмотр;

  • Просмотр состояния сервисов (авторизация требуется).

Выступление рассказывало уже о конкретных идентификаторах, которые можно использовать для воздействий на ОС. Попробуем выяснить, всё ли так же работает спустя 17 лет, заодно и узнаем как получить конфигурацию сетевой подсистемы ОС.

Практика

Для эксперимента будем использовать 3 виртуальные машины:

  • Windows 10

  • Windows 7

  • Windows 8

Каждая виртуальная машина будет подключена как минимум к двум сетям, которые будут включать в себя разные сегменты. Тестовой виртуальной машиной станет Kali Linux. Попробуем собрать скрипты и приложения для сбора информации о системе посредством RPC. Список инструментов представлен ниже:

  • nmap script rpcinfo.nse - собирает порты rpc и пишет, по возможности имя сервиса, который их использует;

  • impacket rpcdump.py - получает информацию из rcp сервисов;

  • impacket rpcmap.py - собирает endpoint порты, которые ожидают коннекта;

  • Metasploit module auxiliary/scanner/dcerpc/endpoint_mapper - поиск endpoint;

  • Metasploit module auxiliary/scanner/dcerpc/hidden - поиск скрытого сервиса;

  • Metasploit module auxiliary/scanner/dcerpc/management - получение данный из RMI DCERPC;

  • Metasploit module auxiliary/scanner/dcerpc/tcp_dcerpc_auditor - поиск названий сервисов, которые используют DCERPC;

  • IOXIDResolver.py - скрипт для получения данных о конфигурации сетевой подсистемы;

Попробуем работоспособность инструментов на виртуальных машинах:

Windows 7

Результаты nmap:

Результаты Metasploit:

На картинке представлена часть endpoint сервисов.
На картинке представлена часть endpoint сервисов.

Hidden services

Management

TCP Auditpr

Результаты IOXIDResolver:

Windows 8

Результаты nmap:

Результаты Metasploit:

endpoint_mapper

На картинке представлена часть endpoint сервисов.
На картинке представлена часть endpoint сервисов.

Hidden services

Management

TCP auditor

Результаты IOXIDResolver:

Windows 10

Результаты nmap:

Результаты Metasploit:

На картинке представлена часть endpoint сервисов.
На картинке представлена часть endpoint сервисов.

Hidden services

Management

TCP auditor

Результаты IOXIDResolver:

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


Статья подготовлена Александром Колесниковым, преподавателем курса «Пентест. Практика тестирования на проникновение». Если интересно узнать о курсе больше, приходите на день открытых дверей онлайн, где Александр расскажет о формате и программе обучения.

Источник: https://habr.com/ru/company/otus/blog/560452/


Интересные статьи

Интересные статьи

О последней и других каплях в чаше решения о прекращении использования Яндекс.Карты API. Что случилось? С 1 ноября Яндекс.Карты уменьшили лимиты на бесплатное использование HTTP API Г...
Перевод статьи подготовлен в преддверии старта курса «Deep Learning. Basic». В этой статье мы поговорим о последних инновационных решениях на основе TCN. Для начала на примере д...
Это подборка текстовых материалов и тематических подкастов с участием представителей Университета ИТМО — студентов, аспирантов, научных сотрудников и преподавателей. Мы делимся личным...
Идея Познакомившись с теорией эволюции, не перестаю восхищаться, как такие просты идеи позволяют описывать процессы возникновения невероятно сложных биологических систем. При изуч...
В прошлой статье мы разбирали, как анонимизировать весь Интернет-трафик одного хоста. Теперь давайте повысим уровень безопасности, обернув всю локальную сеть VPN-ом. При этом мы избавимся от оп...