Сети соответствуют графам
Сетевые топологии — это геометрические графы
Каждая компьютерная сеть имеет топологию: геометрическое расположение узлов (устройств) и рёбер (соединений). Топология определяет отказоустойчивость, полосу пропускания и свойства безопасности.
Пять фундаментальных топологий:
- Звезда: один центральный концентратор, все узлы к нему подключены. Просто, дешево. Единая точка отказа: если концентратор выходит из строя, всё выходит из строя. N-1 рёбер для N узлов.
- Кольцо: узлы образуют круг, каждый соединён с двумя соседями. Один разрыв разделяет сеть. N рёбер для N узлов.
- Шина: все узлы используют один магистральный кабель. Дешево, но подвержено коллизиям. Один отказ магистрали выводит всё из строя.
- Сетка: каждый узел соединён со всеми остальными. Максимальная избыточность. Полная сетка с N узлами имеет N(N-1)/2 рёбер: это O(N²) соединений. Дорого, но крайне отказоустойчиво.
- Дерево: иерархическое разветвление. N-1 рёбер (минимальный связный граф). Отказ корня разделяет поддеревья.
Реальные сети — это гибриды: ядро-сетка со слоями доступа в топологии звезда, иерархии маршрутизации со структурой дерева и избыточность в топологии кольцо в критических узлах.
Топология и отказоустойчивость
В центре обработки данных есть 20 серверов. Операционная команда обсуждает выбор между полной сеткой и топологией звезда для внутренней сети.
Геометрия экспозиции
Поверхность атаки = геометрическая граница
В кибербезопасности поверхность атаки — это полное множество точек, в которых злоумышленник может взаимодействовать с системой. Думайте геометрически: ваша система — это форма, & каждая точка на её границе — это потенциальная точка входа.
Компоненты поверхности атаки:
- Сетевая поверхность: каждый открытый порт на каждом публичном IP-адресе. Сервер с 5 открытыми портами имеет 5 точек на своей сетевой границе.
- Поверхность приложения: каждая конечная точка API, каждый маршрут URL, каждый ввод формы. Веб-приложение с 200 маршрутами имеет 200 граничных точек уровня приложения.
- Человеческая поверхность: каждый сотрудник с учётными данными, каждая цель фишинга. Атаки социальной инженерии нацелены на человеческий периметр.
- Физическая поверхность: каждая дверь серверной, каждый порт USB, каждое сетевое гнездо.
Геометрический принцип: безопасность улучшается путём минимизации границы между доверенными и недоверенными зонами. Брандмауэр определяет геометрическую границу: трафик внутри — доверенный, трафик снаружи — нет. Чем меньше отверстий в этой границе, тем меньше поверхность атаки.
Это объясняет, почему принцип наименьших привилегий — геометрический: дайте каждому компоненту минимальную граничную экспозицию, необходимую для его функционирования.
Снижение поверхности атаки
Компания запускает веб-приложение со следующей экспозицией: 12 публичных конечных точек API, SSH открыт на всех 50 серверах (порт 22), база данных с публичным IP-адресом & панель администратора, доступная из интернета.
Графы атак и деревья угроз
Моделирование угроз использует теорию графов
Специалисты по безопасности моделируют угрозы как направленные графы. Структура этих графов раскрывает пути атак, высокоценные цели & приоритеты защиты.
Графы атак: узлы представляют состояния системы (или отдельные системы). Направленные рёбра представляют возможные переходы: эксплойты, боковые движения, повышения привилегий. Путь атаки — это прогулка по этому графу от внешнего узла к целевому узлу.
Деревья атак: специализированная структура графа. Корневой узел — это цель злоумышленника (например, 'украсть базу данных'). Дочерние узлы — методы достижения цели родителя. Листья — конкретные действия атаки. AND-узлы требуют успеха всех потомков; OR-узлы требуют успеха только одного.
Центральность графа определяет высокоценные цели:
- Центральность посредничества: узел, через который проходят многие кратчайшие пути. В сети это узкое место: скомпрометируйте его, и вы контролируете поток трафика. Брандмауэр или контроллер домена часто имеют высокую центральность посредничества.
- Центральность степени: узел со многими соединениями. В графе атак узел, достижимый из многих других узлов, — это высокоценная цель для бокового движения.
Кратчайший путь = наиболее вероятный вектор атаки: злоумышленники оптимизируют на минимальное количество шагов. Кратчайший путь в графе атак из интернета в базу данных — это наиболее вероятный маршрут атаки. Защита означает удлинение этого кратчайшего пути: добавление узлов (средств управления безопасностью), через которые должен пройти злоумышленник.
Анализ графа атак
Рассмотрим сеть со следующей структурой: Интернет → веб-сервер → сервер приложений → база данных. Веб-сервер также соединён с файловым сервером. Сервер приложений соединён с резервным сервером. Цель злоумышленника — база данных.
Криптография эллиптических кривых использует геометрию
Эллиптические кривые: где геометрия становится шифрованием
Криптография эллиптических кривых (ECC) — это одно из редких мест, где безопасность буквально построена на геометрических операциях.
Эллиптическая кривая — это множество точек (x, y), удовлетворяющих: y² = x³ + ax + b (плюс специальная 'точка на бесконечности'). На множестве вещественных чисел это выглядит как гладкая, симметричная кривая.
Сложение точек: геометрическая операция, которая делает криптографию работающей:
1. Возьмите две точки P & Q на кривой.
2. Проведите прямую линию через P & Q.
3. Эта линия пересекает кривую ровно в одной другой точке R'.
4. Отразите R' относительно оси x, чтобы получить R = P + Q.
Операция 'сложение' образует математическую группу: она ассоциативна, имеет элемент идентичности (точку на бесконечности) и каждая точка имеет обратную.
Скалярное умножение: добавление точки P к себе k раз даёт kP. Движение вперёд (вычисление kP при заданных k и P) быстро: операции O(log k) с использованием двойного-и-добавления. Движение назад (нахождение k при заданных P и kP) — это задача дискретного логарифма на эллиптической кривой (ECDLP): считается вычислительно невозможным для больших кривых.
Эта асимметрия — основа безопасности современного TLS. Ваше соединение HTTPS в браузере, вероятно, использует ECDHE (эфемерный Диффи-Хеллман эллиптических кривых): обе стороны согласовывают общий секрет путём обмена точками на эллиптической кривой, и ни один подслушиватель не может восстановить секрет без решения ECDLP.
Почему геометрия делает хорошую криптографию
ECC обеспечивает ту же безопасность, что и RSA, с гораздо меньшими размерами ключей. Ключ ECC размером 256 бит обеспечивает примерно такую же безопасность, что и ключ RSA размером 3072 бита.