Содержание к диссертации
Введение
ГЛАВА 1. Анализ безопасности средств виртуализации в системах облачных вычислений 10
1.1 Анализ безопасности систем облачных вычислений 12
1.2 Уязвимости средств виртуализации в облаках 15
1.3 Традиционные средства защиты в облаках
1.3.1 Использование межсетевых экранов в облаках 24
1.3.2 Использование антивирусных средств в облаке 26
1.3.3 Использование систем обнаружения вторжений в облаке 28
1.3.4 Современные защищенные гипервизоры
1.4 Модель угроз средствам виртуализации в системах облачных вычислений 33
1.5 Постановка задачи 41
1.6 Выводы к первой главе 42
ГЛАВА 2. Архитектура защищенного гипервизора 43
2.1 Аппаратная технология виртуализации 44
2.2 Архитектура современных гипервизоров
2.2.1 Архитектура гипервизора Хеп 56
2.2.2 Архитектура гипервизора Hyper-V 60
2.2.3 Архитектура гипервизора KVM 63
2.2.4 Архитектура гипервизора VMware ESXi
2.3 Формальная модель атаки на средства виртуализации 70
2.4 Оценка степени устойчивости гипервизоров к атакам 81
2.5 Архитектура мультидоменного гипервизора 86
2.6 Выводы ко второй главе 91
ГЛАВА 3. Безопасная обработка запросов в системах облачных вычислений 92
3.1 Архитектура современных облачных платформ 94
3.1.1 Архитектура VMware vSphere 97
3.1.2 Архитектура Ubuntu Enterprise Cloud 99
3.1.3 Архитектура Microsoft Private Cloud 100
3.1.4 Архитектура Xen Cloud Platform 102
3.1.5 Моделирование систем облачных вычислений
3.2 Обработка запросов в системах облачных вычислений 105
3.3 Формальная модель безопасной обработки запросов 114
3.4 Достаточное условие защищенности систем облачных вычислений от атак на средства виртуализации 120
3.5 Выводы к третьей главе 123
ГЛАВА 4. Обеспечение монотонности убывания привилегий в системах облачных вычислений 125
4.1 Методика обеспечения монотонного убывания привилегий в ходе обработки запросов 125
4.2 Опытный образец мультидоменного гипервизора 128
4.3 Выводы к четвертой главе 136
Заключение 137
Условные обозначения и сокращения 138
Список использованных источников
- Современные защищенные гипервизоры
- Архитектура гипервизора Hyper-V
- Архитектура Ubuntu Enterprise Cloud
- Опытный образец мультидоменного гипервизора
Введение к работе
Актуальность темы исследования. В настоящее время облачные технологии интенсивно развиваются и внедряются во многие коммерческие компании и государственные организации, поэтому обеспечение информационной безопасности систем облачных вычислений (СиОВ) является критически важной задачей. Как правило, защита СиОВ обеспечивается с помощью межсетевых экранов, криптографических средств и других механизмов, не учитывающих возможности внутреннего нарушителя.
Основой для построения систем облачных вычислений являются средства виртуализации (гипервизоры), которые обеспечивают работу виртуальных машин (ВМ) в СиОВ. Нарушители, имеющие доступ к ВМ, могут совершать атаки на средства виртуализации путем эксплуатации уязвимостей (таких как, CVE-2011-1751 в KVM и CVE-2012-0217 в Хеп), список которых пополняется каждый год. Пользователи обладают разными правами доступа к ресурсам СиОВ, однако гипервизоры назначают всем ВМ одинаковые привилегии, причем эти привилегии чаще всего избыточны. Кроме того, гипервизоры обладают исключительными привилегиями во внутренней инфраструктуре СиОВ, что открывает нарушителю, в случае успешной атаки на гипервизор, доступ практически ко всем информационным ресурсам СиОВ. Следовательно, для обеспечения безопасности облачных вычислений необходимо контролировать привилегии не только пользователя, но и компонентов гипервизора, обрабатывающих запросы ВМ, а также процесс их обработки во внутренней инфраструктуре СиОВ.
Из вышеизложенного следует актуальность постановки задачи по разработке методов построения гипервизоров для облачных вычислений, позволяющих нейтрализовать атаки на средства виртуализации, обусловленные успешной эксплуатацией уязвимостей. Актуальность подтверждается и приказом ФСТЭК № 21 от 18 февраля 2013 г.
Тема работы соответствует пунктам 6 и 13 паспорта специальности 05.13.19 «Методы и системы защиты информации, информационная безопасность».
Степень разработанности темы исследования. Известными отечественными и зарубежными учеными, занимающимися проблемами безопасности облачных вычислений и моделированием безопасности
распределенных систем, являются В.Е. Козюра, В.А. Курбатов, В.И. Будзко, B.C. Заборовский, Ф. Мартинелли, Р.Б. Ли, Р. Сэйлер и С. Вогл.
В современных работах защиту гипервизоров предлагается обеспечить с помощью средств мандатного контроля доступа (проект sHype) или криптографических средств (проект Terra). Таким образом, в этих работах решаются задачи изоляции ВМ друг от друга и защиты ВМ от воздействий со стороны гипервизоров, но не учитываются особенности атак на средства виртуализации.
Целью работы является защита систем облачных вычислений от атак, направленных на средства виртуализации, с использованием мультидоменного гипервизора, обеспечивающего монотонное убывание привилегий в ходе обработки запросов пользователей. Для достижения поставленной цели в работе решались следующие задачи:
-
Разработка модели угроз для гипервизоров в системах облачных вычислений, учитывающей атаки на средства виртуализации.
-
Создание формальной модели атак на средства виртуализации и разработка оценки степени устойчивости гипервизоров к атакам.
-
Разработка архитектуры мультидоменного гипервизора, обеспечивающего защиту от атак на средства виртуализации.
-
Построение формальной модели обработки запросов в СиОВ.
-
Разработка методики обеспечения безопасной обработки запросов в СиОВ на основе принципа наименьших привилегий путем монотонного убывания привилегий в ходе обработки запросов.
-
Создание опытного образца мультидоменного гипервизора и его апробация в СиОВ.
Научная новизна диссертационной работы состоит в следующем:
обоснована необходимость распределения компонентов гипервизора по доменам с различными привилегиями, что обеспечивает защиту от атак на средства виртуализации, в соответствии с разработанной формальной моделью атаки;
предложена оценка степени устойчивости гипервизоров к атакам;
впервые предложена архитектура мультидоменного гипервизора, обеспечивающая защиту от атак на средства виртуализации;
разработана формальная модель безопасной обработки запросов, позволившая сформулировать принцип монотонного убывания привилегий;
разработана методика обеспечения монотонности убывания привилегий при обработке запросов.
Практическая значимость результатов определяется возможностью использования предложенных моделей и методики для сравнительной оценки устойчивости гипервизоров различной архитектуры к атакам внутреннего нарушителя и для практической реализации мультидоменного гипервизора, обеспечивающего защиту СиОВ от атак на средства виртуализации.
Результаты работы представляют практическую ценность для разработчиков защищенных систем облачных вычислений и средств виртуализации.
Внедрение результатов исследований. Предложенный подход к построению гипервизоров для СиОВ, защищенных от атак на средства виртуализации, нашёл применение при разработке методов работы программно-конфигурируемых сетей в рамках НИР «Анализ и разработка методов и алгоритмов управления сетевыми ресурсами и потоками данных в программно-конфигурируемых компьютерных сетях» (шифр «2012-1.4-07-514-0021-025») по государственному контракту от 14 июня 2013 г. № 07.514.11.4151.
Предложенная модель атаки на средства виртуализации и методика практического использования мультидоменного гипервизора использовались в рамках НИОКР «Управление-Контроль» ООО «РОСРЕЧИНФОКОМ»; оценка степени устойчивости гипервизора к атакам и архитектура мультидоменного гипервизора использовались при разработке распределенной вычислительной системы в ЗАО «РНТ», что подтверждается соответствующими актами об использовании. Разработанная модель безопасности обработки запросов в СиОВ и предложенный принцип мультидоменности для обработчиков запросов использовались при проведении теоретических и практических занятий по дисциплине «Безопасность систем распределенных облачных вычислений» на кафедре «Информационная безопасность компьютерных систем» ФГБОУ ВПО «СПбГПУ» в рамках направлений 090900 «Информационная безопасность» и 090300 «Информационная безопасность вычислительных, автоматизированных и телекоммуникационных систем».
Методология и методы исследования. Для решения поставленных задач использовались системный анализ, теория графов, теория множеств, теория автоматов и методы математического моделирования.
Положения, выносимые на защиту:
-
Формальная модель атаки на средства виртуализации, доказывающая необходимость понижения привилегий эмуляторов устройств в гипервизорах.
-
Оценка степени устойчивости гипервизора к атакам со стороны ВМ, позволяющая сравнить различные реализации гипервизоров.
-
Архитектура мультидоменного гипервизора, обеспечивающая защиту от атак на средства виртуализации.
-
Теорема о монотонности убывания привилегий в ходе обработки запроса пользователя как достаточном условии защищенности от атак на средства виртуализации.
-
Методика обеспечения монотонного убывания привилегий, использующая архитектуру мультидоменного гипервизора.
Степень достоверности научных положений диссертации определяется теоретическим обоснованием предлагаемого аналитического аппарата и результатами их апробации при практическом воплощении.
Апробация результатов работы. Основные теоретические и практические результаты диссертационной работы обсуждались на конференциях:
VI Международной конференции «MMM-ACNS-2012»;
XXI научно-технической конференции «Методы и технические средства обеспечения безопасности информации» 24 - 29 июня 2012 г.;
XIV, XV всероссийской конференции «РусКрипто-2012/2013»;
Санкт-Петербургской межрегиональной конференции «Информационная безопасность регионов России 2011»;
XIV Национальном форуме информационной безопасности «ИНФОФОРУМ-2012».
Публикации. По теме диссертации опубликовано 10 научных работ, 4 из которых опубликованы в рецензируемых журналах ВАК РФ.
Объем и структура. Диссертация состоит из введения, четырех глав, заключения и списка источников из 72 наименований.
Современные защищенные гипервизоры
Роль СиОВ в современном мире информационных технологий трудно переоценить. За счет своей экономической эффективности они внедряются во все большее количество областей человеческой деятельности.
Облака сочетают в себе множество технологий аппаратного и программного обеспечения и в совокупности представляют собой сложную систему, которая содержит большое количество уязвимостей. Поскольку облачные системы в своем составе имеют привычные операционные системы и web-сервисы, то для облаков присущи уязвимости типичные для этих систем. Помимо типичных уязвимостей облака обладают целым рядом уязвимостей, специфичных только для них.
Ключевая технология для облачных сред — виртуализация. Именно она создает ту самую характеризующую облака свободу, позволяя перемещать работающие приложения с одного сервера на другой, причем без прекращения работоспособности всего приложения. Облачная система, как правило, состоит из нескольких узлов, каждый из которых может располагаться в различных центрах обработки данных, в том числе и у других провайдеров. Провайдеры облачных сервисов могут не иметь собственных центров обработки данных (ЦОД), а арендовать серверы или стойки у нескольких провайдеров уже сетевой инфраструктуры. В результате элементы реальной инфраструктуры могут быть самыми разнообразными. Атаке могут подвергнуться как элементы сетевой инфраструктуры провайдера, который предоставляет облачные услуги, так и сама среда виртуализации [5].
Актуальность исследования уязвимостей в системах облачных вычислений и средств виртуализации обосновывается множественными инцидентами безопасности имевших место в недавней истории. Далее приводится краткое описание наиболее существенных из них: - Декабрь 2009. Неизвестные злоумышленники смогли получить несанкционированный доступ к публичному облачному сервису Amazon Elastic Compute Cloud, а также к закрытой консоли для управления им. Злоумышленники первоначально взломали не сам сервис Amazon как таковой, а один из сайтов, размещенных на его мощностях, а уже через взломанный сайт получили доступ и к самому сервису Amazon. После взлома был создан виртуальный экземпляр операционной системы, в которой было размещено программное обеспечение Zeus для создания и управления ботнетами [6]. - Апрель 2011. Сбои в работе провайдера облачных сервисов Amazon Web Services. Отсутствие работоспособности наблюдалось пользователями нескольких Availability Zones в регионе EAST-1 на восточном побережье США [7,8]. - Апрель 2011. Атакованы сервера Sony Computer Entertainment расположенные в информационном центре AT&T в Сан Диего. В результате проникновения в систему хакеров сервис Play Station Network был отключен на несколько недель. Sony официально сообщила пользователям, что их личные данные, включая номера кредитных карт, возможно, были похищены злоумышленниками. Информация касалась владельцев 10 миллионов учетных записей. Компания Sony понесла огромные финансовые и репутационные потери [7]. Злоумышленники осуществили взлом системы, используя уязвимость в старой версии Apache, который был установлен на одном из серверов в системе и давно не обновлялся [9]. - Март 2011. Отказ в работе популярной облачной PaaS платформы Heroku [7, Ю]. - Март 2011. Проблемы в работе и временный отказ в обслуживании сервисов GoGrid - одного из лидеров на рынке сервисов IaaS, специализирующегося на облачных инфраструктурных решениях [7, 11]. - Январь 2011. Часть клиентов испытывали проблемы с доступом к пакету Microsoft Business Productivity Online Suite, новое название этого сервиса - Office 365. Сервисами Microsoft Business Productivity Online Suite пользуются крупнейшие мировые компании, в том числе департамент сельского хозяйства США, который планирует перевести 120 000 сотрудников на облачные сервисы Microsoft Microsoft Business Productivity Online Suite [7, 12]. - Январь 2012. Крупный облачных хостинг, включающий сервисы дискового хранилища был атакован, в результате чего учетные данные пользователей были доступны нарушителям. Компания сообщила клиентам о необходимости сменить пароли [13]. - Апрель 2013. Twitter аккаунт крупного американского издательства
Associated Press был взломан, в результате чего в сети появилось дезинформационное сообщение об атаке на Белый Дом в США [14].
Как можно видеть из приведенных примеров, уязвимости в системах облачных вычислений могут приносить непоправимый ущерб и быть причиной захвата управления всем облаком. За последние несколько лет уже накопились сотни подобных инцидентов, каждый из которых стал причиной финансовых потерь для компаний провайдеров [15].
Архитектура гипервизора Hyper-V
Важной особенностью аппаратной поддержки виртуализации является тот факт, что изначально процессор в любом из режимов ВМ и МВМ может обращаться ко всей оперативной памяти установленной на компьютере. Гипервизор отвечает за то, что разделяет имеющуюся физическую оперативную память между всеми ВМ. Для разделения памяти между ВМ изначально использовалась техника теневых таблиц страниц (Shadow Page Tables). Идея этой технологии заключалась в том, что во время работы процессора в защищенном режиме ВМ значения всех таблиц страниц и связанных с ними служебных регистров подменялись на значения сформированные гипервизором с учетом внутренней структуры распределения памяти между всеми ВМ. Этот механизм работал не достаточно производительно, поэтому Intel и AMD разработали технологии, ускоряющие виртуализацию физической памяти для ВМ. Обе технологии позволяют составлять набор таблиц страниц, которые указывают процессору, как нужно преобразовывать виртуализированные физические адреса для режима ВМ в реальные физические адреса режима МВМ. Такой подход позволяет ускорить механизм трансляции адресов за счет реализации его на уровне микроархитектуры процессора. Таким образом, каждая ВМ получает свою собственную область физической памяти, которая отделена от области памяти, с которой работает сам гипервизор и другие ВМ. Эта область памяти, являясь линейной для ВМ, может быть сильно распределена по страницам реальной физической памяти компьютера. Для этих технологий трансляции страниц применяются кэши TLB, что делает их очень похожими на традиционную технологию виртуальной памяти. Основная логика работы кода внутри ВМ с реальным оборудованием в системе представлена в левой части рисунка 14.
Драйвер некоторого оборудования (например, сетевой карты) внутри ВМ взаимодействует с эмулятором сетевой карты, который работает внутри гипервизора. Эмулятор для выполнения ряда операций (например, отправки сетевых пакетов, в случае эмулятора сетевой карты) обращается к драйверу реального оборудования (например, реальной сетевой карты), который работает как часть гипервизора. Такая схема имеет явную проблему с производительностью, поэтому и Intel и AMD разработали технологии позволяющие ускорить работу ВМ с реальным оборудованием (Intel VTd и AMD-Vi соответственно). Идея этих технологий заключается в том, что они позволяют отдать в монопольное управление заданной ВМ выбранное устройство, установленное на компьютере (правая часть рисунка Рисунок 15). Технологии работают за счет расширений контроллера DMA в чипсете (так называемый «южный мост» [44], расположенный на материнской плате). На рисунке 15 представлена общая схема работы системы с DMA контроллером: процессор и устройства могут обращаться к оперативной памяти напрямую и независимо друг от друга. Расширение контроллера DMA позволяет указывать дополнительную схему трансляции адресов, при обращении устройств к памяти. Таким образом, гипервизор может настроить трансляцию адресов для заданного устройства аналогично тому, как была настроена трансляция адресов для ВМ, которой должно быть отдано устройство. Так же технология включает в себя возможность делать не только трансляцию адресов, но и переназначение прерываний. Эта технология позволяет уменьшить объем кода гипервизора за счет уменьшения количества необходимых эмуляторов устройств в нем. К сожелению, эта технология так же не лишена недостатков [45].
Как говорилось ранее в этой главе Intel и AMD представили целую группу технологий, включающую не только расширения процессора и чипсета, но и ряд дополнительных аппаратных средств. Одним из таких средств является технология Intel TXT (Trusted execution Technology) и соответствующее ей расширение процессора SMX (Safe Mode extensions). Технология ТХТ предназначена для защиты гипервизоров, и должна применяться для систем облачных вычислений. Суть технологии заключается в том, что она проверяет начало загрузки системы и гипервизора, чтобы убедиться в том, что гипервизор не был модифицирован. Уязвимости этой технологии позволяют нарушителю обойти проверки ТХТ и модифицировать код гипервизора на диске. В рамках технологии ТХТ процессор записывает собственное поведение с момента старта и до момента завершения инициализации гипервизора. Записанное поведение сохраняется в защищенном хранилище модуля ТРМ (Trusted Platform Module). Затем при каждом запуске процессор сверяет свое поведение, с ранее записанным и если оно не совпадает, то процессор не позволяет запуститься системе и регистрирует системную ошибку. Эта технология позволяет защитить гипервизоры от boot kit атак, связанных с внесением изменений в загрузочную запись на диске или BIOS [46].
Еще одним примером расширений аппаратной платформы для поддержки виртуализации и облачных технологий является Intel- VTc (Virtualization Technology for Connectivity), которая не является расширением процессора или чипсета, а представляет собой особую сетевую карту. Эта сетевая карта обладает всего двумя сетевыми разъемами, но позволяет системе использовать множество виртуальных сетевых карт. Другими словами, эта сетевая карта вместо гипервизора позволяет перенаправлять сетевые пакеты между несколькими виртуальными машинами, каждая из которых работает со своей сетевой картой. Технология позволяет значительно повысить производительность системы и снизить нагрузку на гипервизор.
Таким образом, аппаратная технология виртуализации представляет собой удобный инструмент, эффективное использование которого позволяет обеспечить не только высокую производительность системы, но и обеспечить надлежащий уровень безопасности для гипервизора. Это означает, что при разработке гипервизора, защищенного от атак на средства виртуализации, использование аппаратной технологии виртуализации необходимо выполнять адекватно с учетом указанных особенностей.
Архитектура Ubuntu Enterprise Cloud
Таким образом, каждая атака на средства виртуализации основана на уязвимости в артефакте, но не каждый артефакт содержит уязвимость. Следовательно, множество артефактов в средстве виртуализации сюръективно отображается на множество уязвимостей в гипервизоре, используя которые нарушитель может совершать атаки на внутреннюю инфраструктуру СиОВ. Поэтому термин «артефакт» вполне правомочно, поскольку его использование в обработке сигналов звучит так: воспроизводимый при определённых условиях дефект, шум в сигнале, изображении, звукозаписи, причиной которого являются систематические помехи или особенности используемых технических средств.
Количество артефактов f$u в эмуляторе и может быть получено путем анализа исходного кода гипервизора или путем подсчета таких событий из множества Vg, при обработке которых состояние эмулятора изменяется. Поскольку артефакты в эмуляторах, располагающихся в одном компоненте, увеличивают подверженность этого компонента атакам, то оценку степени устойчивости каждого компонента к атакам предлагается вычислять так:
В качестве оценки степени устойчивости гипервизора к атакам предлагается использовать наименьшее среди компонентов с артефактами и самым высоким уровнем привилегий значение с. В силу особенностей технологии виртуализации операционных систем, любое средство виртуализации должно обрабатывать сотни различных событий от ВМ, поэтому его код должен занимать не одну тысячу строк. В код средства виртуализации должны быть включены эмуляторы устройств, к которым относятся как синтетические (еще их называют паравиртуализованными), так и эмуляторы реально существующих устройств. Объем кода эмуляторов устройств может насчитывать не один десяток тысяч строк кода. Конечно, такой объем кода не сравним с объемами кода современных популярных операционных систем, но это и не маленькая программа, которую можно хорошо протестировать и проверить.
Общее количество артефактов в гипервизоре может быть посчитано путем анализа исходного кода. Если гипервизор не содержит исходного кода, то общее количество артефактов может быть оценено, используя аналогичные эмуляторы с открытым исходным кодом и спецификацию устройства. Так же при проведении практических расчетов оценивалось количество артефактов путем анализа ассемблерного кода эмуляторов гипервизора.
Из предложенной оценки степени устойчивости гипервизора к атакам на средства виртуализации следует, что для улучшения значения этого показателя достаточно уменьшать объем кода, который обрабатывает события от ВМ.
Уменьшение объема кода гипервизора стало возможным после появления аппаратной поддержки технологий виртуализации (Intel-VT и AMD-V). С развитием этих технологий из средств виртуализации стало возможным убрать значительную часть кода, отвечающего за обработку и доставку виртуальных прерываний и исключений, за виртуализацию физической памяти виртуальной машины, за эмуляцию реального режима работы процессора (Real Mode), за обработку виртуального контроллера прерываний, итд. Все это раньше приходилось эмулировать и обрабатывать гипервизору. Так же аппаратные технологии (например, Intel-VTd и Intel-VTc), позволяющие передавать реальные устройства в монопольное управление виртуальной машине, что сокращает объем кода гипервизора за счет исключения из него кода эмуляторов устройств. В частности, при помощи технологии Intel-VTc, из гипервизора можно убрать код эмулятора сетевой карты, который, например, в qemu занимает более 7000 строк кода.
Гипервизоры в общем случае могут значительно отличаться по объему используемого кода, а так же по набору поддерживаемых технологий. Объем кода связан с потенциальным количеством уязвимостей в этом коде. С другой стороны не каждый блок кода, содержащий ошибку, может быть использован нарушителем для атаки. С другой стороны использующиеся в облаках гипервизоры не сильно отличаются по объему кода, но могут отличаться по распределению этого кода по компонентам и уровням привилегий, что и вызывает необходимость их оценивать предложенным способом.
При использовании предложенной оценки для средств виртуализации, можно говорить, что (с — 1 соответствует некоторому «идеальному» компоненту в средстве виртуализации, который ничего не эмулирует, при этом все инструкции в рамках виртуальной машины выполняются прямо на процессоре и оборудовании, которое само отвечает за его виртуализацию. Такое «идеальное» средство виртуализации, можно построить путем эмуляции только небольшого числа событий, при этом код эмуляции не должен менять состояние гипервизора. Достоинство такого средства виртуализации в том, что оно будет устойчиво к любым кибер-атакам на средство виртуализации, поскольку оно не будет менять своего состояния при обработке событий от виртуальной машины, а значит не будет возможности перейти в небезопасное состояние.
Получается, что условие с = 1 будет гарантировать устойчивость компонента гипервизора к атакам на средства виртуализации, и будет являться условием безопасности гипервизора. Поэтому для всех средств виртуализации, которые не являются «идеальными», значение (, меньше 1. Это утверждение будет верно независимо от полного количества событий, которые средство виртуализации должно обрабатывать. Такое свойство важно, поскольку технологии меняются, процессоры усложняются, а значит полное число событий, которые может эмулировать средство виртуализации будет постоянно расти.
В соответствие с предыдущими рассуждениями, значение будет увеличиваться и приближаться к значению 1, по мере большего использования аппаратной поддержки процессора и чипсета. Например, можно создать гипервизор, использующий технологию Intel-VT, который не эмулирует ни одно устройство и обрабатывает всего несколько VM_EXIT, при этом позволяет загрузить ограниченную версию популярной операционной системы. Прототип такого гипервизора был создан автором. Для такого гипервизора, автору удалось добиться значения 1 =7, складывающиеся из нескольких инструкций работы с управляющими регистрами CRO, CR3, CR4, а так же инструкциями CPUID и событием TaskSwitch. При этом для единственного компонента с = 1, поскольку ни один из обработчиков не менял состояние гипервизора или эмулятора - все обработчики событий меняли только настройки процессора для непривилегированного режима. Но таким гипервизором пользоваться в системах облачных вычислений невозможно, во-первых, потому что он не позволяет одновременно запускать несколько виртуальных машин, во-вторых, он запускает позволяет запускать не все популярные операционные системы.
Экспонента в формуле характеризует значительное повышение уязвимости компонента, при концентрации в нем большего количества артефактов. Вместе с уровнем привилегий компонентов гипервизора предложенная оценка позволяет оценить уязвимость всего гипервизора. Для этого предлагается методика, включающая построение таблицы (пример, таблица 3), и определение степени устойчивости гипервизора как наименьшего значения степени устойчивости компонента на самом высоком уровне привилегий.
Опытный образец мультидоменного гипервизора
Вследствие бурного развития систем облачных вычислений появилось множество математических моделей, описывающих различные особенности таких систем. Джо Виенман разработал аксиоматику для теории облачных вычислений и модель на ее основе. [66] В своей работе он приводит одну из наиболее обобщенных моделей для облачных вычислений. Модель, предложенная Виенманом, универсальна и может быть применима не только в области информационных технологий, но и в ряде других областей (прокате машин, электрических сетях, логистике и других), что является ее основным преимуществом. В данной модели облако определяется как структура, которая должна удовлетворять следующим аксиомам: она должна быть 1) общей вне зависимости от типа ресурса, 2) независимой от расположения, 3) доступной в любое время, 4) рентабельной, 5) доступной по запросу. При этом в структуре облака важную роль играет ориентированный граф, меняющийся во времени. Узлы графа представляют собой источники и потребители ресурсов в облаке, а дуги определяют направленные потоки перераспределения этих ресурсов. Помимо теории графов в модели облака Виенмана используются элементы других теорий: процессы Маркова, теория автоматов. Недостатком данной модели, исходя из поставленной авторами цели, является отсутствие в ней в явном виде элементов систем безопасности, таких как субъекты или объекты доступа.
В. К. Чан и его коллеги в своей статье [67] создали модель на базе теории графов, позволяющую описывать поведение программ и приложений, работающих в облачной среде. Статья сфокусирована на проблемах, связанных с тестированием приложений, помещенных в облако. Вершины графа в этой модели обозначают вычислительные узлы, характеризующиеся множеством атрибутов, дуги в графе - коммуникационные связи между вычислительными узлами. Особенностью этой модели является возможность привязать к любой дуге графа предикат, что позволяет указывать условие использования ресурса в облаке. В модели не рассматривается понятие виртуальной машины в явном виде, поэтому она не применима для достижения поставленной авторами цели.
Юингмин Ли и Омар Боукалма предлагают подход для диагностики источников потоков информации в облаке, основанный на моделировании системы. [68] Статья посвящена безопасности и верификации работы систем облачных вычислений. Предложенная в статье модель основывается на сетях Петри и учитывает безопасные протоколы взаимодействия между различными компонентами системы. Модель позволяет рассматривать не только особенности безопасности связей между узлами, но и безопасность всей облачной системы в целом. Однако, используя модель Ли и Боукалма, не позволяют описать особенности гипервизоров и виртуальных машин в системах облачных вычислений.
Хуай вместе с коллегами в своей работе [69] дополняют существующую модель абстрактных состояний сервисов (AS2s), путем формализации графика работы сервиса. Применение такой расширенной модели позволяет анализировать реальную последовательность операций, осуществляемых сервисом в явном виде. В статье графики работы сервиса представлены в виде регулярных выражений на основе алгебры Клини. Однако в работе исследуются только облачные сервисы и не рассматриваются различные варианты организации сетей в облаке.
Таким образом, теория графов позволяет детально описать сложную облачную структуру, состоящую из множества узлов сети и вычислительных ресурсов. Однако для изучения безопасности систем облачных вычислений с учётом особенностей гипервизоров и виртуальных машин требуется модель, выражающая эти особенности в явном виде.
Запросы пользователей облачных вычислений обрабатываются на множестве узлов в составе облака, каждый из которых представляет собой экземпляр ОС, где непосредственно запросы пользователя обрабатываются приложениями (программами). Привилегии программы определяются конфигурацией облака, а контроль за соблюдением этих привилегий осуществляет локальная система безопасности на узле с этой программой. Как следует из формальной модели атаки на средства виртуализации, и гипервизор и каждая ВМ под его управлениям обладает собственной системой безопасности, а взаимодействие между этими узлами осуществляется в соответствии с клиент-серверной моделью. Такое же поведение наблюдается и в случае, когда гипервизор по сети обращается к хранилищу или другому гипервизору.
В ходе работы программы, обрабатывающей запрос пользователя ей необходимо обращаться к сервисам ОС, в которой она работает. При этом программа обращается к компонентам ОС, которые обладают повышенными привилегиями, что обусловлено технологически требованиями к работе драйверов и других частей ОС. В этом случае прежде чем компоненты ядра ОС обслужат программу, в ОС такое обращение пройдет проверку безопасности и легитимность действий программы будет проверена. Поскольку ОС контролирует доступ к ресурсам, а программа работает под управлением этой ОС, то такие проверки привилегий программы можно считать корректными и адекватными. Но в облаке один запрос пользователя обрабатывается с участием множества узлов, программы на которых отвечают за разные сервисы, необходимые для выполнения запроса пользователя. На каждом узле работает своя собственная система безопасности, контролирующая только привилегии локальных программ, поэтому актуальна проблема соблюдения соответствия между привилегиями программ на разных узлах облака, участвующих в обработке запроса пользователя.
Жесткие диски виртуальных машин в системах облачных вычислений чаще всего хранятся на отделенных серверах в облаке, а не на самом хосте с гипервизором, при этом доступ к таким дискам осуществляется только по сети. Это означает, что для выполнения каждой операции доступа к виртуализованному диску из виртуальной машины, необходимо выполнить множество операций доступа к файлу на удаленном сервере из внутренней сети облака. Виртуализованный диск представлен в системе облачных вычислений как неотъемлемая часть образа виртуальной машины, хранящийся в виде файла или множества файлов на централизованном хранилище во внутренней сети облака. Следовательно, непосредственный доступ к данным будет осуществляться программой, работающей на централизованном хранилище.