Запобігання спроб втечі контейнерів за допомогою безпеки Falcon Cloud Runtime

CrowdStrike назвав лідер радіолокатора морозу в безпеці хмари та застосування часу виконання

Вектори втечі контейнерів

Втеча контейнерів дозволяє зловмисникам вирватися з меж ізоляції контейнерів та отримати доступ до основної системи хостів. Ці вектори втечі, як правило, використовують недоліки в конфігурації контейнерів, вразливих ситуацій з додатком або бібліотекою або слабкими ядрами.

Давайте розглянемо кілька прикладів векторів втечі контейнерів.

Привілейоване зловживання контейнерами

Контейнери, що працюють у привілейованому режимі, ефективно відключають більшість механізмів безпеки, надаючи майже еквівалентний доступ до хост-системи. Ця конфігурація особливо небезпечна, оскільки дозволяє зловмисникам можливість завантажувати модулі ядра, потенційно встановлювати чутливі файли хоста та отримувати повний доступ до хост -пристроїв.

Об'ємні подвиги кріплення

Неправильні кріплення гучності можуть створити прямі шляхи для втечі контейнерів, розкриваючи чутливі каталоги хостів або системні розетки. Деякі з найбільш використовуваних критичних точок кріплення:

  • /var/run/docker.sock: Повний доступ API Docker API
  • /: Доступ до кореневої файлової системи хостів
  • /Proc: Інформація про процесу процесу
  • /sys: Конфігурація системи хоста

Експлуатація вразливості ядра

Контейнери поділяють ядро господаря, роблячи вразливості ядра особливо небезпечними для контейнерних середовищ. Одним із останніх прикладів буде CVE-2012-0847 (брудна труба).

Неправильні конфігурації

Надмірні можливості Linux, надані контейнерам, можуть забезпечити методи втечі. Нижче наведено кілька прикладів:

  • CAP_SYS_ADMIN: Дозволяє операції з монтажу та інші привілейовані дії
  • CAP_NET_ADMIN: Вмикає маніпулювання конфігурацією мережі
  • Cap_sys_ptrace: дозволяє відстежувати процес та доступ до пам'яті
  • Cap_sys_module: дозволяє завантажувати модулі ядра

Від початкового доступу до порушення

Початкові вектори доступу в контейнерних умовах

Противники використовують кілька різних методик для отримання початкового доступу до контейнерних середовищ. Найпоширеніший вектор атаки передбачає зловживання API Docker та Kubernetes (T1552 → T1610), де зловмисники експлуатують відкриті кінцеві точки API, слабкі механізми аутентифікації або неправильно налаштовані налаштування на основі ролей (RBAC). Ці неправильні конфігурації часто є результатом неповного загартування безпеки контейнерних оркестраційних платформ. Інші початкові вектори доступу, які спостерігалися, включають експлуатацію вразливого контейнерного застосування (T1190) та компрометованого реєстру зображень (T1204).

Детальна ланцюжок вбивства атаки: від доступу до контейнерів до втечі

Прогрес від початкового доступу до контейнерів до успішної втечі слідує за систематичною схемою, яку зловмисники вдосконалили з часом.

Далі ми вивчаємо повну ланцюжок вбивства нападу, демонструючи, як одна неправильна конфігурація-піддаючи API Docker в Інтернет-може призвести до всебічного компромісу цілого хмарного середовища. Ми пройдемо кожен крок цієї нападної прогресії, підкреслюючи, як один, здавалося б, незначний нагляд, може каскадувати на повне поглинання.