Защита приложений от скомпрометированной ОС
DESCRIPTION
Защита приложений от скомпрометированной ОС. Яковенко П.Н. [email protected] Ефремов Д.В. [email protected] Пакулин Н.В. [email protected] Институт системного программирования РАН. - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: Защита приложений от скомпрометированной ОС](https://reader035.vdocuments.net/reader035/viewer/2022062409/56814894550346895db5a9ef/html5/thumbnails/1.jpg)
Защита приложений от скомпрометированной ОС
Яковенко П.Н. [email protected] Ефремов Д.В. [email protected] Пакулин Н.В. [email protected] Институт системного программирования РАН
![Page 2: Защита приложений от скомпрометированной ОС](https://reader035.vdocuments.net/reader035/viewer/2022062409/56814894550346895db5a9ef/html5/thumbnails/2.jpg)
«Массовые операционные системы характеризуются двумя чертами, которые делают их малонадежными и слабо защищенными: они слишком объемные, а отдельные компоненты крайне плохо изолированы друг от друга»Таненбаум и др. (2006)
«С течением времени цифровые системы будут только усложняться, а сложность – худший враг безопасности»Шнайер (2000)
«Всего лишь одна логическая ошибка в коде операционной системы может полностью свести на нет работу всех защитных механизмов»Мэдник и Донован (1973) 2/
2615.11.2012
«Инфокоммуникационные технологии в научных исследованиях», Таруса
![Page 3: Защита приложений от скомпрометированной ОС](https://reader035.vdocuments.net/reader035/viewer/2022062409/56814894550346895db5a9ef/html5/thumbnails/3.jpg)
«Инфокоммуникационные технологии в научных исследованиях», Таруса
Червь Win32/Stuxnet
• Саботаж автоматизированных систем управления технологическими процессами (АСУ ТП)
• Украденные цифровые сертификаты компаний Realtek и JMicron
• Уязвимости «нулевого» дня (4 шт.)• Одна до сих пор не устранена• Подвержены все версии, начиная с Win2000
(для которой критические обновления уже не выпускаются)
• Автоматическое заражение при просмотре содержимого папки
• Перепрошивка контроллеров в SCADA системах• Пользовательская библиотека + драйвер в ядре
ОС• Возможность обновления, P2P взаимодействие и
др.• Подробности см. www.eset.com. “Stuxnet Under
The Microscope“.
315.11.2012
![Page 4: Защита приложений от скомпрометированной ОС](https://reader035.vdocuments.net/reader035/viewer/2022062409/56814894550346895db5a9ef/html5/thumbnails/4.jpg)
«Инфокоммуникационные технологии в научных исследованиях», Таруса
4
Червь Win32/Flame
• Сбор и передача шпионской информации• Уязвимости «нулевого» дня для заражения
компьютера• Установка драйвера, подписанного корректным
сертификатом• Взломан сертификат Microsoft Terminal Services
• Слабый алгоритм цифровой подписи MD5• Сертификат содержал право подписи других
сертификатов• Сбор данных из многих источников
• аудио и видео потоки• Данные через Bluetooth• Чтение файлов• Встраивание в процессы, выполняющиеся в
системе• Передача данных на управляющие сервера• Прием команд и дополнительных модулей от
управляющих серверов
15.11.2012
![Page 5: Защита приложений от скомпрометированной ОС](https://reader035.vdocuments.net/reader035/viewer/2022062409/56814894550346895db5a9ef/html5/thumbnails/5.jpg)
«Инфокоммуникационные технологии в научных исследованиях», Таруса
5
Ядро в массовых ОС построено на базе монолитной архитектуры◦ большой объем кода выполняется в привилегированном
режиме (в т.ч. драйверы периферийных устройств)◦ большой объем кода + монолитность ядра недостаточная
надежность ОС Недостаточная надежность слабая защищенность
◦ уязвимости в ядре◦ недокументированные возможности
В то же время современные массовые ОС предоставляют удобную среду для пользователя и разработчика◦ развитые пользовательские приложения◦ большое количество библиотек для разработчика◦ широкая поддержка периферийных устройств
Актуальна задача повышения уровня защищенности существующих массовых ОС
Проблема защищенности массовых ОС
15.11.2012
![Page 6: Защита приложений от скомпрометированной ОС](https://reader035.vdocuments.net/reader035/viewer/2022062409/56814894550346895db5a9ef/html5/thumbnails/6.jpg)
«Инфокоммуникационные технологии в научных исследованиях», Таруса
6
Постановка задачи
Обеспечение конфиденциальности «в целом»◦ Контроль доступа к каналам передачи и хранения
данных в условиях недоверенной операционной системы
◦ Недоверенный код лишен возможности передать конфиденциальные данные внешнему получателю
Обеспечение целостности◦ Контроль модификации критической информации:
Запись возможна только доверенным процессам Возможность доступа к критичной информации только «по
чтению» для недоверенного кода (в т.ч. ядра ОС)
Передача данных по каналам связи разрешена только авторизованным приложениям
Отсутствие необходимости модифицировать код операционной системы и приложений
15.11.2012
![Page 7: Защита приложений от скомпрометированной ОС](https://reader035.vdocuments.net/reader035/viewer/2022062409/56814894550346895db5a9ef/html5/thumbnails/7.jpg)
«Инфокоммуникационные технологии в научных исследованиях», Таруса
7
Введение в аппаратную виртуализациюАппаратная виртуализация вводит слой
гипервизора◦Перехват привилегированных команд◦Перехват прерываний◦Дополнительный уровень виртуализации
памятиВиртуальная машина – совокупность
регистров, дескрипторов страниц памяти, векторов прерываний и т.п.
Аппаратный гипервизор обеспечивает выполнение программ внутри виртуальных машин без преобразования
15.11.2012
![Page 8: Защита приложений от скомпрометированной ОС](https://reader035.vdocuments.net/reader035/viewer/2022062409/56814894550346895db5a9ef/html5/thumbnails/8.jpg)
«Инфокоммуникационные технологии в научных исследованиях», Таруса
8
Linux
Hypervisor
Linux
Accessdenied
Accessgranted
Trustedprocess
Delegate
Internet
Service VM Main (user’s) VM
Protectionmodule
Process
Syscallintercepti
on
Архитектура системы защиты
15.11.2012
![Page 9: Защита приложений от скомпрометированной ОС](https://reader035.vdocuments.net/reader035/viewer/2022062409/56814894550346895db5a9ef/html5/thumbnails/9.jpg)
«Инфокоммуникационные технологии в научных исследованиях», Таруса
9
Контекстпроцесса
Файл подкачки
Исполняемыефайлы
Реги
стры
(EIP
)
Таблицыприписки
Ви
рту
ал
ьн
ая п
ам
ять
DM
AФ
изи
ческ
ая п
ам
ять
ЯдроОС
Другойпроцесс
Загрузка
Возможные точки вредоносного воздействияна доверенный процесс
15.11.2012
![Page 10: Защита приложений от скомпрометированной ОС](https://reader035.vdocuments.net/reader035/viewer/2022062409/56814894550346895db5a9ef/html5/thumbnails/10.jpg)
«Инфокоммуникационные технологии в научных исследованиях», Таруса
10
Контекстпроцесса
Файл подкачки
Исполняемыефайлы
Реги
стры
(EIP
)
Таблицыприписки
Ви
рту
ал
ьн
ая п
ам
ять
DM
AФ
изи
ческ
ая п
ам
ять
ЯдроОС
Другойпроцесс
Загрузка
Возможные точки вредоносного воздействияна доверенный процесс
15.11.2012
![Page 11: Защита приложений от скомпрометированной ОС](https://reader035.vdocuments.net/reader035/viewer/2022062409/56814894550346895db5a9ef/html5/thumbnails/11.jpg)
«Инфокоммуникационные технологии в научных исследованиях», Таруса
11
Регистрация доверенного приложенияСтартовый набор ограничений задается
«регистрационной» информацией программыРегистрационная информация содержит
контрольные суммы (SHA-1) для всех объектных модулей приложения◦ в т.ч. ld.so для динамически компонуемых
приложений Регистрационная информация не привязана к
конкретному имени или расположению приложения в файловой системе◦ у каждого приложения есть уникальный ID
Запуск доверенного приложения осуществляется специальной программой «монитором», который сообщает гипервизору ID приложения◦ монитор принимает в качестве параметра
«паспорт» задачи
15.11.2012
![Page 12: Защита приложений от скомпрометированной ОС](https://reader035.vdocuments.net/reader035/viewer/2022062409/56814894550346895db5a9ef/html5/thumbnails/12.jpg)
«Инфокоммуникационные технологии в научных исследованиях», Таруса
12
Контекстпроцесса
Файл подкачки
Исполняемыефайлы
Реги
стры
(EIP
)
Таблицыприписки
Ви
рту
ал
ьн
ая п
ам
ять
DM
AФ
изи
ческ
ая п
ам
ять
ЯдроОС
Другойпроцесс
Загрузка
Возможные точки вредоносного воздействияна доверенный процесс
15.11.2012
![Page 13: Защита приложений от скомпрометированной ОС](https://reader035.vdocuments.net/reader035/viewer/2022062409/56814894550346895db5a9ef/html5/thumbnails/13.jpg)
«Инфокоммуникационные технологии в научных исследованиях», Таруса
13
Директориястраниц
Таблицастраниц
Директориястраниц
Таблицастраниц
Таблицастраниц
Гипервизор (вложен. таблицы ВМ)
Виртуальная машина (таблицы ОС)Таблицастраниц
Адрес 1
Адрес 2
Адрес 44
Адрес 1*
Адрес 2*
Вирт. адрес Физ. адрес
Физ. адрес Маш. адрес
Попытка доступа к закрытой странице
вза
им
но-
од
нозн
ачн
ое
соотв
етс
тви
е
Трансляция адресов виртуальной машины
15.11.2012
![Page 14: Защита приложений от скомпрометированной ОС](https://reader035.vdocuments.net/reader035/viewer/2022062409/56814894550346895db5a9ef/html5/thumbnails/14.jpg)
«Инфокоммуникационные технологии в научных исследованиях», Таруса
14
Виртуальная машина
Принцип защиты физической памяти
Процесс 1
Процесс 2
Процесс 3
Таблицыприписки
Таблицыприписки
V1
V2
V3
P
Расшир.таблицыприписки
Расшир.таблицыприписки
Расшир.таблицыприписки
M
Взаимоисключающие режимы доступа
Расширенные таблицы приписки контролируют доступ к общей физической памяти
Отдельные для каждого доверенного процесса◦ деление по PID
Отдельные для ядра ОС◦ деление по режиму привилегий 15.11.2012
![Page 15: Защита приложений от скомпрометированной ОС](https://reader035.vdocuments.net/reader035/viewer/2022062409/56814894550346895db5a9ef/html5/thumbnails/15.jpg)
Физ. памятьВиртуальная машина
MP
NPTU : P R/O Mp
NPTT : P R/W Mp
P
Расширенные таблицыприписки ВМ
MP
NPTU : P R/W Mp
NPTT : P Mp
P
" режимадресации
" режимадресации
синхронизируютсягипервизором
DMA
DMA
Схема защиты физической памяти
синхронизируютсягипервизором
Страница P подключена к адресному пространству доверенного процесса… не подключена
![Page 16: Защита приложений от скомпрометированной ОС](https://reader035.vdocuments.net/reader035/viewer/2022062409/56814894550346895db5a9ef/html5/thumbnails/16.jpg)
«Инфокоммуникационные технологии в научных исследованиях», Таруса
17
Другой процессДругой процесс
Доверенный процессДоверенный процессДоверенный процесс
Гипервизор
Ядро ОС
Другой процесс
Перехватпрерываниявыполненияпроцесса
Перехватвозвратауправленияпроцессу
Передача управления между процессом и ядром ОС только через гипервизор
• Сохранение регистров• Переключение домена
• Проверка регистров• Переключение домена
Проверка ограничений на содержимое памяти
Контроль за потоком управления
15.11.2012
![Page 17: Защита приложений от скомпрометированной ОС](https://reader035.vdocuments.net/reader035/viewer/2022062409/56814894550346895db5a9ef/html5/thumbnails/17.jpg)
«Инфокоммуникационные технологии в научных исследованиях», Таруса
18
Контекстпроцесса
Файл подкачки
Исполняемыефайлы
Реги
стры
(EIP
)
Таблицыприписки
Ви
рту
ал
ьн
ая п
ам
ять
DM
AФ
изи
ческ
ая п
ам
ять
ЯдроОС
Другойпроцесс
Загрузка
Возможные точки вредоносного воздействияна доверенный процесс
15.11.2012
![Page 18: Защита приложений от скомпрометированной ОС](https://reader035.vdocuments.net/reader035/viewer/2022062409/56814894550346895db5a9ef/html5/thumbnails/18.jpg)
«Инфокоммуникационные технологии в научных исследованиях», Таруса
19
ОБЕСПЕЧЕНИЕ КОНФИДЕНЦИАЛЬНОСТИ: ОГРАНИЧЕНИЕ ДОСТУПА К РЕСУРСАМ
15.11.2012
![Page 19: Защита приложений от скомпрометированной ОС](https://reader035.vdocuments.net/reader035/viewer/2022062409/56814894550346895db5a9ef/html5/thumbnails/19.jpg)
«Инфокоммуникационные технологии в научных исследованиях», Таруса
20
Основная VM
Ядро ОС
Сервисная VM
Ядро ОС
Гипервизор
Клиент
Авторизованныйпроцесс
Параметры вызоваСопоставление
Архитектура удалённого исполнения системных вызовов
Интернет
Сервер
Опер. системыв обеих машинах
недоверенные
Модуль ядраКБ Модуль ядраКБ
Хранилище
15.11.2012
![Page 20: Защита приложений от скомпрометированной ОС](https://reader035.vdocuments.net/reader035/viewer/2022062409/56814894550346895db5a9ef/html5/thumbnails/20.jpg)
«Инфокоммуникационные технологии в научных исследованиях», Таруса
21
Обмен данными ВМ и гипервизора
Виртуальнаямашина
Кольцевой буфер
Гипервизор
Виртуальное PCI устройство
IRQ (извещение о данных в буфере)
Обработчик
прерывания
…
ЗАПРОС
ОТВЕТ
15.11.2012
![Page 21: Защита приложений от скомпрометированной ОС](https://reader035.vdocuments.net/reader035/viewer/2022062409/56814894550346895db5a9ef/html5/thumbnails/21.jpg)
«Инфокоммуникационные технологии в научных исследованиях», Таруса
22
Гипервизор
Основная ВМ(недоверенная)
Сервисная ВМ(доверенная)
NFS клиентNFS сервер
Системный вызов
Доверенныйпроцесс
Ядро ОС
Параметры/Результатывызова
«READ» – разрешен всем«WRITE» – только доверенным процессам
Сопоставление
• запрос допустимости «write» операций• извещение о результатах «read» операций доверенного процесса
Файловаясистема
Процесс
защита целостности файлов
15.11.2012
![Page 22: Защита приложений от скомпрометированной ОС](https://reader035.vdocuments.net/reader035/viewer/2022062409/56814894550346895db5a9ef/html5/thumbnails/22.jpg)
«Инфокоммуникационные технологии в научных исследованиях», Таруса
23
УГРОЗЫ И ВОЗМОЖНЫЕ АТАКИ НА СИСТЕМУ ЗАЩИТЫ
15.11.2012
![Page 23: Защита приложений от скомпрометированной ОС](https://reader035.vdocuments.net/reader035/viewer/2022062409/56814894550346895db5a9ef/html5/thumbnails/23.jpg)
«Инфокоммуникационные технологии в научных исследованиях», Таруса
24
конфигурация
Исполняемыефайлы
Фи
зическ
ая п
ам
ять
DM
A
вм
ЯдроОС
процесс
Загрузка
Возможные точки вредоносного воздействиягипервизор
Регистрационнаяинформация
Загруз
ка
Гипервизор
КомпонентСЗ
15.11.2012
![Page 24: Защита приложений от скомпрометированной ОС](https://reader035.vdocuments.net/reader035/viewer/2022062409/56814894550346895db5a9ef/html5/thumbnails/24.jpg)
«Инфокоммуникационные технологии в научных исследованиях», Таруса
25
конфигурация
Исполняемыефайлы
Фи
зическ
ая п
ам
ять
DM
A
вм
ЯдроОС
процесс
Загрузка
Возможные точки вредоносного воздействиягипервизор
Регистрационнаяинформация
Загруз
ка
Гипервизор
КомпонентСЗ
15.11.2012
![Page 25: Защита приложений от скомпрометированной ОС](https://reader035.vdocuments.net/reader035/viewer/2022062409/56814894550346895db5a9ef/html5/thumbnails/25.jpg)
«Инфокоммуникационные технологии в научных исследованиях», Таруса
26
“dynaload”driver
Secureloader
Hypervisor
Trusted Platform Module
SKINIT JMP
• ZERO PCR-17• HASH(secure loader) PCR-17
PCR17 TPM Private Key
• HASH(hypervisor) PCR-17• HASH(nonce) PCR-17
• SIGN(PCR17 | Private Key)• Signed checksum User
“activate” SHA-1
Проект активации
15.11.2012
![Page 26: Защита приложений от скомпрометированной ОС](https://reader035.vdocuments.net/reader035/viewer/2022062409/56814894550346895db5a9ef/html5/thumbnails/26.jpg)
«Инфокоммуникационные технологии в научных исследованиях», Таруса
28
ДОПОЛНИТЕЛЬНЫЕ УГРОЗЫ
15.11.2012
![Page 27: Защита приложений от скомпрометированной ОС](https://reader035.vdocuments.net/reader035/viewer/2022062409/56814894550346895db5a9ef/html5/thumbnails/27.jpg)
«Инфокоммуникационные технологии в научных исследованиях», Таруса
29
SMM(System Management Mode)
Степень угрозы: высокая (полный контроль)Сложность проведения атаки: высокаяУсловия успешности применения атаки:
◦ Зависит от BIOS◦ Зависит от аппаратного обеспечения
Вероятность успешности применения атаки: высокая
Оценка сложности защиты от атаки:◦ Перепрошивка BIOS (лёгкая). Не всегда
возможно.◦ Эмуляция SMM (AMD SVM) (средняя).
Возможность защиты для Intel VT – не известна.
15.11.2012
![Page 28: Защита приложений от скомпрометированной ОС](https://reader035.vdocuments.net/reader035/viewer/2022062409/56814894550346895db5a9ef/html5/thumbnails/28.jpg)
«Инфокоммуникационные технологии в научных исследованиях», Таруса
30
Эмуляция пользовательских действий зловредной программойСтепень угрозы: средняя (потеря
конфиденциальности данных)Сложность проведения атаки: низкаяВероятность успешности применения атаки:
средняяОценка сложности защиты от атаки:
◦ Более точное определение конфигураций доверенных приложений (даёт лишь частичные гарантии защиты) (средняя)
◦ Запрашивать каждый раз гипервизором подтверждение у пользователя при запуске доверенного приложения (перекладвание ответственности на пользователя) (сложная)
◦ Создание защищённого канала «Пользователь - Приложение» (сложная)
15.11.2012
![Page 29: Защита приложений от скомпрометированной ОС](https://reader035.vdocuments.net/reader035/viewer/2022062409/56814894550346895db5a9ef/html5/thumbnails/29.jpg)
«Инфокоммуникационные технологии в научных исследованиях», Таруса
31
Перепрошивка BIOSСтепень угрозы: высокая (полный контроль)Сложность проведения атаки: высокаяУсловия успешности применения атаки:
◦ Зависит от BIOS (не всегда возможно перезаписать) Возможна закладка на заводе-производителе
◦ Необходима перезагрузка компьютера после заражения
Вероятность успешности применения атаки: высокая
Оценка сложности защиты от атаки:◦ Защита прошивки BIOS (средняя)◦ Поддержка доверенной загрузки (средняя)
15.11.2012
![Page 30: Защита приложений от скомпрометированной ОС](https://reader035.vdocuments.net/reader035/viewer/2022062409/56814894550346895db5a9ef/html5/thumbnails/30.jpg)
«Инфокоммуникационные технологии в научных исследованиях», Таруса
32
Подмена конфигурационных файлов системыСтепень угрозы: малаяСложность проведения атаки: высокаяУсловия успешности применения атаки:
◦ Доступ к устройству хранения конфигурации системы защиты
◦ Загрузка администратором системы подменённых файлов конфигурации
Вероятность успешности применения атаки: высокая
Оценка сложности защиты от атаки:◦ Шифрование файлов конфигурации (лёгкая)◦ Цифровая подпись файлов конфигурации
(лёгкая)
15.11.2012
![Page 31: Защита приложений от скомпрометированной ОС](https://reader035.vdocuments.net/reader035/viewer/2022062409/56814894550346895db5a9ef/html5/thumbnails/31.jpg)
«Инфокоммуникационные технологии в научных исследованиях», Таруса
33
Взлом сетевых соединений доверенных процессов
Степень угрозы: средняя (потеря части конфиденциальных данных)
Сложность проведения атаки: лёгкая – сложная (зависит от встроенных средств защиты каналов)
Условия успешности применения атаки:◦ Наличие способа перехватывать передающиеся по
пакету каналыВероятность успешности применения атаки:
высокаяОценка сложности защиты от атаки:
◦ Лёгкая (шифрованый протокол передачи данных. Уровень приложения)
◦ Средняя (принудительное шифрование в сервисной ВМ)
15.11.2012
![Page 32: Защита приложений от скомпрометированной ОС](https://reader035.vdocuments.net/reader035/viewer/2022062409/56814894550346895db5a9ef/html5/thumbnails/32.jpg)
«Инфокоммуникационные технологии в научных исследованиях», Таруса
34
Теоретические возможности взломать системуОшибка в реализации системы
защитыНарушение требования
доверенности прикладных программ
Неправильная конфигурация системы
Подмена пакетов программDMA атака на стабильность
системы (есть возможность защититься)
Ошибки/Закладки в аппаратуре
15.11.2012
![Page 33: Защита приложений от скомпрометированной ОС](https://reader035.vdocuments.net/reader035/viewer/2022062409/56814894550346895db5a9ef/html5/thumbnails/33.jpg)
«Инфокоммуникационные технологии в научных исследованиях», Таруса
35
Ограничения системыАппаратные требования (VT,NPT,IOMMU,TPM)Многоядерность (нет поддержки)Межпроцессное
взаимодействие(целостность)Доверенная загрузка и доверенная
динамическая загрузка (не реализована)Расширенная интроспекция (способность
отслеживать события в ВМ)Поддержка иных операционных системГипервизор первого типаОграниченное число видов защищаемых
ресурсов
15.11.2012
![Page 34: Защита приложений от скомпрометированной ОС](https://reader035.vdocuments.net/reader035/viewer/2022062409/56814894550346895db5a9ef/html5/thumbnails/34.jpg)
Summary
Аспекты системы защитыОценка
трудоемкости
Оценка вклада
в overhea
d
Поддержка AMD 32 64
Поддержка Intel 32 64
Поддержка ARM (мобильные платформы)
Поддержка ОС Linux Win.
Межпроцессное взаимодействие
Поддержка многоядерности
Гипервизор bare-metal На базе NOVA(?)
Целостность файлов
Доверенная загрузка
Контроль USB
Доверенный интерфейс пользователя
Поддержка виртуализации серверов (контейнеры)