«Мы привыкли думать о сетевых угрозах как о целенаправленных атаках — сканирование, внедрение, эксплуатация. Но есть другой взгляд: угроза может проходить через сеть как вода через грунт, заполняя пустоты и идя по каналам, которые существовали задолго до атаки. Этот процесс не управляется атакующим напрямую, а подчиняется законам сетевой топологии и вероятностей. Percolation theory позволяет увидеть угрозу не как действие, а как феномен распространения.»
Что такое Percolation theory и почему она важна для кибербезопасности
Percolation theory описывает поведение случайных систем, где передача или протекание происходит через сеть узлов и связей. В классическом примере вода просачивается через пористую среду — она заполняет пустоты и создаёт связанные кластеры. Если связность достигает порогового значения, происходит переход: система становится проницаемой насквозь.
В кибербезопасности мы можем рассматривать информационную сеть как эту пористую среду. Узлы, это хосты, сервисы, пользовательские устройства. Связи, это сетевые соединения, открытые порты, установленные доверительные отношения, логические маршруты передачи данных. Угроза, попадающая в сеть, начинает заполнять доступные «пустоты»: незакрытые порты, уязвимые версии ПО, необновлённые системы. Она не выбирает путь заранее, а движется по существующим каналам.
Применение percolation theory к угрозам меняет подход к анализу рисков. Вместо поиска конкретных векторов атаки мы оцениваем топологию сети и её проницаемость для угрозы. Порог проницаемости зависит от плотности уязвимых элементов и их связности.
Представим корпоративную сеть с сотнями рабочих станций. Если на 40% из них установлено уязвимое приложение, которое взаимодействует по определённому порту, то угроза может пройти через всю сеть, даже если атакующий не знает точного расположения каждой машины. Система становится проницаемой сама по себе.
Критическая плотность и порог проницаемости
В percolation theory есть ключевое понятие — критическая плотность (или порог percolation). Это значение вероятности или пропорции уязвимых элементов, при котором система переходит от локальных кластеров к формированию бесконечного кластера, пронизывающего всю сеть.
Для моделей безопасности этот порог можно определить через несколько параметров:
- Доля хостов с конкретной уязвимостью.
- Плотность сетевых связей, позволяющих передачу угрозы (например, открытый порт на двух хостах).
- Наличие логических доверительных зон, внутри которых угроза распространяется без дополнительных барьеров.
Если в сети 30% хостов используют уязвимую версию SSH-сервера, и эти хосты связаны через внутреннюю сеть, угроза может пройти сквозь сеть, даже если атакующий не знает топологии. Порог зависит от типа сети: в полностью связной сети (каждый с каждым) он ниже; в сетях с ограниченными связями (например, сегментированных VLAN) он значительно выше.
Это напрямую связано с требованиями регуляторики, например с ФСТЭК по сегментации сетей. Сегментация снижает плотность связей между узлами, повышая порог проницаемости и затрудняя распространение угрозы.
Распространение угрозы как случайный процесс
Распространение угрозы в сети часто рассматривается как целенаправленный маршрут от точки входа к целевым системам. Percolation theory предлагает альтернативу: угроза распространяется как случайный процесс заполнения доступных каналов.
Пример: уязвимость в библиотеке обработки изображений, используемой в веб-приложениях. Если библиотека распространена на множестве серверов, и эти серверы связаны через внутренние API или бэкенд-коммуникации, угроза может переходить от одного сервера к другому не по заранее выбранному пути, а по существующим соединениям. Атакующий может даже не контролировать каждый шаг — он запускает процесс, который затем протекает сам по себе благодаря связности сети.
Это объясняет случаи, когда после первоначального внедрения угроза быстро охватывает множество систем, казалось бы, без активных действий злоумышленника. Сеть обладает внутренней проницаемостью для данного типа угрозы.
Кластеры и их роль в масштабных инцидентах
При изучении распространения угрозы через percolation мы наблюдаем формирование кластеров — групп связанных уязвимых узлов. Пока кластеры локальные, угроза ограничена отдельными сегментами. Но когда кластер становится «бесконечным» (пронизывающим сеть от границы до границы), угроза приобретает системный характер.
В инцидентах с масштабным заражением (например, ransomware, распространяющийся по сети) часто наблюдается именно такой переход. Заражение нескольких ключевых узлов (файловых серверов, систем контроля) создаёт кластер, который затем соединяется через доверительные связи или стандартные сетевые протоколы. После этого угроза охватывает сеть почти целиком.
Анализ кластеров позволяет прогнозировать точки роста инцидента. Если в сети есть кластер уязвимых узлов, близкий к критическому размеру, это сигнал о высокой вероятности масштабного распространения при попадании угрозы в этот кластер.
Влияние сетевой топологии на проницаемость
Полносвязные сети
В сетях, где каждый хост может напрямую взаимодействовать с каждым другим (например, в плоских сетях без сегментации), порог проницаемости низкий. Небольшая доля уязвимых элементов может привести к пронизывающему кластеру. Это делает такие сети крайне рискованными.
Сети с ограниченной связностью
Сегментация, VLAN, микросегментирование — все эти меры уменьшают плотность связей. В таких сетях порог проницаемости значительно выше. Угроза может остаться локализованной в одном сегменте, даже если там есть уязвимые узлы, потому что связи между сегментами ограничены.
Иерархические и древовидные сети
Сети с явной иерархией (например, корпоративные сети с центральными серверами и периферийными станциями) могут иметь специфические пути распространения. Угроза может протекать по вертикальным связям (от центра к периферии) быстрее, чем по горизонтальным.
Топология напрямую определяет, как будет распространяться угроза. Методы percolation theory позволяют моделировать разные топологии и оценивать их устойчивость.
Percolation и требования ФСТЭК
Рекомендации и требования ФСТЭК по построению защищённых сетей часто направлены на повышение порога проницаемости. Сегментация сети, разделение на доверительные зоны, контроль межсегментных соединений — все это меры, которые уменьшают плотность связей между узлами и повышают критическую плотность для угрозы.
Если рассматривать сеть через percolation, выполнение требований регуляторики можно оценить количественно: насколько повышается порог проницаемости после внедрения сегментации? Как снижается вероятность формирования пронизывающего кластера?
Для соответствия 152-ФЗ важно не только формальное разделение сетей, но и реальное снижение связности между системами с разным уровнем критичности. Percolation theory даёт модель для проверки этого снижения.
Практическое применение: оценка устойчивости сети
Как использовать percolation theory для оценки устойчивости корпоративной сети к распространению угроз?
- Составьте модель сети: узлы (хосты, сервисы) и связи (сетевые соединения, доверительные отношения, открытые порты для внутреннего взаимодействия).
- Определите параметры уязвимости: какие узлы считаются «проницаемыми» для угрозы? Например, хосты с неустановленными патчами, сервисы с известными уязвимостьями, системы с определёнными открытыми портами.
- Рассчитайте долю уязвимых узлов и плотность связей между ними. Используйте данные из систем мониторинва, инвентаризации, сканирования уязвимостей.
- С помощью моделей percolation оцените вероятность формирования пронизывающего кластера. Если вероятность высока, сеть находится в опасной зоне.
- Проанализируйте, какие меры (сегментация, закрытие портов, обновление ПО на ключевых узлах) наиболее эффективно повысят порог проницаемости.
Этот подход дополняет традиционные методы оценки рисков, добавляя топологический анализ.
Примеры инцидентов через призму Percolation
Рассмотрим два типа инцидентов с точки зрения percolation.
Распространение ransomware по сети организации. Если ransomware использует стандартные сетевые протоколы (например, SMB) для перемещения между хостами, а многие хосты имеют открытые соответствующие порты и доверительные отношения, сеть обладает высокой проницаемостью для этой угрозы. Не требуется сложных маршрутов — угроза заполняет доступные каналы.
Внутреннее распространение уязвимости через общие библиотеки. Если уязвимая библиотека используется в множестве микросервисов, и эти сервисы взаимодействуют через внутреннее API, угроза может протекать от одного сервиса к другому по уже существующим связям. Кластер уязвимых сервисов может стать пронизывающим.
В обоих случаях атакующий не прокладывает путь вручную — он использует естественную проницаемость сети.
Ограничения и будущее применения теории
Percolation theory не учитывает активные адаптивные действия атакующего — она рассматривает распространение как процесс в статичной или квазистатичной сети. В реальности атакующий может динамически открывать новые каналы (например, используя эксплойты для создания новых соединений).
Тем не менее, теория даёт базовое понимание внутренней уязвимости сети к распространению угроз. Она помогает оценивать риски на этапе проектирования и аудита сети.
С развитием моделей динамической percolation и сочетанием с теориями графов можно получить более точные инструменты для прогнозирования поведения угроз в сложных сетях.
Для российского контекста с акцентом на регуляторику и требования ФСТЭК percolation theory предлагает математическую основу для оценки эффективности мер сегментации и контроля связности.