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

Комплекс проблем, связанных с обеспечением безопасности любых виртуальных систем, в том числе и виртуализованных серверов стандартной архитектуры, по целому ряду причин существенно сложнее, чем это может показаться на первый взгляд. Во-первых, в них по сравнению с традиционными системами резко возрастает число потенциальных угроз, причем множество возникающих проблем разделено тонкой гранью на два очень близких подмножества, названия которых адекватно перевести непросто. Все направление в целом именуется как Virtualization Security, что можно перевести как «виртуализация и безопасность», а подмножества обозначаются как virtualizing security и securing virtualization. Названия эти составлены из одних и тех же слов, однако первое, скорее всего, можно назвать как «безопасность виртуализованных систем», а второе – «виртуализация технологий безопасности».

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

Джошуа Корман, должность которого называется «главный стратег по безопасности», работает в отделении IBM Internet Security Systems, появившемся в составе IBM после покупки в 2006 году компании ISS, созданной в 1994 году. ISS получила известность как создатель сетевого сканера Internet Scanner, позволяющего выявлять уязвимости сетей и помогающего поднять их надежность. Кроме того, на базе ISS сложилось подразделение Х-Force – лаборатория для исследований в области безопасности, предоставляющая пользователям информацию об угрозах безопасности их сетей. X-Force – одна из старейших и наиболее известных в мире коммерческих исследовательских групп по вопросам безопасности, которая занимается анализом уязвимостей и угроз, разрабатывает технологии оценки и обеспечения безопасности. Деятельность X-Force касается исследований причин нападений, включая политические, о чем свидетельствует выпущенный в четвертом квартале 2008 года отчет, полностью посвященный методам ведения кибернетической войны, применявшимся во время конфликта на территории Южной Осетии. Однако Кормана интересуют менее политизированные, но не менее острые проблемы, и одним из своих выступлений он так сумел растревожить муравейник индустрии информационной безопасности, что был занесен еженедельником Network World в список десяти наиболее заметных ИТ-персон 2008 года.

На конференции Interop 2007 вы сделали доклад «Опасно на любой скорости; семь грязных секретов отрасли информационной безопасности», получивший большой резонанс. Название вызывает в памяти знаменитую книгу Ральфа Надера «Опасно на любой скорости», которая вышла в 1965 году и была посвящена автомобильной промышленности, вызвав потом заметные подвижки в этой отрасли. Почему вы сравнили информационную и автомобильную безопасность?

Аналогия действительно не случайна. Общность в том, что, как и автомобильная индустрия, информационная безопасность до последнего времени развивалась бессистемно, импульсивно, в ответ на появление тех или иных вновь обнаруживаемых угроз и, как следствие, в целом не слишком эффективно. Что-то работает отлично, а что-то вообще не работает, на что-то цены разумны, а что-то стоит неоправданно дорого и так далее. Глядя на это, я осознал, что и эта индустрия так или иначе должна обрести соответствующую внешним условиям зрелость, как это произошло в автомобильной промышленности. Когда-то не было ремней безопасности, а потом их надо было покупать отдельно, и вообще не было никаких стандартов на безопасность, ни крэш-тестов, ни всего остального. Теперь в автомобильной промышленности мы видим совершенно иную картину, а в ИТ все по-прежнему. Сначала вы должны создать ту или иную инфраструктуру, в простейшем случае купить компьютер, а потом позаботиться о безопасности, отсюда неоправданная стоимость и высокая сложность. В той моей презентации на Interop 2008 я выступил с призывом придать информационным технологиям тот уровень зрелости по части безопасности, который мы наблюдаем в автомобилях, авиации, морском транспорте, да где угодно. Я не случайно назвал «нулевым секретом» то, что производители должны перестать думать исключительно о прибыли, что им пора сосредоточиться на реальных нуждах потребителей. Никто не спорит, любая деятельность в бизнесе так или иначе связана с получением прибыли, но нужно соблюдать баланс. А пока же индустрия информационной безопасности ставит на первое место доходы, а на второе – потребности клиентов.

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

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

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

Виртуализация привносит с собой непредвиденные прежде риски. Так было с древнейших времен, сначала кто-то делал изобретение, потом приходило осознание скрытых в нем угроз: изобретатели автомобилей и самолетов на первых порах тоже не думали о безопасности. Такие мысли возникают, когда некоторая новация соприкасается с внешней средой. Известно, что положительный эффект от внедрения виртуализации состоит в том, что она позволяет избавить стандартные серверы от их врожденных недостатков, поскольку с ее помощью на ограниченном количестве физических серверов можно расположить огромное число виртуальных серверов, получая при этом экономию, больший КПД, уменьшение затрат на аппаратное обеспечение, на энергию и все остальное. Но одновременно она открывает дополнительные риски, которые можно разделить на две категории. Возникновение первой группы рисков связано с тем, что виртуальная среда динамична, а многие привычные для нас методы администрирования рассчитаны на статические системы. Риски этого сорта усугубляются тем, что автоматизация управления еще недостаточно развита, и виртуализация требует существенного человеческого участия, а 90% системных нарушений порождают люди. И дело не только в злонамеренности, а скорее в том, что люди не подготовлены к работе в новых условиях. Когда все серверы собраны в одну стойку и виртуализованы, создается ложное впечатление, будто кроме специалистов по виртуализации теперь никто больше и не требуется. Однако специалисты по серверной виртуализации не могут обладать требуемой для обеспечения безопасности квалификацией.

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

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

Какие уязвимости можно считать специфическими для виртуальной среды?

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

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

Программное обеспечение системы управления виртуальными машинами имеет обычные уязвимости, как и обычное ПО, с тем отличием, что здесь особо угрожающим является проникновение, при котором взломщик не просто пробивает брешь, а получает доступ ко всему внутреннему пространству – получает «ключи от замка» (keys to the castle). Другая часть уязвимостей относится к операционным угрозам, и она возникает в случаях, когда персоналу не хватает знаний и умений для работы с виртуальной средой, и тогда могут возникнуть эпизоды, подобные «эффекту домино». Специфические уязвимости виртуальных машин связаны с операционными угрозами, они могут быть вызваны неконтролируемой экспансией виртуальных машин, неопределенностью состояния (приостановлена/активна), динамической миграцией (Live Migration), подверженностью атакам типа воспроизведения (Replay Attacks) и удержания данных (Data Retention). Наконец, не следует забывать, что виртуальные машины могут похищаться поодиночке или даже целыми группами. Трудно поверить, но гипервизор, адаптированный к определенной аппаратной платформе, тоже может быть атакован с использованием так называемых «руткитов» (Hardware Virtualization Rootkits). Обнаружение и борьба с ними на пользовательском уровне очень сложны, и разумнее делать более защищенные гипервизоры. Скажем, в VMware изначально проектировали свои продукты с учетом необходимости в обеспечении безопасности.

Виртуализация средств безопасности и безопасность технологий виртуализации

Чем различаются две составляющие дисциплины Virtualization Security – virtualizing security и securing virtualization?

Виртуализация средств безопасности есть не что иное, как распространение существующих технологий безопасности на виртуальные серверы. Новым является то, что виртуализация повышает КПД серверов, и, как следствие, объем потенциальных рисков в пересчете на единицу оборудования возрастает пропорционально возрастанию величины КПД. Для обеспечения этого типа безопасности используются практически все известные унаследованные технологии, с поправкой на то, что нагрузка на эти средства возрастает. Что касается безопасности виртуализации, то учет особенностей виртуальных систем зависит от особенностей их собственного поведения. Это еще можно назвать интегрированной безопасностью (Integrated Security), поскольку в основе лежит не защита от отдельных уязвимостей, а рассмотрение системы как единого целого. Если мы защищаем физические серверы, то, поставив необходимые межсетевые экраны, мы можем быть спокойны за то, что происходит за ними, но с виртуальными серверами дело обстоит иначе – они динамичны и могут оказывать влияние друг на друга. Поэтому, помимо технологий, в обеспечении безопасности виртуализации заметную роль играют услуги профессиональных экспертов.

Какая роль на этом фоне отводится специализированным устройствам наподобие Virtual Security Appliance или Security Virtual Machine (SVM)?

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

Что же делать?

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


Уязвимости виртуальной среды