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

По мере роста популярности облаков связанные с ними нюансы безопасности становятся все более очевидными. В опросе, недавно проведенном Prism Microsystems, 58% респондентов отметили, что больше всего их беспокоит то, что гипервизор создает точку входа на разные машины [2]. Более половины респондентов также уверены, что виртуализация сформирует новый уровень, который может подвергаться атакам, а распространение виртуализованных сред приведет к ухудшению видимой безопасности. Но, даже несмотря на то что участники опроса высказали такую обеспокоенность, 58% из них пытаются обеспечить безопасность виртуальных систем, реализуя традиционные решения защиты. Подобное отношение открывает новые возможности для организации атак.

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

Традиционная защита и виртуализация

Центры обработки данных обычно имеют множество серверных ферм, защищенных по периметру межсетевыми экранами, демилитаризованными зонами, системами обнаружения и предотвращения вторжений (Intrusion Detection System/Intrusion Prevention System, IDS/IPS) и инструментальными средствами мониторинга сети [3]. Административный доступ, как правило, осуществляется по локальной корпоративной сети, с тем чтобы ограничить доступ извне. Однако виртуализация сводит на нет преимущества такой конфигурации.

Действительно, один сервер теперь может предоставлять сервисы множеству участников, и в среде публичного облака концепция сетевого периметра теряет всякий смысл [4] — отсутствует физическая изоляция виртуальных машин друг от друга. Поскольку виртуальная среда поддерживает множество виртуальных машин разных организаций на одном сервере, необходимо обеспечивать безопасность на уровне виртуальной машины, а не на периметре. Ситуация становится еще хуже, когда пользователи облака создают Web-приложения. Несмотря на то что о подобном риске хорошо известно, нужно лучше представлять, какие уязвимые места могут возникнуть из-за виртуализации. Без такого понимания безопасность публичного облака никогда не будет обеспечена должным образом.

Уязвимые места и виртуализация

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

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

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

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

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

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

Безопасность в виртуализованной среде

Можно преобразовать основные эшелоны безопасности в традиционных центрах обработки данных (межсетевые экраны, IDS/IPS, обнаружение вредоносных программ и мониторинг сетей и систем, анализ регистрационных журналов), для того чтобы поддерживать среду публичного облака [4]. Межсетевые экраны должны быть двунаправленными и устанавливаться в каждом экземпляре виртуальной машины. Схема управления должна быть централизована, для того чтобы гарантировать, что все виртуальные машины имеют одинаковый уровень защиты. Конфигурация межсетевого экрана должна обеспечивать изоляцию виртуальной машины; работу во всех IP-протоколах; создание политик для каждого сетевого интерфейса; предотвращение атаки на отказ в обслуживании; выявление разведывательного сканирования в сервисах облака.

Помимо уязвимых мест защиты, провайдеры облака должны учитывать производительность. Существующие решения защиты от вредоносных программ были созданы для автономных машин, поэтому одновременная работа таких сканеров безопасности на всем предприятии может значительно снизить производительность приложений. Чтобы решить эту проблему, провайдеры облака должны выполнять ресурсоемкое сканирование на уровне гипервизора [4]. Кроме того, виртуальные машины и серверы, как правило, используют одни и те же операционные системы и программное обеспечение (в том числе Web-приложения), поэтому развертывая защиту от вредоносных программ на уровне гипервизора, провайдеры могут поддерживать безопасность всего публичного облака практически на том же уровне, который обеспечивается сейчас в конфигурации ЦОД, минимизируя уязвимые места, связанные с реконфигурацией и пассивными машинами. Точно так же они должны развертывать IDS/IPS на виртуальных машинах, чтобы исключить возможность использования уязвимых мест.

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

Литература

  1. P. Mell, T. Grance, The NIST Definition of Cloud Computing; ver. 15. US Nat' l Inst. of Standards and Technology, 7 Oct. 2009.
  2. 2010 State of Virtualization Security. The #1 AI Magazine IEEE Cutting Edge stay on the IEEE Intelligent Systems provides peer-reviewed, cutting-edge articles on the theory and applications of systems that perceive, reason, learn, and act intelligently of Artificial Intelligence Survey, Prism Microsystems, Apr. 2010.
  3. J.W. Rittinghouse, J.F. Ransome, Cloud Security Challenges. Cloud Computing: Implementation, Management, and Security, CRC Press, 2009.
  4. Cloud Computing Security: Making Virtual Machines Cloud-Ready, Trend Micro, Aug. 2009.

Лори М. Кауфман (lori.kaufman@ieee.org) – директор по вопросам безопасности ИТ компании BAE Systems.

Lori M. Kaufman. Can Public-Cloud Security Meet Its Unique Challenges? IEEE Security & Privacy, July/August 2010, IEEE Computer Society, 2010. All rights reserved, Reprinted with permission.