Понятие о картах сети
Картами сети в кибербезопасности называют графы топологии сети, которые описывают физические и/или логические связи и конфигурацию связей (коммуникационные соединения) и узлов (устройств) сети. Чтобы лучше понять концепцию, посмотрите на дорожные карты или карты в атласе. Они описывают физическое местоположение, географические особенности, политические границы и природный ландшафт. Информация о дорогах (связях) — их название, ориентация, длина и пересечения с другими дорогами — может использоваться для прокладки маршрута между местами (узлами). Теперь рассмотрим следующий гипотетический сценарий.
Представьте, что вы живете в мире, где дороги и здания внезапно появляются или исчезают в мгновение ока. У вас есть GPS и координаты места, где вы находитесь и куда хотите пойти, но добраться туда можно лишь по запутанной сети постоянно меняющихся дорог.
К счастью, на каждом перекрестке есть специалисты по навигации (маршрутизаторы), помогающие путешественникам вроде вас найти путь. Эти маршрутизаторы постоянно обращаются к соседним маршрутизаторам и спрашивают у них, какие маршруты и местоположения открыты, чтобы обновить свою таблицу маршрутизации, хранящуюся в буфере обмена. Вам нужно останавливаться на каждом перекрестке и спрашивать у маршрутизатора, как проехать к следующему узлу, показывая проездной, на котором ваш предполагаемый пункт назначения закодирован в координатах GPS. Маршрутизатор проверяет свой буфер обмена на наличие открытых в данный момент маршрутов, делает определенные вычисления и указывает вам направление, записывая на вашем проездном адрес маршрутизатора, а также пробивает в нем отверстие, чтобы отследить количество маршрутизаторов, на которых вы отметились во время поездки, и отправляет вас к следующему маршрутизатору. Этот процесс повторяется, пока вы не достигнете точки назначения. А теперь представьте себе лица картографов, которые, вероятно, бросили бы заниматься созданием карт, будучи не в состоянии уследить за постоянно меняющейся сетью. Составителям карт пришлось бы довольствоваться обозначением ключевых ориентиров и достопримечательностей, общими названиями и нечеткими линиями между этими точками, говорящими о том, что между ними существуют какие-то пути.
Эта гипотетическая для нашего мира ситуация на самом деле существует в киберпространстве, и именно поэтому сетевые карты не так точны, а их обслуживание не так приоритетно, каким должно было бы быть. Отсутствие качественной карты сети — это распространенная проблема организаций, занимающихся кибербезопасностью. Если у организации есть карта, она обычно предоставляется операционному центру безопасности (security operations center, SOC), чтобы его специалисты знали, где в потоке данных находятся датчики или устройства безопасности, и могли лучше понять маршрут пакетов, правила брандмауэра, сигналы тревоги и системные журналы. Кроме того, такая карта, скорее всего, довольно абстрактна и описывает только основные функции, такие как границы интернета, периметр сети и интрасети, общее расположение граничных маршрутизаторов или межсетевых экранов, но на ней не указываются сети, концептуальные схемы имеют вид простых кружочков и стрелочек. Пример плохо проработанного, но распространенного вида карты сети, которой пользуются специалисты в области кибербезопасности и ИT, представлен.
Чтобы понять, почему на рис. 1.1 показана «плохая» карта, давайте еще раз рассмотрим приведенный в «Бансэнсюкай» совет по составлению карт, но применим кибераналогию.
Все точки доступа узла в сети. Какие виды интерфейсов доступа присутствуют на устройстве (Ethernet [e], Fast-Ethernet [fe], Gigabit-Ethernet [ge], Universal Serial Bus [USB], Console [con], Loop-back [lo], Wi-Fi [w] и т. д.)? Есть ли фильтрация адресов управления доступом к сети (NAC) или управления доступом к среде (MAC)? Включен или заблокирован доступ к удаленной или локальной консоли? Какой вид физической безопасности реализован? Закрыто ли помещение с серверной стойкой на замок или есть ли хотя бы USB-замки? Ведется ли журнал доступа к интерфейсу? Где находится интерфейс управления сетью и сама сеть? Каков IP-адрес и MAC-адрес каждой точки доступа?
Граничные шлюзы, переходы и точки выхода. Сколько интернет-провайдеров (internet service provider, ISP) у сервера — один или больше? Используется надежное подключение к интернету (Trusted Internet Connection, TIC) или управляемая служба интернета (Managed Internet Service, MIS)? Какова пропускная способность интернет-соединения? Применяется оптоволокно, Ethernet, коаксиальный кабель или другой канал? Какие переходы ведут к сети? Существуют ли способы входа в сеть или выхода из нее через спутник, микроволновую печь, лазер или вайфай?
Структура и схема сети. Каковы имя, назначение и размер каждой подсети, например используется ли бесклассовая междоменная маршрутизация (Classless Inter-Domain routing, CIDR)? Задействуются ли виртуальные локальные сети (virtual local area networks, VLAN)? Заданы ли лимиты пула подключений? Является ли сеть плоской, иерархической или разделена на структуры, защитные слои и/или функции?
Хосты и узлы сети. Как они называются? Какая у них версия операционной системы (ОС)? Какие службы/порты используются, какие из них открыты? Какие на них запущены средства безопасности, которые позволят обнаружить атаку? Есть ли у них общеизвестные уязвимости (common vulnerability exploit, CVE)?
Физическая и логическая архитектура сети и здания. Где находится дата-центр? Есть ли в холле разъемы Ethernet? Можно ли поймать вайфай за пределами здания? Видны ли экраны компьютеров и терминалы снаружи здания? Используется ли в офисе безопасное стекло? Правильно ли сегментированы сети гостевых или конференц-залов? Каковы основные списки управления доступом (access control list, ACL) и правила брандмауэра в этой сети? Где разрешается DNS? Что доступно в периметре сети или DMZ (demilitarized zone)? Существуют ли внешние поставщики электронной почты или другие облачные сервисы? Как устроена архитектура удаленного доступа или виртуальной частной сети (VPN)?
Организации, не имеющие действующей карты сети, иногда используют электрические схемы или схемы, составленные их ИТ-отделом. На таких упрощенных рисунках отражено относительное расположение систем, сетевого оборудования и подключения устройств, и они могут служить справочными материалами для устранения технических или эксплуатационных проблем в сети. Но у множества организаций нет даже таких приблизительных схем, зато есть электронные таблицы, в которых перечислены имена хостов, их модели и серийные номера, IP-адреса, а также расположение всего оборудования на стойке в центре обработки данных. При этом если заинтересованные стороны могут использовать такую таблицу для поиска нужных ответов и серьезных сетевых проблем или сбоев не возникает, то даже само наличие такой документации может препятствовать созданию карты сети. Это ужасно, но у некоторых компаний есть архитектор или специалист, который держит карту сети в голове, и ни в каком другом виде ее не существует.
Справедливости ради стоит сказать, что бывают и разумные причины отсутствия полезных сетевых карт. Создание, совместное использование и обслуживание карт отнимает драгоценное время и другие ресурсы. Карты могут часто меняться. Добавление систем в сеть или их удаление, изменение IP-адресов, переделка кабелей или задание новых правил маршрутизатора или брандмауэра — все это может значительно повлиять на точность карты, даже если изменение произошло всего несколько минут назад. Кроме того, современные компьютеры и сетевые устройства используют протоколы динамической маршрутизации и конфигурации хоста, которые автоматически отправляют информацию в другие системы и сети, не нуждаясь в картах вообще, что означает: сети могут автоматически настраиваться сами.
Разумеется, существует множество программных инструментов для создания карт, например программа Nmap [24], которая сканирует сеть, определяя в ней хосты, визуализирует сеть по количеству переходов от сканера, использует простой протокол управления сетью (Simple Network Management Protocol, SNMP) для обнаружения и отображения топологии сети или задействует файлы конфигурации маршрутизатора и коммутатора для быстрого создания сетевых диаграмм. Сетевые диаграммы, генерируемые программами, удобны, но они редко отражают все подробности и в целом контекст, необходимый для создания по-настоящему качественной карты, которую хотел бы иметь под рукой защитник. Идеальным решением было бы одновременное использование программ для картографии, сетевого сканирования и человеческого опыта, но даже этот подход требует значительных затрат времени сотрудника со специальными навыками, иначе полученные карты не будут достаточно точными или полезными.
Несмотря на эти ограничивающие факторы, чрезвычайно важно, чтобы защитник сети при составлении карты был очень внимателен. Примерная карта, показанная на рис. 1.2, иллюстрирует детали, которые должны быть указаны на составляемой защитником карте сети.
Для представления устройств в сети используют геометрические фигуры, а не пиктограммы. Для схожих типов устройств применяют схожие фигуры. Например, круги на рис. 1.2 обозначают рабочие станции, квадраты - маршрутизаторы, а прямоугольники — серверы. В продолжение этой мысли, треугольники, если бы они были, представляли бы ретрансляторы электронной почты или контроллеры домена. Кроме того, на фигурах отсутствует текстура или фон, потому что информация, размещенная внутри, должна быть хорошо читаемой.
Каждый интерфейс, как виртуальный, так и физический, имеет свой тип и номер. Например, может быть указан тип интерфейса Ethernet, а номер интерфейса будет таким же, как и физически указанный на устройстве, eth 0/0. Также помечаются неиспользуемые интерфейсы. Каждому интерфейсу приписывается назначенный ему IP-адрес и подсеть, если они известны.
Открытая информация об устройстве: имя хоста, марка, модель устройства и версия ОС - указывается в верхней части устройства. Уязвимости, учетные данные по умолчанию, известные учетные данные и другие важные слабости обозначаются в центре устройства. Аналогичным образом документируются запущенные службы, программное обеспечение и открытые порты. На карте также указываются сети VLAN, сетевые границы, макет и структура сети. Рядом с ними записывается любая заслуживающая внимания информация.