Организации, не имеющие действующей карты сети, иногда используют электрические схемы или схемы, составленные их ИТ-отделом. На таких упрощенных рисунках отражено относительное расположение систем, сетевого оборудования и подключения устройств, и они могут служить справочными материалами для устранения технических или эксплуатационных проблем в сети. Но у множества организаций нет даже таких приблизительных схем, зато есть электронные таблицы, в которых перечислены имена хостов, их модели и серийные номера, IP-адреса, а также расположение всего оборудования на стойке в центре обработки данных. При этом если заинтересованные стороны могут использовать такую таблицу для поиска нужных ответов и серьезных сетевых проблем или сбоев не возникает, то даже само наличие такой документации может препятствовать созданию карты сети. Это ужасно, но у некоторых компаний есть архитектор или специалист, который держит карту сети в голове, и ни в каком другом виде ее не существует.
Справедливости ради стоит сказать, что бывают и разумные причины отсутствия полезных сетевых карт. Создание, совместное использование и обслуживание карт отнимает драгоценное время и другие ресурсы. Карты могут часто меняться. Добавление систем в сеть или их удаление, изменение IP-адресов, переделка кабелей или задание новых правил маршрутизатора или брандмауэра — все это может значительно повлиять на точность карты, даже если изменение произошло всего несколько минут назад. Кроме того, современные компьютеры и сетевые устройства используют протоколы динамической маршрутизации и конфигурации хоста, которые автоматически отправляют информацию в другие системы и сети, не нуждаясь в картах вообще, что означает: сети могут автоматически настраиваться сами.
Разумеется, существует множество программных инструментов для создания карт, например программа Nmap, которая сканирует сеть, определяя в ней хосты, визуализирует сеть по количеству переходов от сканера, использует простой протокол управления сетью (Simple Network Management Protocol, SNMP) для обнаружения и отображения топологии сети или задействует файлы конфигурации маршрутизатора и коммутатора для быстрого создания сетевых диаграмм. Сетевые диаграммы, генерируемые программами, удобны, но они редко отражают все подробности и в целом контекст, необходимый для создания по-настоящему качественной карты, которую хотел бы иметь под рукой защитник. Идеальным решением было бы одновременное использование программ для картографии, сетевого сканирования и человеческого опыта, но даже этот подход требует значительных затрат времени сотрудника со специальными навыками, иначе полученные карты не будут достаточно точными или полезными.
Несмотря на эти ограничивающие факторы, чрезвычайно важно, чтобы защитник сети при составлении карты был очень внимателен. Примерная карта, показанная на рис. 1.2, иллюстрирует детали, которые должны быть указаны на составляемой защитником карте сети.
|
Для представления устройств в сети используют геометрические фигуры, а не пиктограммы. Для схожих типов устройств применяют схожие фигуры. Например, круги на рис. 1.2 обозначают рабочие станции, квадраты — маршрутизаторы, а прямоугольники — серверы. В продолжение этой мысли, треугольники, если бы они были, представляли бы ретрансляторы электронной почты или контроллеры домена. Кроме того, на фигурах отсутствует текстура или фон, потому что информация, размещенная внутри, должна быть хорошо читаемой.
Каждый интерфейс, как виртуальный, так и физический, имеет свой тип и номер. Например, может быть указан тип интерфейса Ethernet, а номер интерфейса будет таким же, как и физически указанный на устройстве, eth 0/0. Также помечаются неиспользуемые интерфейсы. Каждому интерфейсу приписывается назначенный ему IP-адрес и подсеть, если они известны.
Открытая информация об устройстве: имя хоста, марка, модель устройства и версия ОС — указывается в верхней части устройства. Уязвимости, учетные данные по умолчанию, известные учетные данные и другие важные слабости обозначаются в центре устройства. Аналогичным образом документируются запущенные службы, программное обеспечение и открытые порты. На карте также указываются сети VLAN, сетевые границы, макет и структура сети. Рядом с ними записывается любая заслуживающая внимания информация.
|
Высшим пилотажем у синоби считалось умение собрать разведданные, не обнаружив себя. Если он будет прогуливаться возле замка и замерять длинной линейкой его размеры, то жители наверняка заподозрят, что тут работает вражеский шпион. Следовательно, старательные синоби составляли карты в мирное время, когда обитатели замка были менее бдительны и можно было более свободно ходить там, где нужно, вызывая во время сбора данных меньше подозрений.
Часто синоби приходилось придумывать способы выполнять измерения, отмечать топографические особенности и собирать другую информацию втайне от посторонних глаз. Что характерно, в разделе о методах открытой маскировки трактата «Бансэнсюкай» приведено описание того, как точно создавать карты, и там говорится, что синоби умели создавать карты прямо на глазах у врага. В трактате описывается техника под названием урамитцу но дзюцу, предназначенная для определения расстояния до знакомого объекта, если известны размеры объекта для масштабирования. Урамитцу но дзюцу также рассматривает хитрые приемы из тригонометрии. Например, синоби может лечь ступнями к цели и использовать их известные размеры для измерения расстояния, при этом со стороны кажется, что человек просто дремлет под деревом.
Сбор информации о сетевых узлах — одно из первых действий, которое выполняет злоумышленник перед совершением атаки на сеть или хост. Карты, созданные противником, предназначены для того же, что и карты ниндзя, — идентификации и документирования информации, необходимой для проникновения на объект. К этой информации могут относиться все точки входа в сеть и выхода из нее: подключения к интернет-провайдеру, точки беспроводного доступа, УВЧ, микроволновые, радио- или спутниковые точки, облачные, взаимосвязанные и внешние сети.
Злоумышленники также находят шлюзы протокола пограничного шлюза (BGP) и маршруты или переходы к сети. Определяют репрезентативную структуру, расположение и дизайн сети, оборудование в ней, включая имена хостов, модели устройств, операционные системы, открытые порты, запущенные службы и уязвимости, а также топологию сети, включая подсети, VLAN, ACL и правила брандмауэра.
Многие из инструментов, предназначенные для отображения сети и используемые злоумышленниками, являются «шумными», поскольку они обмениваются данными с большим количеством хостов, применяют специально собранные пакеты и могут быть обнаружены внутренними устройствами безопасности. Но злоумышленники могут обойти этот недостаток за счет замедления или настройки картографа, использования нестандартных (неподозрительных) пакетов и даже ручной разведки с помощью стандартных инструментов, работающих на хосте жертвы, таких как команды ping или net. В атаках также могут задействоваться безобидные методы разведки, когда злоумышленник не трогает и не сканирует цель, а лишь собирает информацию с помощью сервиса Shodan или других ранее проиндексированных данных, хранящихся в поисковых системах в интернете.
Более хитроумные злоумышленники пользуются тактикой пассивного отображения сети, когда злоумышленник собирает информацию о цели, не взаимодействуя с ней напрямую (без активного сканирования с помощью инструментов вроде Nmap). Еще одна тактика пассивного отображения сети — это интерпретация пакетов, перехваченных с сетевого интерфейса в беспорядочном режиме, то есть настройка сетевого интерфейса на запись и проверку всех сетевых коммуникаций. Этот режим противоположен упорядоченному режиму, при котором записывается и проверяется только связь внутри сети. Беспорядочный режим позволяет получить представление об используемых сетью соседних хостах, потоках трафика, службах и протоколах, не взаимодействуя с ними активно.
Методами отображения сети без прямого взаимодействия с ней являются также перехват электронных писем администратора сети на выходе из нее, поиск сетевых карт цели во внешнем хранилище файлов или поиск на форумах, где администратор просит помощи в устранении неполадок, для чего может публиковать журналы или ошибки, конфигурации маршрутизатора, информацию о сетевой отладке или другие технические подробности, позволяющие понять структуру и конфигурацию сети. Как и в урамитцу но дзюцу, использование наблюдаемой информации из сети цели позволяет составить карту, не обращаясь к сети. Пассивное отображение может включать в себя измерение задержки трассировщиков для определения спутниковых переходов (например, наличие спутника обычно сопровождается внезапным увеличением задержки связи на 500 мс) или обнаружения глубокой обработки пакетов системой брандмауэра (например, препроцессор распознает потенциальную злонамеренную атаку и добавляет ощутимые задержки связи). Пассивное отображение может включать также раскрытие информации внутренней сети из внешних зон DNS и записей ответов. Это могут быть заказы на государственные закупки и запросы на закупку определенного программного либо аппаратного обеспечения, объявления о вакансиях сетевых или системных администраторов с опытом работы в конкретной технологии, сетевом оборудовании или аппаратном/программном обеспечении.
Если злоумышленник тратит так много времени на разработку карт, они в конечном итоге могут оказаться более полными, чем собственные карты цели, и тогда противник будет знать о сети цели больше, чем сама цель. Чтобы не отставать в этой битве, защитники сети должны разрабатывать и поддерживать лучшие карты и обеспечивать высокую степень защиты.
|
Создание карты может состоять из трех основных этапов.
- Выделите средства для создания полной и точной карты, которую было бы легко обновлять и надежно хранить. Карта должна содержать информацию, необходимую для нужд определенного отдела, например отдела ИТ, центра сетевых операций (network operations center, NOC) и SOC. Рассмотрите возможность найма специального человека, команды или подрядчика, который бы составил и проанализировал такую карту.
- Создайте саму карту, указав на ней все подробности, перечисленные в начале этой главы.
- Попросите коллег проверить эту карту в рамках процесса управления изменениями и делайте это всякий раз, когда кто-либо замечает расхождение карты с действительностью.
|
Давайте подробнее рассмотрим второй шаг — создание карты.
Когда вы определили все ключевые заинтересованные стороны и убедили их в том, что этот проект совершенно необходим, первый шаг — собрать все, что есть в вашей организации, что может помочь создать его. Сюда входят схемы подключения, планы проектов старой сетевой архитектуры, результаты сканирования уязвимостей, инвентаризации активов и центра обработки данных, данные об аренде DHCP, записи DNS, сведения об управлении сетью SNMP, записи агентов конечных точек, данные о захвате пакетов (packet captures, PCAP), журналы SIEM (security information and event management), настройки маршрутизаторов, правила брандмауэра и результаты сканирования сети. Настройка маршрутизатора лежит в основе построения базовой архитектуры и компоновки вашей сетевой карты. К примеру, можете начать с размещения вашего ядра или центрального маршрутизатора(ов) в середине карты и затем рисовать ответвления от него. Перехват PCAP поможет выявить в сети конечные точки, которые могут не отвечать на сканирование сети или вообще быть недоступными для сканеров из-за сетевой фильтрации. Разрешив выбранным системам собирать PCAP в течение длительного периода в беспорядочном режиме, вы получите список конечных точек, как показано на рис. 1.3.
|
В идеале собирать PCAP нужно во время сканирования сети, чтобы проверить, куда дотягивается сканер. Кроме того, следует провести несколько сканирований сети, при этом минимум одна конечная точка в каждой подсети должна сканировать свою подсеть. Эти сканирования можно вручную объединить в топологию карты сети, как показано на рис. 1.4. Определите элементы, которые можно автоматизировать, чтобы этот процесс было легче повторить в будущем.
|
Собранные данные нужно обработать, проанализировать и объединить. Перед объединением данных полезно выяснить, какой источник данных наиболее точен, а также определить источники, предоставляющие уникальную и полезную информацию, например время последнего посещения устройства. Также следует проанализировать все найденные несоответствия. Это могут быть устройства, которых на самом деле нет в сети, несанкционированные устройства, странное сетевое поведение или соединения. Если вы обнаружите, что ваши сетевые сканеры не смогли проникнуть в какие-то части подсети из-за правил IP-адресов или работы системы предотвращения вторжений (intrusion prevention system, IPS), рассмотрите возможность изменения настроек, чтобы можно было выполнить более глубокое и всестороннее сканирование.
Рассмотрите различные инструменты для составления карт сети, которые могут автоматически принимать данные SNMP, сканировать сеть и уязвимости, а также позволяют выполнять ручное редактирование и добавление данных. Выбранный вами инструмент должен создавать исчерпывающую, точную и подробную карту сети, отвечающую потребностям заинтересованных сторон. Выберите лучшее решение, которое будет обрабатывать ваши данные и соответствовать вашему бюджету.
Создайте карту и протестируйте ее. Проверьте ее полезность во время совещаний либо инцидентов в сфере безопасности и сбоев/отладки сети. Помогает ли карта решать проблемы и быстрее находить их источник? Проверьте точность карты с помощью трассировки маршрута и выполнения tcpdump через интерфейсы. Чтобы проверить точность с помощью трассировки, нужно провести ее изнутри и снаружи из разных сетевых местоположений и посмотреть, указаны ли на карте точки перехода (маршрутизаторы) и соответствуют ли они структуре сети. Пример трассировки маршрута показан на рис. 1.5.
|
Посмотрите, насколько полезна будет ваша карта для красной и синей команд. Соберите отзывы, повторите процесс составления и получите карту лучшего качества за меньшее время.
|
УПРАЖНЕНИЕ ПО ТЕОРИИ ЗАМКА
|
Рассмотрим сценарий, в котором вы — правитель средневекового замка, у вас есть ценная информация, сокровища и люди. Вам стало известно, что ниндзя тщательно нанесли на карту ваш замок и его окрестности, но при этом неясно, выбрали вас в качестве цели или это просто пассивная разведка. Вы не знаете, как выглядит карта и насколько она детализирована. У вас же есть лишь архитектурный план замка, который использовался во время его возведения и был разработан для строителей, а не для других пользователей, к тому же с тех пор устарел.
Что может быть отражено на карте ниндзя, чего нет на вашей карте? Что ниндзя знает о вашем замке, чего не знаете вы, и как эту информацию можно применить для проникновения в него? Кому в замке был бы полезен доступ к карте ниндзя? Кому вы доверили бы нанести на карту свой замок так же, как это делали ниндзя, чтобы увидеть то, что увидели они?
|
Рекомендуемые меры безопасности и предосторожности
|
Все рекомендации, если это возможно, здесь и далее сопровождаются мерами безопасности из стандарта NIST 800-53.
- Распределите обязанности по документированию карты сети. Внедрите политики и процедуры для координации обновлений карты между командами. (Разделы CM-1. Политика и процедуры управления конфигурацией; CM-3. Контроль изменений конфигурации | Представитель службы безопасности; CM-9. План управления конфигурацией.)
- Чтобы было с чего начать, документируйте конфигурацию топологии сети, архитектуры, логическое размещение и информационные системы. (CM-2. Базовая конфигурация.)
- Добавьте идентификацию дефектов, например неточностей карты, и процедуру устранения, допустим, уязвимостей, сетевой архитектуры, в процесс составления карты. (SI-2. Устранение дефектов.)
|
В этой главе мы рассмотрели цели создания карт синоби, стандарты этого процесса и методы картографирования, а также привели обзор современных практик и технологий картографирования сетей. Беседы о важности сетевых карт, о том, как создавать хорошие карты и как злоумышленники собирают информацию о вашей системе, возможно, подогрели ваше воображение и вы хотите найти больше источников данных или методов, которые можно было бы использовать для построения карты своей и любой другой сети.
В следующей главе мы попробуем задействовать карту сети в качестве диаграммы потока данных (data flow diagram, DFD) для моделирования угроз. Это означает, что вы определите в своей сети области, в которых злоумышленник может провести атаку или обойти защиту. Я расскажу о новой защитной технике ниндзя, которую можно использовать для защиты слабых мест в вашей сети.
|
Об авторе
Бен Маккарти — бывший разработчик из АНБ. Один из самых квалифицированных специалистов по кибервойне, служивших на сетевом фронте. Бен успел поработать хакером, специалистом по отработке инцидентов, охотником за угрозами, аналитиком вредоносных программ, инженером по сетевой безопасности, аудитором соответствия, специалистом по анализу угроз и специалистом по развитию. Ему принадлежат несколько патентов и сертификатов в сфере безопасности. В настоящее время занимается исследованием квантовой безопасности в Вашингтоне.
|
|
|
Комментарии: 0
Пока нет комментариев