Хардкорная блоговая запись "CVE-2022-0185 - Winning a $31337 Bounty after Pwning Ubuntu and Escaping Google's KCTF Containers" еще один прекрасный пример (на ряду с CVE-2021-22555) побега из контейнера через kernel
уязвимость хоста в рамках kCTF. Код эксплоита.
Основные моменты:
- Уязвимость позволяет в Kubernetes
совершить побег из Pod
на Host
.
- Уязвимость появилась с 5.1-rc1
в марте 2019.
- Для атаки атакующий должен иметь доступ к контейнеру с CAP_SYS_ADMIN privileges
(что само по себе считай побег) или к команде unshare(CLONE_NEWNS|CLONE_NEWUSER), которая даст CAP_SYS_ADMIN privileges
в новом user namespace
- SeccompDefault в значении RuntimeDefault
благодаря блокировке unshare
способен замитигейтить данную багу (и все это только с 1.22
)
Как и в прошлый раз я рекомендую: используйте AppArmor/SeLinux/seccomp
профили для приложений, а также всегда имейте возможность смотреть что происходит внутри ваших контейнеров - прокачивайте observability
.
Статьи по теме от вендоров [1,2].
>>Click here to continue<<
