1 / 34

Защита приложений от скомпрометированной ОС

Защита приложений от скомпрометированной ОС. Яковенко П.Н. yak@ispras.ru Ефремов Д.В. efremov@ispras.ru Пакулин Н.В. npak@ispras.ru Институт системного программирования РАН.

desma
Download Presentation

Защита приложений от скомпрометированной ОС

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Защита приложений от скомпрометированной ОС Яковенко П.Н. yak@ispras.ru Ефремов Д.В. efremov@ispras.ru Пакулин Н.В. npak@ispras.ru Институт системного программирования РАН

  2. «Массовые операционные системы характеризуются двумя чертами, которые делают их малонадежными и слабо защищенными: они слишком объемные, а отдельные компоненты крайне плохо изолированы друг от друга» Таненбауми др. (2006) • «С течением времени цифровые системы будут только усложняться, а сложность – худший враг безопасности» Шнайер (2000) • «Всего лишь одна логическая ошибка в коде операционной системы может полностью свести на нет работу всех защитных механизмов» Мэдник и Донован (1973) «Инфокоммуникационные технологии в научных исследованиях», Таруса

  3. Червь Win32/Stuxnet • Саботаж автоматизированных систем управления технологическими процессами (АСУ ТП) • Украденные цифровые сертификаты компаний Realtekи JMicron • Уязвимости «нулевого» дня (4 шт.) • Одна до сих пор не устранена • Подвержены все версии, начиная с Win2000 (для которой критические обновления уже не выпускаются) • Автоматическое заражение при просмотре содержимого папки • Перепрошивкаконтроллеров в SCADA системах • Пользовательская библиотека + драйвер в ядре ОС • Возможность обновления, P2P взаимодействие и др. • Подробности см. www.eset.com. “Stuxnet Under The Microscope“. «Инфокоммуникационные технологии в научных исследованиях», Таруса

  4. Червь Win32/Flame • Сбор и передача шпионской информации • Уязвимости «нулевого» дня для заражения компьютера • Установка драйвера, подписанного корректным сертификатом • Взломан сертификат Microsoft Terminal Services • Слабый алгоритм цифровой подписи MD5 • Сертификат содержал право подписи других сертификатов • Сбор данных из многих источников • аудио и видео потоки • Данные через Bluetooth • Чтение файлов • Встраивание в процессы, выполняющиеся в системе • Передача данных на управляющие сервера • Прием команд и дополнительных модулей от управляющих серверов «Инфокоммуникационные технологии в научных исследованиях», Таруса

  5. Проблема защищенности массовых ОС • Ядро в массовых ОС построено на базе монолитной архитектуры • большой объем кода выполняется в привилегированном режиме (в т.ч. драйверы периферийных устройств) • большой объем кода + монолитность ядра  недостаточная надежность ОС • Недостаточная надежность  слабая защищенность • уязвимости в ядре • недокументированные возможности • В то же время современные массовые ОС предоставляют удобную среду для пользователя и разработчика • развитые пользовательские приложения • большое количество библиотек для разработчика • широкая поддержка периферийных устройств • Актуальназадача повышения уровня защищенности существующих массовых ОС «Инфокоммуникационные технологии в научных исследованиях», Таруса

  6. Постановка задачи • Обеспечение конфиденциальности «в целом» • Контроль доступа к каналам передачи и хранения данных в условиях недоверенной операционной системы • Недоверенный код лишен возможности передать конфиденциальные данные внешнему получателю • Обеспечение целостности • Контроль модификации критической информации: • Запись возможна только доверенным процессам • Возможность доступа к критичной информации только «по чтению» для недоверенного кода (в т.ч. ядра ОС) • Передача данных по каналам связи разрешена только авторизованным приложениям • Отсутствие необходимости модифицировать код операционной системы и приложений «Инфокоммуникационные технологии в научных исследованиях», Таруса

  7. Введение в аппаратную виртуализацию • Аппаратная виртуализация вводит слой гипервизора • Перехват привилегированных команд • Перехват прерываний • Дополнительный уровень виртуализации памяти • Виртуальная машина – совокупность регистров, дескрипторов страниц памяти, векторов прерываний и т.п. • Аппаратный гипервизор обеспечивает выполнение программ внутри виртуальных машин без преобразования «Инфокоммуникационные технологии в научных исследованиях», Таруса

  8. Архитектура системы защиты Service VM Main (user’s) VM Linux Linux Process Delegate Trusted process Syscall interception Hypervisor Protection module Access granted Access denied Internet «Инфокоммуникационные технологии в научных исследованиях», Таруса

  9. Возможные точки вредоносного воздействия на доверенный процесс Контекст процесса Физическая память Виртуальная память Ядро ОС Таблицы приписки Загрузка Исполняемые файлы Другой процесс DMA Файл подкачки Регистры (EIP) «Инфокоммуникационные технологии в научных исследованиях», Таруса

  10. Возможные точки вредоносного воздействия на доверенный процесс Контекст процесса Физическая память Виртуальная память Ядро ОС Таблицы приписки Загрузка Исполняемые файлы Другой процесс DMA Файл подкачки Регистры (EIP) «Инфокоммуникационные технологии в научных исследованиях», Таруса

  11. Регистрация доверенного приложения • Стартовый набор ограничений задается «регистрационной» информацией программы • Регистрационная информация содержит контрольные суммы (SHA-1) для всех объектных модулей приложения • в т.ч. ld.soдля динамически компонуемых приложений • Регистрационная информация не привязана к конкретному имени или расположению приложения в файловой системе • у каждого приложения есть уникальный ID • Запуск доверенного приложения осуществляется специальной программой «монитором», который сообщает гипервизору ID приложения • монитор принимает в качестве параметра «паспорт» задачи «Инфокоммуникационные технологии в научных исследованиях», Таруса

  12. Возможные точки вредоносного воздействияна доверенный процесс Контекст процесса Физическая память Виртуальная память Ядро ОС Таблицы приписки Загрузка Исполняемые файлы Другой процесс DMA Файл подкачки Регистры (EIP) «Инфокоммуникационные технологии в научных исследованиях», Таруса

  13. Трансляция адресов виртуальной машины Виртуальная машина (таблицы ОС) Таблица страниц Адрес 1 Адрес 2 Директория страниц Вирт. адрес Физ. адрес Таблица страниц Адрес 44 взаимно- однозначное соответствие Гипервизор (вложен. таблицы ВМ) Таблица страниц Адрес 1* Адрес 2* Директория страниц Маш. адрес Физ. адрес Таблица страниц Попытка доступа к закрытой странице «Инфокоммуникационные технологии в научных исследованиях», Таруса

  14. Принцип защиты физической памяти Виртуальная машина Расшир. таблицы приписки • Расширенные таблицы приписки контролируют доступ к общей физической памяти • Отдельные для каждого доверенного процесса • деление по PID • Отдельные для ядра ОС • деление по режиму привилегий V1 Таблицы приписки Процесс 1 Расшир. таблицы приписки P M V2 Процесс 2 Таблицы приписки Расшир. таблицы приписки V3 Процесс 3 Взаимоисключающие режимы доступа «Инфокоммуникационные технологии в научных исследованиях», Таруса

  15. Схема защиты физической памяти Виртуальная машина NPTU :P  R/O  Mp Физ. память P MP синхронизируются гипервизором • режим адресации NPTT : P  R/W  Mp DMA Страница P подключена к адресному пространству доверенного процесса Расширенные таблицы приписки ВМ … не подключена DMA NPTU : P  R/W  Mp P MP синхронизируются гипервизором • режим адресации NPTT : P    Mp

  16. Контроль за потоком управления Передача управления между процессом и ядром ОС только через гипервизор Проверка ограничений на содержимое памяти Доверенный процесс Доверенный процесс Доверенный процесс Перехват прерывания выполнения процесса • Проверка регистров • Переключение домена Гипервизор Перехват возврата управления процессу • Сохранение регистров • Переключение домена Ядро ОС Другой процесс Другой процесс Другой процесс «Инфокоммуникационные технологии в научных исследованиях», Таруса

  17. Возможные точки вредоносного воздействия на доверенный процесс Контекст процесса Физическая память Виртуальная память Ядро ОС Таблицы приписки Загрузка Исполняемые файлы Другой процесс DMA Файл подкачки Регистры (EIP) «Инфокоммуникационные технологии в научных исследованиях», Таруса

  18. Обеспечение конфиденциальности: ограничение доступа к ресурсам «Инфокоммуникационные технологии в научных исследованиях», Таруса

  19. Архитектура удалённого исполнения системных вызовов Интернет Опер. системы в обеих машинах недоверенные Сервисная VM Ядро ОС Основная VM Авторизованный процесс Ядро ОС Сервер Модуль ядра Клиент Модуль ядра КБ КБ Гипервизор Сопоставление Хранилище Параметры вызова «Инфокоммуникационные технологии в научных исследованиях», Таруса

  20. Обмен данными ВМ и гипервизора Виртуальная машина … Обработчик прерывания ОТВЕТ Кольцевойбуфер ВиртуальноеPCI устройство ЗАПРОС IRQ (извещение о данных в буфере) Гипервизор «Инфокоммуникационные технологии в научных исследованиях», Таруса

  21. защита целостности файлов Сервисная ВМ (доверенная) Основная ВМ (недоверенная) «READ» – разрешен всем «WRITE» – только доверенным процессам Файловая система Ядро ОС Доверенный процесс NFS сервер NFS клиент • запрос допустимости «write»операций • извещение о результатах «read»операций доверенного процесса Процесс Системный вызов Гипервизор Параметры/Результаты вызова Сопоставление «Инфокоммуникационные технологии в научных исследованиях», Таруса

  22. Угрозы и возможные атаки на систему защиты «Инфокоммуникационные технологии в научных исследованиях», Таруса

  23. Возможные точки вредоносного воздействия гипервизор Гипервизор вм Физическая память Компонент СЗ Загрузка Исполняемые файлы Ядро ОС процесс DMA конфигурация Загрузка Регистрационная информация «Инфокоммуникационные технологии в научных исследованиях», Таруса

  24. Возможные точки вредоносного воздействия гипервизор Гипервизор вм Физическая память Компонент СЗ Загрузка Исполняемые файлы Ядро ОС процесс DMA конфигурация Загрузка Регистрационная информация «Инфокоммуникационные технологии в научных исследованиях», Таруса

  25. Проект активации SKINIT JMP “activate” “dynaload” driver Secure loader Hypervisor SHA-1 • ZERO  PCR-17 • HASH(secure loader)  PCR-17 • HASH(hypervisor)  PCR-17 • HASH(nonce)  PCR-17 • SIGN(PCR17 | Private Key) • Signed checksum  User PCR17 TPM Private Key Trusted Platform Module «Инфокоммуникационные технологии в научных исследованиях», Таруса

  26. Дополнительные угрозы «Инфокоммуникационные технологии в научных исследованиях», Таруса

  27. SMM(System Management Mode) • Степень угрозы: высокая (полный контроль) • Сложность проведения атаки: высокая • Условия успешности применения атаки: • Зависит от BIOS • Зависит от аппаратного обеспечения • Вероятность успешности применения атаки: высокая • Оценка сложности защиты от атаки: • Перепрошивка BIOS (лёгкая). Не всегда возможно. • Эмуляция SMM (AMDSVM) (средняя). Возможность защиты для Intel VT – не известна. «Инфокоммуникационные технологии в научных исследованиях», Таруса

  28. Эмуляция пользовательских действий зловредной программой • Степень угрозы: средняя (потеря конфиденциальности данных) • Сложность проведения атаки: низкая • Вероятность успешности применения атаки: средняя • Оценка сложности защиты от атаки: • Более точное определение конфигураций доверенных приложений (даёт лишь частичные гарантии защиты) (средняя) • Запрашивать каждый раз гипервизором подтверждение у пользователя при запуске доверенного приложения (перекладвание ответственности на пользователя) (сложная) • Создание защищённого канала «Пользователь - Приложение» (сложная) «Инфокоммуникационные технологии в научных исследованиях», Таруса

  29. Перепрошивка BIOS • Степень угрозы: высокая (полный контроль) • Сложность проведения атаки: высокая • Условия успешности применения атаки: • Зависит от BIOS (не всегда возможно перезаписать) • Возможна закладка на заводе-производителе • Необходима перезагрузка компьютера после заражения • Вероятность успешности применения атаки: высокая • Оценка сложности защиты от атаки: • Защита прошивки BIOS (средняя) • Поддержка доверенной загрузки (средняя) «Инфокоммуникационные технологии в научных исследованиях», Таруса

  30. Подмена конфигурационных файлов системы • Степень угрозы: малая • Сложность проведения атаки: высокая • Условия успешности применения атаки: • Доступ к устройству хранения конфигурациисистемы защиты • Загрузка администратором системы подменённых файлов конфигурации • Вероятность успешности применения атаки: высокая • Оценка сложности защиты от атаки: • Шифрование файлов конфигурации (лёгкая) • Цифровая подпись файлов конфигурации (лёгкая) «Инфокоммуникационные технологии в научных исследованиях», Таруса

  31. Взлом сетевых соединений доверенных процессов • Степень угрозы: средняя (потеря части конфиденциальных данных) • Сложность проведения атаки: лёгкая – сложная (зависит от встроенных средств защиты каналов) • Условия успешности применения атаки: • Наличие способа перехватывать передающиеся по пакету каналы • Вероятность успешности применения атаки: высокая • Оценка сложности защиты от атаки: • Лёгкая (шифрованый протокол передачи данных. Уровень приложения) • Средняя (принудительное шифрование в сервисной ВМ) «Инфокоммуникационные технологии в научных исследованиях», Таруса

  32. Теоретические возможности взломать систему • Ошибка в реализации системы защиты • Нарушение требования доверенности прикладных программ • Неправильная конфигурация системы • Подмена пакетов программ • DMA атака на стабильность системы (есть возможность защититься) • Ошибки/Закладки в аппаратуре «Инфокоммуникационные технологии в научных исследованиях», Таруса

  33. Ограничения системы • Аппаратные требования (VT,NPT,IOMMU,TPM) • Многоядерность(нет поддержки) • Межпроцессное взаимодействие(целостность) • Доверенная загрузка и доверенная динамическая загрузка (не реализована) • Расширенная интроспекция (способность отслеживать события в ВМ) • Поддержка иных операционных систем • Гипервизор первого типа • Ограниченное число видов защищаемых ресурсов «Инфокоммуникационные технологии в научных исследованиях», Таруса

  34. Summary

More Related