автореферат диссертации по информатике, вычислительной технике и управлению, 05.13.19, диссертация на тему:Методика обнаружения нелегитимного программного обеспечения, использующего технологию аппаратной виртуализации
Автореферат диссертации по теме "Методика обнаружения нелегитимного программного обеспечения, использующего технологию аппаратной виртуализации"
На правах рукописи
Коркин Игорь Юрьевич
МЕТОДИКА ОБНАРУЖЕНИЯ НЕЛЕГИТИМНОГО ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ, ИСПОЛЬЗУЮЩЕГО ТЕХНОЛОГИЮ АППАРАТНОЙ ВИРТУАЛИЗАЦИИ
Специальность: 05.13.19 - методы и системы защиты информации, информационная безопасность
АВТОРЕФЕРАТ
диссертации на соискание учёной степени кандидата технических наук
1 2 ЯНВ 2012
Москва-2011
005007262
Работа выполнена в Национальном исследовательском ядерном университете «МИФИ» (НИЯУ МИФИ)
Научный руководитель:
кандидат технических наук, доцент Петрова Тамара Васильевна
Официальные оппоненты:
доктор технических наук, профессор Зегжда Пётр Дмитриевич
кандидат физико-математических наук Жуков Алексей Евгеньевич
Ведущая организация:
Учреждение Российской академии наук Институт системного программирования РАН
Защита состоится "9" февраля 2012 г. в 15 часов 00 минут на заседании диссертационного совета ДМ 212.130.08 при Национальном исследовательском ядерном университете «МИФИ» по адресу: 115409, г. Москва, Каширское шоссе, дом 31. Тел. для справок: +7 (499) 323-95-26, +7 (499) 324-73-34.
С диссертацией можно ознакомиться в библиотеке Национального исследовательского ядерного университета «МИФИ».
Отзывы в двух экземплярах, заверенные печатью организации, просьба направлять по адресу: 115409, г. Москва, Каширское шоссе, дом 31, диссертационные советы НИЯУ МИФИ, тел.: +7 (499) 323-95-26.
Автореферат разослан "23" декабря 2011г.
Ученый секретарь диссертационного совета,
кандидат технических наук, доцент
Горбатов В.С.
ОБЩАЯ ХАРАКТЕРИСТИКА РАБОТЫ
Актуальность темы. На современном этапе развития информационных технологий и массового внедрения средств вычислительной техники в различные области и сферы деятельности человека задача обнаружения вредоносного программного обеспечения в электронно-вычислительных машинах (ЭВМ) приобретает всё более актуальное значение.
С 2006 г. компании Intel и AMD начали выпускать процессоры для персональных и серверных ЭВМ с поддержкой технологии аппаратной виртуализации. Программное обеспечение, использующее технологию аппаратной виртуализации (ПОАВ) работает в новом, более привилегированном, чем ОС, режиме. Кроме того, технология аппаратной виртуализации позволяет запускать во вложенном виде несколько различных образцов ПОАВ.
С одной стороны, ПОАВ, выполняющее функции монитора виртуальных машин (МВМ), повышает сервисные возможности ЭВМ и снижает её эксплуатационные расходы. Благодаря МВМ на одной ЭВМ может быть одновременно запущено несколько ОС в разных виртуальных машинах. МВМ контролирует совместное использование системных ресурсов, изоляцию виртуальных машин и их ключевые функции, в результате чего создаётся иллюзия, что гостевые ОС взаимодействуют непосредственно с аппаратным обеспечением (рис. 1).
Но, с другой стороны, можно негласно внедрить образец ПОАВ — программную закладку, которая обладает бесконтрольными возможностями. В результате появляются угрозы информационной безопасности, поскольку такая программная закладка позволяет активно добывать информацию и оказывать деструктивное информационное воздействие на ЭВМ различного назначения, в том числе на информационно-телекоммуникационные системы критически важных объектов.
Операционная система
4--^
* Аппаратное обеспечение
ЭВМ без ПОАВ
Рисунок 1 - Схема взаимодействия операционной системы с аппаратным обеспечением в случаях отсутствия (присутствия) двух образцов ПОАВ: легитимного ...с функциями МВМ и нелегитимного, находящихся во вложенном виде
Установка^ ПОАВ
Виртуальная машина 1 - , Виртуальная машина 2
Операционная система 1 ^ Операционная ^ система 2
i —8-■-
. ■ t_ t Легитимное ПОАВ с функциями монитора виртуальных машин 1 * " Ч 1 1
Иелнгитимно'е ПОАВ ,
■'Аппаратное обеспечение
ЭВМ под управлением 1IOAB
I
Согласно статистике компании «Liliputing», в течение последних пяти лет и блюдается устойчивый рост продаж процессоров компании Intel для персональш ЭВМ с поддержкой технологии аппаратной виртуализации со 160 до 190 миллион* единиц в год, а общее число таких процессоров к 2012 году по прогнозу составит б лее миллиарда. Объём продаж процессоров компании AMD имеет схожую тенденции
В открытом доступе имеются два программных средства, «Blue Pill» и «Vitriol реализованные в виде драйвера, которые устанавливают ПОАВ прозрачно для польз вателя в ЭВМ, находящейся в эксплуатации.
Программное средство «Blue Pill» было разработано в 2006-2007 гг. исследов телями Д. Рутковской (J. Rutkowska), А. Терешкиным (A. Tereshkin), Р. Войтчук< (R. Wojtczuk) и Р. Фаном (R. Fan) из компании Invisible Things Labs для демонстращ возможностей аппаратной виртуализации процессоров AMD.
Другим примером ПОАВ является программное средство «Vitriol», разработа ное для процессоров Intel исследователем Дино А. Дай Зови (Dino A. Dai Zovi) из ко пании Matasano Security одновременно с Blue Pill в 2006 году. Однако, несмотря : широкую распространённость ПОАВ, штатные средства для их обнаружения отсутс вуют, а опубликованные имеют существенные недостатки.
Обнаружением ПОАВ занимались как целые компании: Komoku, North Securi Labs и др., так и отдельные специалисты: Ю. Булыгин, А. Луценко, К, Ада! (К, Adams), Э. Барбоса (Е. Barbosa), Э. Филиол (Е. Filiol), X. Фриш (H. Fritscl H. Лоусон (N. Lawson), M. Майерс (M. Myers), Д. Медли (D. Medley), Т. Пташ (Т. Ptacek), P. Ридмюллер (R. Riedmuller), Д. 3y (D. Xu), 3. Ванг (Z. Wang), и др. Анал опубликованных подходов и реализованных продуктов по обнаружению ПОАВ bi явил такие их недостатки, как отсутствие возможности выявить ПОАВ в случае е противодействия обнаружению, а также неудобство использования и тиражирован] ряда средств.
В связи с широким распространением различного ПО, использующего технол гию аппаратной виртуализации, особую опасность представляет нелегитимное ПОА которое для своего сокрытия использует легитимное ПОАВ с помощью вложенн« виртуализации (рис. 1). В открытых источниках отсутствуют сведения о наличии сп собов обнаружения нескольких вложенных образцов ПОАВ.
Таким образом, обнаружение нелегитимного программного обеспечения, и пользующего технологию аппаратной виртуализации, является актуальной задачей д обеспечения информационной безопасности новейших ЭВМ.
Существуют инструкции, при выполнении которых в ОС управление всегда п редаётся ПОАВ. По результатам измерения длительности выполнения таких инстру ций, например, с помощью процессорного счётчика тактов, можно принять решение наличии ПОАВ, поскольку под управлением ПОАВ эта длительность на порядок пр вышает длительность в случае отсутствия ПОАВ. Однако нарушитель может испол зовать функциональные возможности ПОАВ по компрометации процессорно счётчика, в результате чего средняя длительность выполнения набора процессорнь инструкций (трассы), безусловно перехватываемых ПОАВ, в случаях отсутствия присутствия ПОАВ совпадёт. В таких ситуациях обнаружить ПОАВ не представляет возможным.
Автором предлагается методика обнаружения нелегитимного ПОАВ для ситу ций, когда противодействие выявлению со стороны ПОАВ осуществляется указаннь
выше способом, а также путём временной выгрузки ПОАВ из памяти. Методика основана на измерении длительности выполнения набора процессорных инструкций (трассы), безусловно перехватываемых ПОАВ.
Тема работы удовлетворяет пунктам 3,6,13 и 14 паспорта специальности 05.13.19 «Методы и системы защиты информации, информационная безопасность».
Объект исследования. Операционная среда ЭВМ в случаях отсутствия (присутствия) одного образца (нескольких образцов) ПОАВ.
Предмет исследования. Статистические характеристики длительности выполнения инструкций процессора, измеряемой в операционной среде с использованием процессорного счётчика тактов.
Цель диссертационной работы. Разработка методики обнаружения нелегитимного программного обеспечения, использующего технологию аппаратной виртуализации в классе процессоров Intel и AMD.
Научная задача заключается в анализе статистических характеристик длительности выполнения трассы в случаях отсутствия (присутствия) ПОАВ и в синтезе критерия присутствия ПОАВ в условиях близости моментов первого порядка длительности выполнения трассы.
В рамках решения научной задачи необходимо:
- провести сравнительный анализ и классификацию существующих способов и средств обнаружения ПОАВ;
- построить модель нарушителя, провести анализ угроз и возможных способов противодействия обнаружению ПОАВ;
- исследовать длительность выполнения трассы в случаях отсутствия (присутствия) одного образца (нескольких образцов) ПОАВ, построить модели выполнения трассы и провести их анализ;
- разработать критерий присутствия образца ПОАВ;
- разработать методику обнаружения нелегитимного ПОАВ;
- разработать архитектуру и реализовать программное средство обнаружения ПОАВ.
Методы исследований. В работе используются методы теории графов, теории вероятностей и математической статистики.
Научная новизна работы состоит в следующем:
- представлены модели выполнения трассы в терминах теории графов, которые позволили выявить особенности статистических характеристик длительности выполнения трассы в случаях отсутствия (присутствия) одного образца (нескольких образцов) Г10АВ;
- синтезирован критерий присутствия образца ПОАВ на основе моментов 2-го и 4-го порядков, а также длины вариационного ряда длительности выполнения трассы;
- предложена методика обнаружения нелегитимного ПОАВ, позволяющая выявлять как один, так и несколько вложенных образцов ПОАВ.
Практическая значимость результатов работы заключается в следующем:
- разработанная методика позволяет обнаружить как один, так и несколько вложенных образцов ПОАВ, которые могут быть загружены из BIOS или из ОС в персональных или серверных ЭВМ;
- реализованное программное средство обнаружения ПОАВ позволяет принять
решение о наличии ПОАВ в условиях его противодействия выявлению.
Результаты работы представляют практическую ценность для реализации систем защиты от вредоносного программного обеспечения.
Достоверность результатов. Достоверность теоретических результатов обеспечивается корректным применением математического аппарата. Теоретические результаты согласуются с экспериментальными данными. Достоверность экспериментальных данных подкрепляется проведением опытов в полном соответствии с методическими рекомендациями. Допущения и ограничения, принятые в доказательствах утверждений, достаточно обоснованы.
Внедрение результатов исследований. Программное средство обнаружения ПОАВ использовано в составе системы обеспечения информационной безопасности в Государственном научном центре Российской Федерации федеральном государственном унитарном предприятии «Центральный научно-исследовательский институт химии и механики им. Д.И. Менделеева» (ГНЦ РФ ФГУП «ЦНИИХМ»),
Программное средство обнаружения было использовано как самостоятельная программа для контроля отсутствия нелегитимного ПОАВ при подготовке к вводу в эксплуатацию части парка ЭВМ федерального государственного унитарного предприятия «Научно-исследовательского института стандартизации и унификации» (ФГУП «НИИСУ»).
Теоретические и практические результаты, полученные в ходе выполнения диссертационной работы, использованы в учебном курсе «Безопасность операционных систем» кафедры «Криптология и дискретная математика» НИЯУ МИФИ для подготовки материалов лабораторных работ.
Публикации и апробация работы. Результаты диссертации изложены в 10 публикациях, 4 из которых опубликованы в рецензируемых журналах ВАК РФ. Результаты работы докладывались на конференциях и семинарах различного уровня:
- XVI, XVII, XVIII Всероссийская научно-практическая конференция «Проблемы информационной безопасности в системе высшей школы», г. Москва, 2009-2011 гг. (Инфофорум);
- XIV Международная телекоммуникационная конференция молодых ученых и студентов «Молодежь и наука», г. Москва, 2011 г.;
- XIX и XX Общероссийская научно-техническая конференция «Методы и технические средства обеспечения безопасности информации», г. Санкт-Петербург, 2010-2011 гг.;
- XV конференция «Телекоммуникации и новые информационные технологии в образовании», г. Москва, 2011 г.;
- семинары в Институте системного программирования Российской академии наук, г. Москва, 2011 (21 февраля 2011 года, 19 сентября 2011 года);
- семинар в Московском Государственном Техническом Университете им. Н.Э. Баумана, 2011 (1 марта 2011 года);
- XIII Международная конференция «РусКрипто» в 2011 году; представленная работа вышла в финал конкурса докладов.
Основные положения, выносимые на защиту:
- модели выполнения трассы в терминах теории графов для случаев отсутствия (присутствия) одного образца (нескольких образцов) ПОАВ;
- критерий присутствия образца ПОАВ на основе моментов 2-го и 4-го поряд-
ков, а также длины вариационного ряда длительности выполнения трассы;
- методика обнаружения нелегитимного ПОАВ; .
— архитектура и программное средство обнаружения ПОАВ.
Структура работы. Работа состоит из введения, пяти глав, заключения, списка литературы, включающего 173 наименования, и 2 приложений. Текст диссертации изложен на 140 страницах, включая 42 рисунка и 10 таблиц.
СОДЕРЖАНИЕ РАБОТЫ
Во введении обосновывается актуальность темы диссертации, представляется общий обзор предметной области, формулируются цель и задачи, предмет и объект исследования, описывается структура и логика диссертационной работы.
В первой главе описывается применение технологии аппаратной виртуализации для сокрытия ПО, приводится систематизированный обзор и даётся классификация описанных в литературе способов обнаружения ПОАВ, анализируются существующие средства обнаружения ПОАВ, уточняются методы и пути решения поставленной научной задачи.
На основе анализа способов обнаружения ПОАВ предложена их классификация (рис. 2), согласно которой все способы делятся на проактивные и сигнатурные.
Рисунок 2 - Классификация способов обнаружения ПОАВ
Сигнатурные способы основаны на поиске в дампе памяти сигнатур ПОАВ " связанных с ним структур. Эти способы можно разделить по 'принципу полученн дампа памяти: на.основе аппаратных и программных средств. Способы на основе ап • паратных средств неудобны в использовании и тиражировании, а на основе программ: ных-уязвимы к противодействию ПОАВ.
В группу проактивных способов обнаружения входят такие, как временные, поведенческие способы и способ на основе доверенного МВМ.
Временнью способы обнаружения основаны на том, что статистики времени об-
7
работки заданных событий гостевой ОС существенно зависят от того, имеется или нет ПОАВ: в присутствии ПОАВ длительность обработки событий значительно больше. Использование этой особенности позволяет сравнительно просто выявлять ПОАВ, однако только в тех случаях, если нарушителем не предприняты меры по сокрытию ПОАВ. В ситуациях, когда осуществляется целенаправленная компрометация процессорного счётчика тактов, либо временная выгрузка ПОАВ из памяти, известные временные способы не позволяют обнаружить ПОАВ.
Поведенческие способы обнаружения основаны на том, что результат выполнения определённых инструкций зависит от наличия ПОАВ. Эти способы используют особенности определённых моделей процессоров и версий ПОАВ. Адаптация поведенческих способов обнаружения на новые версии затруднительна, поскольку связана с проведением исследований и поиском уязвимостей.
Способ на основе доверенного МВМ заключается в использовании возможностей специально установленного легитимного МВМ, контролирующего работу операционной среды ЭВМ и препятствующего установке нелегитимного ПОАВ. Однако данный способ уязвим для атаки «человек-посередине» («Мап-1п-ТЬе-М1(М1е»), поскольку нелегитимиое ПОАВ может получить управление на более раннем этапе загрузки ЭВМ и компрометировать доверенный МВМ, загруженный позже.
Были проанализированы существующие средства обнаружения ПОАВ, результаты их сравнения представлены в табл. 1. Под не скрытым образцом ПОАВ подразумевается отсутствие в этом образце компонента, обеспечивающего противодействие обнаружению. Под скрытым образцом ПОАВ подразумевается наличие в этом образце такого компонента. В табл. 1 знаки «+» и «—» показывают наличие (отсутствие) указанной характеристики соответственно. Под удобством тиражирования понимается отсутствие в средстве обнаружения внешнего аппаратного компонента, необходимого на протяжении всего времени работы.
Таблица 1 - Сравнение существующих средств обнаружения ПОАВ
Наименование средства Способ обнаружения ПОАВ Возможность обнаружения образца ПОАВ Удобство использования и тиражирования Обнаружение нескольких образцов ПОАВ
не скрытого скрытого
Hypersight Rootkit Detector (North Security Labs, 2007-2011) На основе доверенного МВМ + — + —
«Красная пилюля» (Луценко A. 2010 г.) + — + —
DeepWatch (Булыгин Ю. 2008 г.) Сигнатурный на основе аппаратных средств + + — —
Copilot (Komoku, 2008 г.) + + — ■ —
Экспериментачьные образцы ПО Временные и поведенческие способы на основе буфера ассоциативной трансляции и др. + — + —
В отдельную группу отнесены различные экспериментальные образцы про-
граммного обеспечения, которые позволяют обнаруживать ПОАВ, но отсутствуют в открытом доступе. Сведения о них содержатся, например, в работах Т. Гарфинкеля (Т. Garfínkel), К. Адамса (К. Adams), Э. Барбосы (Е. Barbosa) и М. Майерса (М. Myers).
По результатам проведенного анализа было установлено, что существующие способы обнаружения ПОАВ обладают рядом недостатков:
- временные способы не позволяют выявить ПОАВ в случае использования компрометации счётчика тактов либо временной выгрузки из памяти;
- поведенческие способы не могут обнаруживать новые образцы ПОАВ и не работоспособны на новых моделях процессоров;
- способы на основе доверенного МВМ уязвимы к атаке «человек-посередине» («Man-In-The-M iddle»);
- сигнатурные аппаратные средства неудобны в использовании и тиражировании, а программные средства - нестойки к противодействию ПОАВ;
- все опубликованные способы и средства обнаружения не позволяют обнаружить несколько вложенных образцов ПОАВ.
Предлагаемая в работе методика обнаружения нелегитимного ПОАВ лишена указанных недостатков.
Представляется перспективным для обнаружения ПОАВ использовать различия статистических характеристик длительности выполнения трассы в случаях отсутствия (присутствия) одного образца (нескольких образцов) ПОАВ. В качестве инструкций трассы предлагается использовать безусловно перехватываемые ПОАВ инструкции, выполнение которых всегда приводит к передаче управления образцу ПОАВ. Для измерения длительности выполнения трассы был выбран процессорный счётчик тактов. Этот подход относится к временным способам на основе списка демаскирующих событий (на рис. 2 он выделен курсивом и подчёркнут).
Во второй главе описаны теоретические предпосылки обнаружения ПОАВ. Проводится построение модели нарушителя и анализ угроз, описываются возможные способы сокрытия ПОАВ. Анализируется длительность выполнения трассы, и представляются модели выполнения трассы в терминах теории графов. Осуществляется проверка их адекватности экспериментально полученным данным и анализ построенных моделей. Предлагается критерий присутствия образца ГГОАВ.
В данной работе рассматривается нарушитель, обладающий возможностью несанкционированно внедрять ПОАВ с помощью:
- установки драйвера операционной системы;
- модификации главной загрузочной записи жёсткого диска;
- внесения изменений в микропрограмму BIOS аппаратного обеспечения.
При этом учитывается, что реализованный нарушителем образец ПОАВ может противодействовать обнаружению посредством компрометации процессорного счётчика тактов, врёменной деинсталляции из памяти, а также предотвращать получение копии дампа памяти, содержащей ПОАВ.
Нарушителями могут являться производители программного и аппаратног обеспечения, соответствующие 3 и 4 уровню предоставляемых возможностей, соглас но РД ФСТЭК «Концепция защиты средств вычислительной техники и автоматизиро ванных систем».
Производитель ПО может разрабатывать приложения, после инсталляции которых в операционную среду происходит установка ПОАВ. Производитель аппаратного
обеспечения (АО) может внедрять ПОАВ путём модификации микропрограммы BIOS.
Важно отметить, что образец ПОАВ может быть нелегально внедрён в ЭВМ через сеть Интернет, например, как вирус Duqu, при помощи специально сконструированного doc-файла, использующего уязвимость Microsoft Office Word.
В результате от нарушителей исходит целый ряд угроз информационной безопасности: нарушения конфиденциальности, целостности и доступности. Угроза нарушения конфиденциальности может быть снята, если ЭВМ находится в контуре, не связанном какими-либо телекоммуникационными соединениями с сетью Интернет. При этом утечка информации возможна посредством внешних носителей. Угрозы нарушения целостности и доступности заключаются в том, что ПОАВ может осуществлять деструктивное информационное воздействие как на данные, обрабатываемые ЭВМ, так и на ПО и АО, в том числе и на АО, подключаемое к ЭВМ, а также нарушать работу информационно-телекоммуникационных сетей и технологических процессов.
Для предотвращения описанных выше угроз необходимо периодически проверять ЭВМ на отсутствие образцов нелегитимного ПОАВ.
Для разработки методов обнаружения ПОАВ были построены схемы переключения между режимами работы процессора с поддержкой аппаратной виртуализации при выполнении набора безусловно перехватываемых ПОАВ инструкций для случаев отсутствия и присутствия ПОАВ (рис. 3, а и 3, б).
Рисунок 3 - Схемы переключения между режимами работы процессора при выполнении набора безусловно перехватываемых ПОАВ инструкций в случаях отсутствия ПОАВ (а) и присутствия ПОАВ (б)
В случае отсутствия ПОАВ (рис. 3, а) процессор может находиться либо в защищенном режиме (Я-режим), либо в режиме системного управления (Э-режим).
В случае присутствия ПОАВ процессор может находиться не двух, а в трёх режимах (рис. 3, б). При этом Л- и Б-режим сохраняются, и добавляется режим монитора виртуальных машин (У-режим). На рис. 3, б Б-режим разнесён для наглядности как Б и 8'. В этом случае Я-режим называется режимом гостевой машины.
На основе схем переключения между режимами процессора построены соответствующие модели выполнения трассы в терминах теории графов для случаев отсутствия (присутствия) одного образца ПОАВ. В обоих случаях выполнение трассы осуществляется из ОС, находящейся в Я-режиме. При этом были приняты допущения, что все рассматриваемые инструкции выполняются последовательно на одном вычислительном устройстве, длительность выполнения каждой инструкции одинакова и составляет к тактов, а ПОАВ для своего сокрытия компрометирует показания процессорного счётчика тактов на постоянную величину.
На рис. 4 приведена разработанная автором модель выполнения трассы в случае
отсутствия ПОАВ в виде ориентированного помеченного мультиграфа. Вершинами графя являются инструкции трассы, дуги соответствуют возможным переключениям между режимами процессора при выполнении инструкций. При выполнении каждой инструкции трассы процессор может перейти с некоторой вероятностью из Я- в Б-режим, на схеме это показано нижней дугой. В противном случае произойдёт переход по верхней дуге. Вероятность перехода в Б-режим обозначим р, тогда вероятность прохода по верхней дуге = 1 — р.
На рис. 4 инструкции трассы обозначены символами У,-, 1 = 1,..,п0, где щ - число инструкций в трассе, % - число инструкций в обработчике Б-режима.
(4,0)
(p,ns) (p,ns)
Рисунок 4 - Модель выполнения трассы в случае отсутствия ПОАВ
Длительность выполнения трассы t0r по инструкций в случае отсутствия ПОАВ выражается формулой (1), где случайная величина тот, соответствующая числу переключений в S-режим, подчиняется закону биномиального распределения с параметрами пд и р
£ог = ("о + тот * %) * к. (1)
На рис. 5 приведена построенная автором модель выполнения трассы в случае присутствия ПОАВ, которая также представляет собой ориентированный помеченный мультиграф. При выполнении каждой инструкции трассы У,- управление передаётся в ПОАВ.
Образен программного обеспечения, использующего технологию аппаратной виртуализации
V, | (4.0) т т„ (я,0)! I | ; <.ч>"/ т т
(№) ; (рл) (р,п5)! | ; ; (р,п5)
Рисунок 5 - Модель выполнения трассы в случае присутствия ПОАВ
На рис, 5 инструкции образца ПОАВ обозначены символами с - 1,.., щ, где щ число инструкций в этом образце. При выполнении любых инструкций, как трассы, так и ПОАВ, возможен переход в Б-режим, что условно обозначено нижними дугами. В противном случае произойдёт переход по верхним дугам.
Длительность выполнения трассы г^р из п0 инструкций в случае присутствия ПОАВ с компрометацией счётчика тактов выражается формулой (2), где случайная величина тпр, соответствующая числу переключений в Б-режим, подчиняется закон; биномиального распределения с параметрами (п0 + п0 * %) и р
1П!> — (по + по * Щ + тт> * Щ + п0 * <5) * /с, (2)
где слагаемое щ * щ соответствует тому, что при выполнении каждой из щ инструкций трассы происходит переключение в У-режим (передача управления образцу ПОАВ),на что тратится дополнительное время. Слагаемое щ * 6 соответствует тому, что при обработке каждой из щ инструкций трассы образец ПОАВ компрометирует
(q.O)
счётчик тактов путём прибавления к его значению величины 5, 8 < 0. В результате при.многократных измерениях средняя длительность выполнения трассы в случаях отсутствия и присутствия ПОАВ может совпасть, и тогда по средней длительности выполнения трассы станет невозможным обнаружить присутствие образца ПОАВ.
Поскольку переменные тот и тПР в формулах (1) и (2) являются случайными величинами, которые подчиняются биномиальному закону, то длительности трасс tor и tni> являются целочисленными случайными величинами, значения которых будут распределяться случайным образом по некоторым уровням. По этой причине график длительности выполнения трассы t0T и tnP при повторных измерениях будет иметь слоистый характер. Из сравнения выражений для тОТитПР можно заключить следующее. Поскольку в случаях отсутствия и присутствия ПОАВ значения вероятностей успеха (переключений в S-режим) р совпадают, а число испытаний в случае присутствия ПОАВ больше, чем в случае его отсутствия в (nv + 1) раз, то и количество уровней (слоев) на графике длительности трассы в случае присутствия ПОАВ будет больше, чем в случае его отсутствия. По этой причине значения моментов 2-го и 4-го порядков, а также длин вариационных рядов длительности трассы е случае присутствия ПОАВ будут больше, чем в случае его отсутствия.
Выявленные особенности статистических характеристик длительности выполнения трассы в случаях отсутствия (присутствия) одного образца (нескольких образцов) ПОАВ после экспериментальной проверки использованы при разработке критерия присутствия ПОАВ.
Модели выполнения трассы могут быть также представлены в терминах теории марковских процессов. Однако предложенные модели в терминах теории графов более наглядны.
Экспериментальная проверка построенных моделей с использованием Критерия Колмогорова показала, что на 5 % уровне значимости модельные данные согласуются с экспериментальными данными. Было установлено также, что критерии согласия Хи-квадрат и Колмогорова-Смирнова не позволяют с достаточной вероятностью принимать решение о наличии ПОАВ, в связи с чем были предприняты меры по созданию критерия, лишённого этого недостатка.
Предлагается критерий присутствия образца ПОАВ, позволяющий различать массивы (выборки) длительности выполнения трассы в случаях отсутствия и присутствия ПОАВ.
Пусть параметры n0,ns,nv,6,k е Ж; р е R - некоторые фиксированные значения. Пусть Хог - множество значений, полученных при реализации lor> Хпг ~ множество значений, полученных при реализации tnP. Пусть генеральная совокупность X: X = ХОТ\1ХПР. Пусть хп = (х1,..,хп) - выборка объёма п из генеральной совокупности X.
Критерий присутствия образца ПОАВ на основе дисперсии.
Критическое множество (образец ПОАВ присутствует): W = [хп:а2(хп) > а), где а2 - выборочная дисперсия, del- определяется экспериментально.
Принятие решещщ: если хп 6 W, то образец ПОАВ присутствует, если xn g W, то образец ПОАВ отсутствует.
Критерии присутствия образца ПОАВ на основе момента 4-го порядка.
^ Критическое множество (образец ПОАВ присутствует): W = {£„: 02(хп) > ц}, где 02 - выборочный центральный момент 4-го порядка, ц 6 Z - определяется зкспе-
риментально.
Принятие решения: если хп € IV, то образец ПОАВ присутствует, если хп & Ж, то образец ПОАВ отсутствует.
Критерий присутствия образца ПОАВ на основе длины вариационного ряда.
Критическое множество (образец ПОАВ присутствует): = {.гп: 1(хп) > е}, где I - длина вариационного ряда, построенного по выборке, е е Ж ~ определяется экспериментально.
Принятие решения: если хп е XV, то образец ПОАВ присутствует, если хп £ IV, то образец ПОАВ отсутствует.
Пороговые значения значения вероятностей ошибок первого и второго
рода а и а также объём выборки п определяются экспериментально.
Предложенные критерии присутствия образца ПОАВ проверяются и уточняются в главе 3.
Третья глава посвящена экспериментальным исследованиям статистических характеристик длительности выполнения трассы на различных ЭВМ с целью проверки выдвинутых в главе 2 критериев и разработке на их основе методики обнаружения нелегитимного ПОАВ.
Излагается методика статистических измерений длительности выполнения трассы и организация проведения опытов с учётом недостаточной сходимости и воспроизводимости результатов испытаний.
Эксперименты осуществлялись по схеме однофакторных опытов. Варьируемым фактором была операционная среда ЭВМ с двумя качественными уровнями: в случаях отсутствия и присутствия ПОАВ. Результирующими признаками были различные статистики длительности выполнения трассы. Результатами опытов являлись матрицы размером 1000x10, содержащие данные измерений длительности выполнения трассы.
Экспериментально подтверждён вывод из анализа предложенных моделей выполнения трассы о том, что длительность выполнения трассы - это случайная величина, зависящая от наличия ПОАВ: в случае его присутствия значение и вариабельность длительности выполнения трассы в целом больше, чем без ПОАВ (рис. 6).
Подтверждено также, что образец ПОАВ путём искажения показаний процессорного счётчика тактов может уменьшать среднюю величину длительности трассы до значений, неотличимых от тех, что в случае отсутствия ПОАВ. Из этого следует, что по величине длительности выполнения трассы можно выявлять наличие образца ПОАВ только в тех случаях, когда компрометация показаний счётчика выполняется недостаточно тщательно.
Отсюда следует, что принимать решение о наличии ПОАВ на основе анализа только моментов 1-го порядка длительности трассы в условиях искажения счётчика тактов представляется не всегда'возможным. В то время как использование моментов 2-го и 4-го порядков в сочетании с дополнительными критериями и предварительной обработкой данных позволяет обнаружить ПОАВ. Установлено также, что искажение показаний счётчика образца ПОАВ не уменьшает вариабельность длительности трассы, поэтому соответствующие показатели вариации длительности трассы могут быть использованы для обнаружения ПОАВ.
Номера измерений а
30 40 50 60 70
Номера измерений
Рисунок 6 - Фрагменты графиков длительности выполнения трассы в случаях отсутствия (присутствия) ПОАВ, полученные с использованием а — построенных моделей выполнения трассы и б-экспериментальных измерений
Проанализированы возможности различных подходов к обработке получаемог из опытов статистического материала. Установлено, что процесс измерения длител! ности выполнения трассы есть случайный процесс, отличающийся некоторой упор; доченностью: регистрируемая длительность выполнения трассы в цикл распределяется по фиксированным уровням случайным образом. Другая отличител! ная черта наблюдаемого процесса - его нестабильность: структура процесса изменяем ся не только от опыта к опыту, но и по ходу одного опыта (наблюдаете скачкообразное изменение среднего значения). По этим причинам использовать мете ды теории случайных процессов для выявления идентификационных показателей дг обнаружения ПОАВ оказалось невозможным.
По сравнению с рассмотренным выборочные методы математической статист! ки оказались приемлемыми для обработки получаемых данных, но при условии, чт будут обеспечены достаточная сходимость и воспроизводимость результатов испит; ний, а также будет преодолена проблема, связанная с перекрытием интервалов вары рования статистических характеристик длительности выполнения трассы в случая отсутствия и присутствия ПОАВ. Достичь этого можно, если опыты выполнять сери: ми в течение нескольких дней, из получаемых данных удалять низкочастотные знач; ния и учитывать разрывы, а показатели вариации использовать в последовательнс комбинации.
В случаях отсутствия разрывов для каждого столбца опытных матриц определ: ли выборочные средние, длины статистических (вариационных) рядов длительное! трассы отфильтрованных столбцов, моменты 2-го и 4-го порядков. При обнаружена разрывов эти статистики определялись для участков между точками разрывов, кот1 рые затем усреднялись с учётом весов, равных длине этих участков.
Указанные статистики рассчитывались как по столбцам матрицы последующим усреднением, так и по всей матрице в целом путём переформатирован! её в вектор. Благодаря таким мерам, участки перекрытия интервалов варьирования О] ределяемых статистик в случаях отсутствия и присутствия ПОАВ стабилизировались сужались настолько, что эти статистики становились пригодными для практическо)
использования.
На их основе разработаны различные показатели и методы для обнаружения ПОАВ. Главные из них - это комбинация выборочных методов с использованием та-их показателей варьирования длительности выполнения трассы, как моменты 2-го и -го порядков, длина вариационных рядов, координаты центра тяжести полигона от-осительных частот. Методики определения пороговых значений этих показателей в сновном схожи. Определение доверительного интервала используемых статистик существлялось методом Корнфельда.
Для иллюстрации в табл. 2 приведены пороговые значения последовательной омбинации таких показателей, как дисперсии и длина их вариационных рядов, полу-енных на различных ЭВМ.
Таблица 2 - Пороговые значения тест-статистик длительности трассы и их дове-ительная вероятность, полученные на различных ЭВМ
ЭВМ Тест- Уровень Пороговое значение Вероятности ошибок
статистика фильтрации f ОТ ПР I рода, а II рода, ß
ч 0 < 7 >8 0.04 0
1 Df 0 < 14 > 18 0.02 0
Щ 0.1 < 679 > 947 0.02 0
ч 0 < 11 > 12 0.1 0.06
2 Df 0.2 < 100 > 101 0.08 0.1
Mf 0.2 < 168 > 13030 0.14 0.02
b 0 <34 > 241 0 0
3 Df 0 <216 >5478 0 0
Mf 0.02 <54 >956 0 0
При этом были приняты следующие обозначения: Z^ - выборочная средняя от средней длины вариационных рядов, Df - выборочная средняя от выборочной дисперсии и Mf - выборочная средняя от выборочного момента 4-го порядка. Индекс / означает уровень фильтрации получаемых из опыта выборок длительности трассы. В первом столбце табл. 2 номерами обозначены модели процессоров обследованных ЭВМ: 1 - Intel Core 2 Duo Е8200 с ОС Windows 7, 2 - Intel Core 2 Duo ЕбЗОО с ОС Windows 7, 3 - AMD Phenom Х4 945 с ОС Windows Live CD ХР (DDD). В первых двух ЭВМ использовался разработанный автором образец ПОАВ, реализованный в виде драйвера ОС, в 3-ем случае - специализированный ПОАВ, получающий управление при загрузке ЭВМ из BIOS. Для упомянутых и других ЭВМ получены аналогичные результаты для различных тест-статистик, разработанных на базе вариационных рядов выборочных медиан и координат центра тяжести полигонов частот, определяемых по столбцам опытных матриц длительности трассы.
Предложенные тест-статистики и их пороговые значения можно использовать в качестве индикационных показателей для обнаружения образцов ПОАВ.
Анализ показал, что выявить пороговые значения статистик длительности выполнения трассы в случаях вложенных образцов ПОАВ можно с помощью поэтапного адаптивного подхода: сначала следует определить пороговые значения статистик длительности трассы Si в случае отсутствия ПОАВ, затем в ЭВМ установить ПО со встроенным ПОАВ или иной легитимный ПОАВ, после чего по аналогичной методике
15
определить пороговые значения статистик этого режима Б2. Для наглядности на рис. на оси пороговых значений идентификационных статистик указаны пороговые знач< ния ¿■1,52(..,5п совместно с разделяемыми ими режимами работы ЭВМ.
_„ р Присутствует Присутствуют два Присутствуют п 11иЛВ один образец вложенных вложенных
отсутствует ПОАВ образца ПРАВ образцов ПОАВ
< *—у~ А $......А .
Рисунок 7 - Пороговые значения показателей в случае отсутствия (присутствия) одного образца (нескольких образцов) ПОАВ
Если при обнаружении ПОАВ окажется, что тестовые статистики 5,„гс„, < ч ПОАВ отсутствует. При < 5тга„ < 52 в ЭВМ только один, ранее легитимно уст; новленный образец ПОАВ. Если 5,„есш > 52> то принимается решение о присутстви двух вложенных образцов ПОАВ, один из которых нелегитимный.
Указанный порядок обнаружения ПОАВ сохраняется и при 5тест > 5 где ¿ = 3,..,п, при условии, что нелегальные образцы ПОАВ устанавливаются в£ промежутков времени, когда определяются пороговые значения статистик для леп тимных образцов ПОАВ. Альтернативным подходом к выявлению вложенных обра цов ПОАВ может быть использование двух методов обнаружения одного ПОАВ: I основе длины вариационных рядов и механизмов кэширования.
Предлагается методика обнаружения нелегитимного ПОАВ, состоящая из дв> этапов: предварительного и оперативного этапов, представленная в табл. 3.
Таблица 3 - Пошаговая методика обнаружения нелегитимного ПОАВ
Название "этапа
Содержание шагов
Предвари-
1. Аппаратным образом записать доверенную микропрограмму в BIO:
2. Установить операционную систему.
3. Получить пороговые значения для обнаружения ПОАВ с помощью соответствующего алгоритма.
Оперативный,
на стадии эксплуатации ЭВМ
4. Начать проверку ЭВМ на отсутствие ПОАВ с помощью алгоритма обнаружения.
5. Последовательно установить дополнительное ПО (MS Office и др.),
6. Следить за сообщениями об обнаружении ПОАВ.
7. Для адаптации средства обнаружения к легитимному образцу ПОАВ выполнить шаг 3.
Программно реализованы 3-й и 4-й шаги методики. -
В четвертой главе предлагается архитектура и описывается реализация пр граммного средства обнаружения ПОАВ и его подсистем. Излагается порядок н стройки и эксплуатации разработанного средства.
Сформулированы требования к программному средству обнаружения ПОА' Средство обнаружения должно: „ '
- обеспечивать получение пороговых значений для обнаружения. ЦОАВ^ ,.
- обнаруживать как один, так и несколько вложенных образцов ПОАВ;
- обеспечивать возможность ручной обработки регистрируемых данных» Для удовлетворения указанным требованиям программное, средство обнаруж
ния должно состоять из подсистем выработки пороговых значений, имитации, дейс
вий нарушителя и выявления образцов ПОАВ.
Архитектура программного средства обнаружения ПОАВ представлена на рис. 8.
Рисунок 8 - Архитектура программного средства обнаружения ПОАВ
Для обнаружения ПОАВ необходимо выполнить два этапа: предварительный и оперативный. На предварительном этапе осуществляется совместная работа подсистем выработки пороговых значений и имитации действий нарушителя. Этот этап проводится при подготовке к вводу ЭВМ в эксплуатацию.' В результате предварительного этапа вырабатываются пороговые значения статистик для обнаружения ПОАВ. Предварительный этап повторяется после установки каждого ПО, содержащего ПОАВ. Для обнаружения нескольких вложенных образцов ПОАВ используется поэтапный адаптивный подход, посредством которого создаются пороговые значения для каждого из вложенных образцов ПОАВ. После ввода ЭВМ в эксплуатацию реализуется оперативный этап, для чего используется подсистема выявления образцов ПОАВ.
Подсистема выработки пороговых значений обеспечивает регистрацию опытных данных для случаев отсутствия и присутствия ПОАВ, их обработку и получение пороговых значений. Архитектура подсистемы представлена на рис. 9.
|Начальиью|
Модуль управления
Модуль измерения длительности
Хранилище
матриц измерений
Модуль обработки матрицы и расчёта статистических характеристик
Модуль выработки пороговых значений
,/Пороговые 1 / значения/
Хранилище статистических характеристик
Проведение ручного анализа
Рисунок 9 - Архитектура подсистемы выработки пороговых значений После запуска подсистемы модуль управления создаёт для каждого из трёх мо-
дулей отдельные задания. Составленное задание передаётся в модуль измерения длительности, который осуществляет получение и сохранение матрицы измерений длительности выполнения трассы в хранилище. Модуль обработки матрицы и расчёта статистических характеристик извлекает матрицу и рассчитывает статистические характеристики для различных уровней фильтрации, которые сохраняются в соответствующем хранилище. Модуль выработки пороговых значений в соответствии с полученным заданием извлекает из хранилища статистические характеристики, осуществляет их анализ и выбор подходящих пороговых значений, которые являются результатом работы подсистемы. Модули подсистемы выработки пороговых значений реализованы с использованием двух языков программирования С++ и МаЙаЬ. Подсистема имитации действий нарушителя состою: из модулей управления и образца ПОАВ, позволяя воспроизводить поведение образца ПОАВ в условиях его противодействия обнаружению, компрометируя процессорный счётчик тактов. Подсистема имитации действий нарушителя реализована на языке программирования С++.
Подсистема выявления образцов ПОАВ (рис. 10) с учётом наработок предыдущих подсистем обеспечивает обнаружение ПОАВ в непрерывном режиме. Работа данной подсистемы осуществляется аналогично подсистеме выработки пороговых значений за исключением того, что модуль обработки матрицы и расчёта статистиче ских характеристик рассчитывает лишь указанные в задании статистические характеристики и только для определённых уровней фильтрации. Модуль принятия решения в соответствии с заданием и полученными статистическими характеристиками прини мает решение о наличии образцов ПОАВ и об их числе. Вывод отчёта пользователг< осуществляется с использованием графической формы приложения. Подсистема выяв ления образцов ПОАВ реализована на языке программирования С++.
Рисунок 10 - Архитектура подсистемы выявления образцов ПОАВ
Разработанное программное средство позволяет вырабатывать пороговые значе ния для различных ЭВМ и осуществлять обнаружение ПОАВ в непрерывном режиме.
В пятой главе приводятся примеры практического применения результатов рг боты для решения конкретных прикладных задач в трёх проектах. '
Реализованное программное средство обнаружения ПОАВ применяется в состг ве системы обеспечения информационной безопасности для проверки отсутствия ПОАВ в части парка ЭВМ ГНЦ РФ ФГУП «ЦНИИХМ» (ФСТЭК России).
Компьютерная сеть ФГУП «ЦНИИХМ» состоит из двух контуров - непосредст венно подключённого к сети Интернет с помощью сетевых коммуникаций и контура, не имеющего такого доступа, онлайн и оффлайн соответственно. Информационное
взаимодействие между контурами осуществляется с помощью внешних носителей. Специфика данных, обрабатываемых на компьютерах оффлайн контура, не позволяет подключать их к сети Интернет и с помощью штатных средств осуществлять установку обновлений ПО, поэтому компьютеры этого контура не защищены от угроз, использующие даже известные уязвимости. Разработанная сотрудниками института система обеспечения информационной безопасности (СОИБ) позволяет повышать защищённость компьютеров, находящихся в оффлайн контуре, путём инсталляции актуальных обновлений для прикладного и системного ПО. Внедрение разработанного [рограммного средства осуществлялось путём включения его подсистемы выявления ЮАВ в состав СОИБ. Была проведена адаптация программного средства для работы в )ВМ с процессорами Intel Xeon Х5600 и ОС Windows 7 Professional, заключающаяся в юлучении пороговых значений для случая присутствия (отсутствия) авторского об-:азца ПОАВ. Была проведена успешная проверка части ЭВМ, продемонстрировавшая аботоспособность программного средства обнаружения. В результате проверки не 'ыло выявлено нелегальных образцов ПОАВ.
Задачей второго проекта было выявление новейших программных средств не-ласного съёма информации, использующих технологию аппаратной виртуализации, [а компьютерах ФГУП «НИИСУ» (Минпромторг России). При этом реализованное [рограммное средство обнаружения ПОАВ использовалось как самостоятельная про-рамма для проверки ряда компьютеров института, вводимых в эксплуатацию. Прочее внедрения можно условно разделить на три этапа. На первом этапе «уществлялась запись новой микропрограммы в BIOS с использованием аппаратного [рограмматора «ТРИТОН», что гарантировало отсутствие ПОАВ в BIOS. На втором тапе осуществлялась установка ОС Windows ХР, после чего с использованием под-истем выработки пороговых значений и имитации действий нарушителя были полусны значения статистик для обнаружения ПОАВ. На третьем этапе производилась становка дополнительного ПО, включающего в себя пакет программ Microsoft Office [ интегрированную среду разработки программного обеспечения Microsoft Visual Studio, при этом в непрерывном режиме осуществлялась проверка ЭВМ на отсутствие ПОАВ. В результате была проведена успешная подготовка к эксплуатации ряда компьютеров, продемонстрировавшая работоспособность программного средства обнаружения.
В третьем проекте результаты диссертационной работы были внедрены в учебный курс «Безопасность операционных систем» кафедры «Криптология и дискретная математика» НИЯУ МИФИ. Существующий курс был расширен теоретическим описанием технологии аппаратной виртуализации и демонстрацией технических возможностей разработанной подсистемы имитации действий нарушителя. Расширенный курс в отличие от существующих иностранных курсов Г. Хоглунда «Offensive Aspects of Rootkit Technology» и Д. Рутковской «Understanding Stealth Malware Training» содержит анализ способов обнаружения ПОАВ, анализ статистических характеристик длительности выполнения трассы для случаев отсутствия и присутствия ПОАВ и методику обнаружения нелегитимного программного обеспечения, использующего технологию аппаратной виртуализации.
В заключении приведены основные результаты диссертационной работы и рассмотрены пути дальнейшего развития темы исследования.
ОСНОВНЫЕ ВЫВОДЫ И РЕЗУЛЬТАТЫ РАБОТЫ
1. Проведен анализ существующих способов обнаружения программного обеспечения, использующего технологию аппаратной виртуализации. Обоснована необходимость создания нового подхода к обнаружению ПОАВ, в том числе вложенны образцов.
2. Построена модель нарушителя, позволившая проанализировать возможны угрозы обрабатываемой в ЭВМ информации.
3. Представлены модели выполнения трассы для процессоров с поддержкой аг паратной виртуализации в случаях отсутствия (присутствия) одного образца (нескол! ких образцов) ПОАВ в терминах теории графов. Предложенные модели позволил выявить закономерности длительности выполнения трассы в этих условиях.
4. Предложен критерий присутствия образца ПОАВ. Получен теоретически подтверждён экспериментально вывод о том, что статистические характеристики дл1 тельности выполнения трассы зависят от наличия ПОАВ. В случае присутствия ПОА; значение и вариабельность длительности выполнения трассы существенно больш( чем в случае его отсутствия.
5. Разработана методика обнаружения нелегшимного ПОАВ, состоящая v двух этапов - предварительного и оперативного. На предварительном этапе осущесп ляется получение пороговых значений статистик. На оперативном этапе на основе ш лученных статистик осуществляется обнаружение ПОАВ в непрерывном режиме.
6. Построена архитектура и разработано программное средство обнаружен* программного обеспечения, использующего технологию аппаратной виртуализации.
7. Разработанное программное средство обнаружения ПОАВ применено в с< ставе системы обеспечения информационной безопасности для контроля отсутств! ПОАВ в ряде ЭВМ парка ГНЦ РФ ФГУП «ЦНИИХМ», что позволило проконтролир< вать отсутствие нелегальных образцов ПОАВ.
8. Реализованное программное средство обнаружения ПОАВ было использов но при подготовке к вводу в эксплуатацию ряда ЭВМ парка ФГУП «НИИСУ», что п зволило проконтролировать отсутствие нелегальных образцов ПОАВ.
9. Проведенный анализ способов обнаружения ПОАВ и статистических хара теристик длительности выполнения трассы для случаев отсутствия и присутств! ПОАВ был использован при создании лабораторных работ учебного курса «Безопа ность операционных систем» кафедры «Криптология и дискретная математика» НИЯ МИФИ.
ПУБЛИКАЦИИ ПО ТЕМЕ ДИССЕРТАЦИИ
1. Коркин И.Ю. Технологии сокрытия вредоносных программ и новые сп собы противодействия им И Безопасность Информационных Технологи 2009, №4,-с. 43-46
2. Коркин И.Ю. Способ обнаружения скрытых процессов в ОС Windows. В с научных трудов 16-й Всероссийской конференции «Проблемы информацио ной безопасности в системе высшей школы». - М.:, 2009,- с. 111-112
3. Коркин Й.Ю., Петрова Т.В., Тихонов А.Ю. Метод обнаружения аппарата« виртуализации в компьютерных системах. В сб. научных трудов 17-й Всеро сийской конференции «Проблемы информационной безопасности в систи высшей школы». М.:, 2010, - с. 114-115
4. Коркин И.Ю. Критерий обнаружения монитора виртуальных машин в ко
пьютерных системах. В сб. материалов XIX Общероссийской научно-технической конференции «Методы и Технические Средства Обеспечения Безопасности Информации». СПб.:, 2010, - с. 113-114
5. Коркин И.Ю., Петрова Т.В., Тихонов А.Ю. Новый подход к выявлению аппаратной виртуализации в компьютерных системах. XIV Международная телекоммуникационная конференция студентов и молодых учёных «Молодёжь и наука». Тезисы докладов. Ч. 3. М.:,НИЯУ МИФИ, 2010. - с. 241-242
6. Коркин И.Ю. Метод выявления аппаратной виртуализации в компьютерных системах на основе механизма кэширования // Безопасность Информационных Технологий. 2011, №1. - с. 101-103
7. Коркин И.Ю. Статистическая идентификация режимов работы компьютерных систем. Сб. науч. тр.. XV конференция «Телекоммуникации и новые информационные технологии в образовании». М.:,НИЯУ МИФИ, 2011. - с. 163-165
8. Коркин И.Ю. Выявление вложенных мониторов виртуальных машин // Системы высокой доступности. 2011, №2, т.6 - с. 76-77
9. Коркин И.Ю. Обнаружение вложенных мониторов виртуальных машин методами математической статистики. В сб. материалов XX Общероссийской научно-технической конференции «Методы и Технические Средства Обеспечения Безопасности Информации». СПб.:, 2011,-с. 146-147
10. Коркин И.Ю. Новые статистические показатели и методы для обнаружения мониторов виртуальных машин в компьютерных системах // Естественные и технические науки. 2011, № 4. — с. 498-502
Личный вклад автора в работах, написанных в соавторстве, состоит в следующем: [3] - проведение сравнительного анализа способов обнаружения ПОАВ; [5] -разработка программного средства обнаружения ПОАВ на основе механизма кэширования.
КОРКИН ИГОРЬ ЮРЬЕВИЧ
МЕТОДИКА ОБНАРУЖЕНИЯ НЕЛЕГИТИМНОГО ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ, ИСПОЛЬЗУЮЩЕГО ТЕХНОЛОГИЮ АППАРАТНОЙ ВИРТУАЛИЗАЦИИ
Подписано в печать 19.12.2011. Формат 60 х 84 '/к. Усл. печ. л. 1,0. Уч.-изд. л. 1,0. Тираж 100 экз. Заказ № 37
Национальный исследовательский ядерный университет «МИФИ» (НИЯУ МИФИ)
115409, Москва, Каширское шоссе, 31
Текст работы Коркин, Игорь Юрьевич, диссертация по теме Методы и системы защиты информации, информационная безопасность
61 12-5/1561
НАЦИОНАЛЬНЫЙ ИССЛЕДОВАТЕЛЬСКИЙ ЯДЕРНЫЙ УНИВЕРСИТЕТ «МИФИ»
МЕТОДИКА ОБНАРУЖЕНИЯ НЕЛЕГИТИМНОГО ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ, ИСПОЛЬЗУЮЩЕГО ТЕХНОЛОГИЮ АППАРАТНОЙ ВИРТУАЛИЗАЦИИ
Специальность 05.13.19 - Методы и системы защиты информации,
информационная безопасность
На правах рукописи
Коркин Игорь Юрьевич
Диссертация на соискание ученой степени кандидата технических наук
Автор:
Научный руководитель -к.т.н., доцент Петрова Т.В.
Москва-2011
Оглавление
Введение...................................................................................................................5
1 Проблема обнаружения программного обеспечения,
использующего технологию аппаратной виртуализации..............................14
1.1 Применение технологии аппаратной виртуализации для сокрытия программного обеспечения...........................................................................14
1.1.1 Особенности работы программного обеспечения, использующего технологию аппаратной виртуализации процессоров Intel и AMD........14
1.1.2 Примеры программного обеспечения, использующего технологию аппаратной виртуализации ........................................................................19
1.2 Сравнительный анализ существующих способов обнаружения программного обеспечения, использующего технологию аппаратной виртуализации................................................................................................21
1.2.1 Классификация существующих способов обнаружения ПОАВ.....21
1.2.2 Временные способы обнаружения ПОАВ........................................22
1.2.3 Поведенческие способы обнаружения.............................................30
1.2.4 Способ обнаружения на основе доверенного монитора виртуальных машин...................................................................................33
1.2.5 Сигнатурные способы обнаружения................................................34
1.2.6 Анализ возможностей компьютерных счётчиков для измерения длительности выполнения процессорных инструкций............................37
1.3 Выводы.......................................................................................................41
2 Теоретические предпосылки обнаружения программного обеспечения, использующего технологию аппаратной
виртуализации......................................................................................................44
2.1 Модель нарушителя.................................................................................44
2.1.1 Общие сведения.................................................................................44
2.1.2 Возможные способы компрометации счётчика тактов...................46
2
2.2 Построение моделей выполнения трассы.............................................51
2.2.1 Сравнительный анализ схем переключения между режимами работы процессора.....................................................................................52
2.2.2 Особенности выполнения набора процессорных инструкций........55
2.2.3 Построение моделей выполнения трассы........................................59
2.2.4 Проверка адекватности построенных моделей опытным данным.. 62
2.2.5 Критерий присутствия программного обеспечения, использующего технологию аппаратной виртуализации...................................................69
2.3 Выводы.......................................................................................................72
3 Исследование статистических характеристик длительности выполнения набора процессорных инструкций и разработка методики обнаружения нелегитимного программного обеспечения, использующего технологию аппаратной
виртуализации......................................................................................................73
3.1 Организация проведения опытов по измерению длительности выполнения набора процессорных инструкций........................................77
3.2 Особенности процесса выполнения набора процессорных инструкций и обоснование подходов к обработке экспериментальных данных..............................................................................................................79
3.3 Обработка опытных данных и выявление признаков для обнаружения программного обеспечения, использующего технологию аппаратной виртуализации...........................................................................88
3.4 Предлагаемая методика обнаружения нелегитимного программного обеспечения, использующего технологию аппаратной виртуализации. 97
3.5 Выводы.....................................................................................................Ю2
4 Архитектура и реализация средства обнаружения программного обеспечения, использующего технологию
аппаратной виртуализации..............................................................................104
4.1 Состав и архитектура средства обнаружения....................................104
4.2 Форматы передаваемых данных..........................................................105
4.3 Подсистема выработки пороговых значений.....................................107
4.4 Подсистема имитации действий нарушителя....................................111
4.5 Подсистема выявления образцов ПОАВ.............................................114
4.6 Порядок использования средства обнаружения ПОАВ....................115
4.7 Выводы.....................................................................................................116
5 Внедрение методики обнаружения нелегитимного
программного обеспечения, использующего технологию
аппаратной виртуализации..............................................................................117
5.1 Использование предложенного средства обнаружения в системе обеспечения информационной безопасности ГНЦ РФ ФГУП «ЦНИИХМ им. Д.И. Менделеева»...................................................................................118
5.2 Применение предложенного средства обнаружения для контроля отсутствия негласного программного обеспечения, использующего технологию аппаратной виртуализации в классе ЭВМ парка ФГУП
«НИИСУ».......................................................................................................121
5.3 Разработка лабораторных работ для курса «Безопасность операционных систем» кафедры «Криптология и дискретная математика» НИЯУ МИФИ........................................................................I22
5.4 Выводы.....................................................................................................I24
Заключение.........................................................................................................12^
Список использованных источников..............................................................I2?
Приложение А. Фрагмент исходного кода программы для
построения графиков теоретических распределений...................................141
Приложение Б. Фрагмент исходного кода модуля обработки
матрицы и расчёта статистических характеристик.....................................142
Введение
Актуальность темы. На современном этапе развития информационных технологий и массового внедрения средств вычислительной техники в различные сферы деятельности человека задача обеспечения информационной безопасности приобретает всё более актуальное значение.
Важным аспектом обеспечения информационной безопасности ЭВМ является обнаружение нелегитимного программного обеспечения, которое может быть потенциальным носителем программных закладок.
Появление новых процессоров с поддержкой технологии аппаратной виртуализации расширило возможности как для средств защиты информации [34], [83], [99], [128], [133], [155], так и для средств, нарушающих информационную безопасность [18], [41], [42], [78]. Программное обеспечение, использующее технологию аппаратной виртуализации (ПОАВ), работает в новом, более привилегированном, чем ОС, режиме. С одной стороны, ПОАВ, выполняющее функции монитора виртуальных машин (МВМ), повышает сервисные возможности ЭВМ и снижает стоимость её эксплуатации. Но, с другой стороны, появляется возможность для негласного внедрения образца ПОАВ - программной закладки с бесконтрольными возможностями. Бизнес-консультант по безопасности А. Лукацкий в своём докладе «Что будет актуальным в области ИБ в ближайшие годы?» на конференции «Информационная безопасность» в 2008 г. призвал обратить пристальное внимание на появление угроз информационной безопасности, связанных с технологией виртуализации в течение следующих 3-5 лет [29].
Согласно данным компании «Liliputing» [117] в течение последних пяти лет наблюдается устойчивый рост продаж процессоров фирмы Intel для настольных ЭВМ с поддержкой технологии аппаратной виртуализации с 160 до 190 миллионов единиц в год. Общее число процессоров с поддержкой технологии аппаратной виртуализации к 2012 г. по прогнозу может составить более миллиарда. Объём продаж процессоров AMD имеет схожую тенденцию.
Потенциально все ЭВМ с такими процессорами подвержены угрозам нарушения информационной безопасности, поскольку становится возможной реализация вредоносного ПОАВ для активного добывания информации и деструктивного информационного воздействия на ЭВМ различного назначения, в том числе на информационно-телекоммуникационные системы критически важных объектов [2], [118], [139].
Примечательно, что эти угрозы могут исходить от производителей как аппаратного, так и программного обеспечения. При этом внедрение ПОАВ может осуществляться посредством установки драйвера ОС, а также модификации микропрограммы BIOS и загрузочной записи жёсткого диска. Некоторые из них могут реализоваться как до ввода в эксплуатацию, так и на
стадии эксплуатации ЭВМ.
Важно отметить, что штатные средства обнаружения ПОАВ отсутствуют, а опубликованные средства не позволяют принять решение о наличии ПОАВ в системе в случаях, когда ПОАВ противодействует своему обнаружению посредством компрометации показаний процессорного счётчика тактов либо
временной выгрузки ПОАВ из памяти.
Обнаружением ПОАВ занимались как целые компании: Komoku, North Security Labs и др., так и отдельные специалисты: Ю. Булыгин, А. Луценко, К. Адаме (К. Adams), Э. Барбоса (Е. Barbosa), Э. Филиол (Е. Filiol), X. Фритш (Н. Fritsch), Н. Лоусон (N. Lawson), М. Майерс (М. Myers), Д. Медли (D. Medley) и др. Анализ опубликованных подходов и реализованных продуктов по обнаружению ПОАВ выявил такие их недостатки, как отсутствие возможности выявить ПОАВ в случае его противодействия обнаружению, а также неудобство использования и тиражирования ряда средств.
В связи с широким распространением легитимного ПО на базе
технологии аппаратной виртуализации, присутствие одного образца ПОАВ уже
не может рассматриваться как возможное присутствие вредоносного ПО.
Особую опасность представляет нелегальный образец ПОАВ, который для
своего сокрытия посредством вложенной виртуализации использует
6
легитимный образец ПОАВ. Методы обнаружения вложенных образцов ПОАВ отсутствуют.
Для обеспечения информационной безопасности необходимо выявить присутствие нелегитимного программного обеспечения на всех возможных архитектурных уровнях работы ЭВМ. Разработанная ранее автором в рамках дипломной работы система обнаружения скрытого программного обеспечения в 32-х битных ОС семейства Windows не позволяет выявлять скрытые объекты вне операционной системы [19].
Таким образом, обнаружение нелегитимного программного обеспечения, использующего технологию аппаратной виртуализации, является актуальной задачей для обеспечения информационной безопасности новейших ЭВМ. Поэтому разработка методики обнаружения нелегитимного ПОАВ, отвечающей современным требованиям, является актуальной и приоритетной задачей.
Целью данной работы было восполнить пробел в решении этой задачи.
Существуют инструкции, при выполнении которых в ОС управление всегда передаётся ПОАВ. По результатам измерения длительности выполнения таких инструкций, например, с помощью процессорного счётчика тактов, можно принять решение о наличии ПОАВ, поскольку под управлением ПОАВ эта длительность на порядок превышает длительность в случае его отсутствия. Однако нарушитель может использовать функциональные возможности ПОАВ по компрометации процессорного счётчика, в результате чего средние длительности выполнения набора процессорных инструкций (трассы), безусловно перехватываемых ПОАВ в случаях отсутствия и присутствия ПОАВ, совпадут. В таких ситуациях обнаружить ПОАВ не представляется возможным.
Автором предлагается методика обнаружения нелегитимного ПОАВ для ситуаций, когда противодействие выявлению со стороны ПОАВ осуществляется указанным выше способом, а также путём временной выгрузки его из памяти. Методика основана на измерении длительности выполнения
набора процессорных инструкций (трассы), безусловно перехватываемых ПОАВ.
Тема работы удовлетворяет пунктам 3, 6, 13 и 14 паспорта специальности 05.13.19 «Методы и системы защиты информации, информационная безопасность».
Объект исследования. Операционная среда ЭВМ в случаях отсутствия (присутствия) одного образца (нескольких образцов) ПОАВ.
Предмет исследования. Статистические характеристики длительности выполнения инструкций процессора, измеряемой в операционной среде с использованием процессорного счётчика тактов.
Цель диссертационной работы. Разработка методики обнаружения нелегитимного программного обеспечения, использующего технологию аппаратной виртуализации в классе процессоров Intel и AMD.
Научная задача заключается в анализе статистических характеристик длительности выполнения трассы в случаях отсутствия (присутствия) ПОАВ и в синтезе критерия присутствия ПОАВ в условиях близости моментов первого порядка длительности выполнения трассы.
В рамках решения научной задачи необходимо:
- провести сравнительный анализ и классификацию существующих способов и средств обнаружения ПОАВ;
- построить модель нарушителя, провести анализ угроз и возможных способов противодействия обнаружению ПОАВ;
- исследовать длительность выполнения трассы в случаях отсутствия (присутствия) одного образца (нескольких образцов) ПОАВ, построить модели выполнения трассы и провести их анализ;
- разработать критерий присутствия образца ПОАВ;
- разработать методику обнаружения нелегитимного ПОАВ;
- реализовать программное средство обнаружения ПОАВ.
Методы исследований. В работе используются методы теории графов,
теории вероятностей и математической статистики.
8
Научная новизна работы состоит в следующем:
- представлены модели выполнения трассы в терминах теории графов, которые позволили выявить особенности статистических характеристик длительности выполнения трассы в случаях отсутствия (присутствия) одного образца (нескольких образцов) ПОАВ;
- синтезирован критерий присутствия образца ПОАВ на основе моментов 2-го и 4-го порядков, а также длины вариационного ряда длительности выполнения трассы;
- предложена методика обнаружения нелегитимного ПОАВ, позволяющая выявлять как один, так и несколько вложенных образцов ПОАВ.
Практическая значимость результатов заключается в следующем:
- разработанная методика позволяет обнаружить как один, так и несколько вложенных образцов ПОАВ, которые могут быть загружены из BIOS или из ОС в персональных или серверных ЭВМ;
- реализованное программное средство обнаружения ПОАВ позволяет принять решение о наличии ПОАВ в условиях его противодействия выявлению.
Результаты работы представляют практическую ценность для реализации систем защиты от вредоносного программного обеспечения.
Достоверность результатов. Достоверность результатов теоретических исследований обеспечивается корректным применением математического аппарата, а также их согласованностью с результатами экспериментальных исследований. Достоверность экспериментальных данных подкрепляется проведением опытов в полном соответствии с общепринятыми методическими рекомендациями. Допущения и ограничения в доказательствах утверждений достаточно обоснованы.
Внедрение результатов исследований. Программное средство
обнаружения ПОАВ использовано в составе системы обеспечения
информационной безопасности в Государственном научном центре Российской
9
Федерации федеральном государственном унитарном предприятии «Центральный научно-исследовательский институт химии и механики им. Д.И. Менделеева» (ГНЦ РФ ФГУП «ЦНИИХМ»).
Программное средство обнаружения было использовано как самостоятельная программа для контроля отсутствия нелегитимного ПОАВ при подготовке к вводу в эксплуатацию части парка ЭВМ федерального государственного унитарного предприятия «Научно-исследовательского института стандартизации и унификации» (ФГУП «НИИСУ»).
Теоретические и практические результаты, полученные в ходе выполнения диссертационной работы, использованы в учебном курсе «Безопасность операционных систем» кафедры «Криптология и дискретная математика» НИЯУ МИФИ для подготовки материалов лабораторных работ.
Публикации и апробация работы. Результаты диссертации изложены в 10 публикациях, 4 из которых опубликованы в рецензируемых журналах ВАК РФ. Результаты работы докладывались на конференциях и семинарах различного уровня:
- XVI, XVII, XVIII Всероссийская научно-практическая конференция «Проблемы информационной безопасности в системе высшей школы», г. Москва, 2009-2011 гг. (Инфофорум);
- XIV Международная телекоммуникационная конференция молодых ученых и студентов «Молодежь и наука», г. Москва, 2011 г.;
- XIX и XX Общероссийская научно-техническая конференция «Методы и технические средства обеспечения безопасности информации», г. Санкт-Петербург, 2010-2011 гг.;
- XV конференция «Телекоммуникации и новые информационные технологии в образовании», г. Москва, 2011 г.;
- семинары в Институте системного программирования Российской академии наук, г. Москва (21 февраля и 19 сентября 2011 года);
- семинар в Московском Государственном Тех
-
Похожие работы
- Программная система выявления нелегитимной активности на промышленных площадках
- Защита облачных вычислений от атак на средства виртуализации
- Методы комбинаторной виртуализации для мобильных роботов
- Автоматизация управления предприятием в реальном масштабе времени с применением технологий виртуализации
- Модели, способы и алгоритмы унификации программного обеспечения компьютерной сети на основе технологии виртуализации
-
- Системный анализ, управление и обработка информации (по отраслям)
- Теория систем, теория автоматического регулирования и управления, системный анализ
- Элементы и устройства вычислительной техники и систем управления
- Автоматизация и управление технологическими процессами и производствами (по отраслям)
- Автоматизация технологических процессов и производств (в том числе по отраслям)
- Управление в биологических и медицинских системах (включая применения вычислительной техники)
- Управление в социальных и экономических системах
- Математическое и программное обеспечение вычислительных машин, комплексов и компьютерных сетей
- Системы автоматизации проектирования (по отраслям)
- Телекоммуникационные системы и компьютерные сети
- Системы обработки информации и управления
- Вычислительные машины и системы
- Применение вычислительной техники, математического моделирования и математических методов в научных исследованиях (по отраслям наук)
- Теоретические основы информатики
- Математическое моделирование, численные методы и комплексы программ
- Методы и системы защиты информации, информационная безопасность