Статичность компьютерных конфигураций позволяет атакующим не спеша провести рекогносцировку и наметить план атаки — защищающиеся заведомо ставят себя в невыгодное положение. Концепция защиты с использованием движущихся целей (Moving-Target Defense, MTD), на основе которой была сформулирована новая парадигма безопасности компьютерных сетей и систем [1], позволяет повысить надежность сетей. Суть MTD заключается в том, что определенные элементы машины или сети меняются во времени, затрудняя «поражение» цели. Подход этот, хотя и находится только на начальном этапе становления, уже привлек к себе серьезное внимание — в условиях распространения технологий виртуализации, программно-конфигурируемых сетей (Software-Defined Network, SDN) и случайным образом формируемой схемы адресного пространства (Address Space Layout Randomization, ASLR) он стал весьма популярен. По мере дальнейшего развития и совершенствования концепция MTD продолжает демонстрировать многообещающие результаты в части повышения устойчивости систем и надежности сетей, привлекая к себе все больше исследователей и разработчиков.

Традиционные компьютерные сети за рядом исключений предназначены для работы в относительно статических средах. В основе большинства важных сервисов и сетей лежат хорошо спланированные структуры и функции поддержки, которые тщательно настраиваются и развертываются, обеспечивая требуемое функционирование. Инфраструктура поддержки может быть самой разной, начиная от физических устройств (компьютеров, маршрутизаторов и коммутаторов) и заканчивая сервисами более высокого уровня, к которым относятся службы доменных имен, а также компоненты для проведения регистрации и аутентификации.

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

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

Движущиеся цели и динамическая защита

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

Технологии MTD станут хорошей профилактической мерой, если перемещение или адаптация будут проходить по заранее заданному расписанию, без поддержания обратной связи с системой — адаптация упреждающей защиты происходит медленнее, чем у защиты, реагирующей на возникновение событий. В ожидании потенциальных атак возрастает сложность системы. Защита MTD, срабатывающая по факту, вносит изменения в защищаемую систему (или поддерживаемые сервисы), когда получает сигнал от сети или датчика безопасности. Триггеры реагируют на изменение производительности системы, предупреждения системы безопасности, возникновение каких-то аномальных ситуаций и инициируют изменение политики безопасности или защитной конфигурации.

Более совершенные технологии MTD используют понятие адаптивного ответа, обрабатывая данные от датчиков, — события в сфере безопасности меняют их поведение или стратегию, обеспечивая переход между упреждающими состояниями с использованием обратной связи с системой. С технической точки зрения концепцию адаптивности можно реализовать разными способами, начиная от изменения конфигурации сетевого интерфейса и заканчивая полной перекомпиляцией приложения, переносимого на этапе выполнения программы в другую среду.

Одним из наиболее известных примеров MTD является технология IP-hopping [2], достаточно наглядно иллюстрирующая принципы, положенные в основу MTD. Суть IP-hopping заключается в изменении IP-адреса компьютера с целью усложнения проведения сетевых атак, основанных на прослушивании каналов связи и несанкционированном использовании сетевого соединения. Изменение сетевых адресов препятствует использованию стандартных технологий изоляции потоков и сеансов, значительно осложняя проведение успешных атак. Конечно, концепция требует, чтобы изменения не затрагивали легальные коммуникации, и для этого придумано немало решений. В случае изменения IP-адреса большинство технологий предполагает налаживание координации между клиентами и серверами, обеспечивающей синхронизацию и поддержку шаблонов перехода.

Еще один пример MTD основан на использовании технологии ASLR, которую разработчики операционных систем уже на протяжении многих лет применяют в производственных системах Apple, Microsoft и Linux. Технология ASLR предусматривает случайное упорядочивание схемы адресного пространства процесса, что затрудняет проведение вторжений, основанных на выполнении атаки «возврата в библиотеку» (return-to-libc) или на встраивании команд в стек. Использование ASLR не делает проведение таких вторжений невозможным, но существенно увеличивает их стоимость.

Важно отметить, что в обоих примерах защита окажется действенной только при условии непредсказуемого изменения объекта атаки. Применение технологии IP-hopping даст эффект лишь при постоянном изменении IP-адресов. В противном случае атакующий сможет восстановить структуру сети. То же самое справедливо и в отношении ASLR — непрерывный анализ памяти в конечном итоге позволит провести атаку.

Построение устойчивой системы с помощью MTD

Устойчивые системы демонстрируют способность уклоняться от атак, отражать их, восстанавливать утраченную работоспособность и эволюционировать после атак. Их свойства обусловлены пониманием того, что, несмотря на наше стремление защитить систему, противники неизбежно будут пытаться ее скомпрометировать и разрушить какую-то ее часть. Устойчивость предполагает, что системы будут обнаруживать такие ситуации и восстанавливаться, самостоятельно находя способы улучшения защиты и ухода от атак. Однако только технологий MTD для создания устойчивых систем еще недостаточно — система должна поддерживать по крайней мере несколько параметров, обеспечивающих устойчивость. Устойчивость базируется также на способности системы противостоять атакам и на контуре обратной связи, способствующем адаптации, — эти возможности могут поддерживаться при координированном использовании MTD.

Внесение изменений в систему с целью запутывания противника и нарушения его планов представляется эффективным решением. В определенной степени это уже практиковалось, когда происходило обновление системы для ее защиты от атак методом обратного проектирования и периодической смены паролей. Эти мероприятия вполне можно было бы полностью или частично автоматизировать и масштабировать посредством MTD, но какими бы многообещающими ни казались эти идеи, их реализация сопряжена с преодолением множества различных трудностей. В частности, MTD повышает сложность системы с точки зрения выстраивания обороны, порождает дополнительные задачи, связанные с координацией, и не является панацеей — ведь атакующие в ответ тоже будут менять свои технологии.

Повышение сложности

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

Внедрение концепции MTD будет способствовать появлению класса продвинутых взломщиков, которые начнут проводить дополнительные инвестиции на этапе разведки и разрабатывать стратегию нацеленных атак. Однако в этом случае создание неопределенности приведет к существенному повышению затрат взломщиков и может сделать атаку нерентабельной.

Борьба с интеллектуальными противниками

Некоторые предпосылки, оправдывающие использование MTD, основаны на регистрации действий, предпринимаемых сегодня противником в отношении статических систем. Зная, что атакующие чаще всего полагаются на данные разведки, имеет смысл затруднить им сбор информации и повысить ее стоимость за счет использования технологий MTD. Важно помнить, что противник также будет адаптировать и менять свои процедуры, приспосабливая их к особенностям новой модели обороны.

Ко всем известной эволюции «меча и щита» следует отнестись со всей серьезностью. В сложной игре атакующих и обороняющихся нужно найти оптимальный баланс между краткосрочным выигрышем, сложностью и стоимостью решений, не ставя себя в положение, в котором вы в дальнейшем будете испытывать одни неудобства.

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

Определение метрик для MTD

Измерение эффективности и производительности систем имеет большую важность для их выбора, принятия и последующей эволюции. Оценка уровня безопасности, однако, является весьма непростой задачей — чтобы оценить эффективность MTD, нужно проанализировать изменения видимой части системы (объекта атаки) и учесть сложность и затраты, с которыми придется столкнуться атакующим и обороняющимся. Критерии производительности важны всегда, но для MTD они приобретают особое значение, поскольку используются для организации обратной связи в процессе дальнейшей адаптации.

Необходимость координации

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

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

***

При правильном проектировании и успешном внедрении концепция MTD инициирует гораздо более масштабные изменения, чем позволяет сегодняшняя природа системной защиты. Похоже, будущее MTD во многом будет зависеть от нашей способности эффективно управлять сложностью, автономностью и динамичностью компьютерной инфраструктуры в различных контекстах и в разных операционных условиях. Успешное внедрение динамичных средств защиты типа «движущаяся цель» изменит способ эксплуатации и обеспечения безопасности сетей.

Литература

  1. S. Jajodia et al. Moving Target Defense: Creating Asymmetric Uncertainty for Cyber Threats, Springer, 2011.
  2. K. Trovato, IP Hopping for Secure Data Transfer, US Patent App. 09/973,311, 10 Apr. 2003.

Марко Карвальо, Ричард Форд ({mcarvalho, rford@fit.edu) — сотрудники кафедры информатики и кибербезопасности, Технологический институт Флориды.

Marco Carvalho, Richard Ford, Moving-Target Defenses for Computer Networks. IEEE Security & Privacy, March/April 2014, IEEE Computer Society. All rights reserved. Reprinted with permission.