Использование мандатного контроля целостности для изолированного запуска средств контейнеризации в ОС Astra Linux (Алексей Старостин, OSDAY-2025)
Материал из 0x1.tv
- Докладчик
- Алексей Старостин
Мандатный контроль целостности (МКЦ) — ключевой механизм безопасности в ОС Astra Linux, защищающий от вирусов-шифровальщиков и атак с правами root. Однако его интеграция со стандартными средствами контейнеризации Linux (namespaces, cgroups) сложна и требует адаптации. Особую проблему представляют уязвимости контейнеров, описанные в NIST SP 800—190: побеги из контейнеров, неконтролируемый сетевой доступ и небезопасные конфигурации.
Разработана технология запуска контейнеров на специальных уровнях целостности МКЦ:
- Промежуточные неиерархические уровни (например, 0x00000002 для «Виртуализации»);
- Отрицательные линейные уровни (например, −128). Это позволяет изолировать недоверенное ПО (браузеры, офисные пакеты) в «песочницах», где даже при компрометации риск для системы минимален.
Технология обеспечивает:
- Защиту от межконтейнерных атак через разные линейные уровни (-10 и −128);
- Блокировку шифровальщиков — контейнер на уровне 0x00000000:-128 не может записать в пользовательские данные (0x00000000:0);
- Изоляцию критичных процессов (уровень «Высокий» 0x0000003F) от недоверенных контейнеров. МКЦ работает по умолчанию, в отличие от замкнутой программной среды.
Подход существенно усложняет эксплуатацию уязвимостей ядра при побеге из контейнера. Дополнительное преимущество — отсутствие ограничений на ПО, характерное для других механизмов безопасности. Перспективное направление — интеграция с методами машинного обучения для детектирования аномалий в изолированных контейнерах.
Содержание
Видео
Thesis
Мандатный контроль целостности (МКЦ) — фундамент безопасности ОС Astra Linux, сертифицированной по высшим классам защиты. МКЦ обеспечивает:
- Защиту привилегированных процессов
- Сохранение целостности исполняемых/конфигурационных файлов
- Защиту от вирусов (включая «шифровальщиков»)
- Противодействие эксплуатации уязвимостей (включая атаки с правами
root)
Внедрение МКЦ поверх стандартного дискреционного управления доступом в Linux создаёт сложности, требующие адаптации системного ПО. Автор предлагает технологию контейнерной виртуализации, интегрированную с МКЦ, для изоляции недоверенного ПО (браузеры, офисные пакеты) в «песочницах».
Адаптированная контейнерная виртуализация
Исследования безопасности контейнеризации[1] предлагали изоляцию через:
- Пространства имён (namespaces)
- Группы управления ресурсами (cgroups)
- Механизм
seccomp[2] - Мандатный контроль доступа SELinux[3]
Согласно NIST SP 800-190[4], основные уязвимости контейнеров:
- Побег из контейнера (container escape)
- Неограниченный сетевой доступ
- Небезопасные конфигурации
- Уязвимости контейнеризованных приложений
Решение: Запуск контейнеров на:
- Промежуточных неиерархических уровнях целостности (например,
0x00000002) - Отрицательных линейных уровнях целостности (например,
-128)
Примеры защиты
- Иерархические уровни
- Доверенное ПО: уровень «Высокий» (
0x0000003F) - Недоверенное ПО: уровень «Виртуализация» (
0x00000002)
- Линейные уровни против межконтейнерных атак
- Контейнер А:
0x00000002:-10 - Контейнер Б:
0x00000002:-128- → МКЦ блокирует запись из Б в А
- Защита от шифровальщиков
- Данные пользователя: уровень «Низкий» (
0x00000000:0) - Контейнер: уровень
0x00000000:-128- → МКЦ запрещает запись в пользовательские данные
Заключение
- МКЦ обеспечивает многоуровневую защиту по умолчанию в Astra Linux, в отличие от ЗПС или блокировки интерпретаторов.
- Запуск контейнеров на отрицательных уровнях целостности усложняет эксплуатацию уязвимостей ядра.
- Перспективное направление: интеграция МКЦ с методами машинного обучения для детектирования аномалий в контейнерах.
Презентация
Примечания и ссылки
- ↑ Wan Z., Lo D., Xia X., L. Cai. Practical and effective sandboxing for Linux containers. Empir Software Eng, 2019, Vol. 24, pp. 4034-4070.
- ↑ N. Lopes, R. Martins, M.E. Correia, S. Serrano, F. Nunes. Container Hardening Through Automated Seccomp Profiling. In Proceedings of the 2020 6th International Workshop on Container Technologies and Container Clouds, 2020, pp. 31-36.
- ↑ J.-A. Kabbe. Security analysis of Docker containers in a production environment. Norwegian University of Science and Technology, 2017, 91 p.
- ↑ NIST Special Publication 800—190. Application Container Security Guide. 2015. [1]
