Kubernetes OPA Gatekeeper bypass
Reading time: 3 minutes
tip
Вивчайте та практикуйте AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Вивчайте та практикуйте GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Вивчайте та практикуйте Azure Hacking:
HackTricks Training Azure Red Team Expert (AzRTE)
Підтримка HackTricks
- Перевірте плани підписки!
- Приєднуйтесь до 💬 групи Discord або групи Telegram або слідкуйте за нами в Twitter 🐦 @hacktricks_live.
- Діліться хакерськими трюками, надсилаючи PR до HackTricks та HackTricks Cloud репозиторіїв на GitHub.
Оригінальний автор цієї сторінки Guillaume
Зловживання неправильними налаштуваннями
Перерахунок правил
Мати огляд може допомогти зрозуміти, які правила активні, в якому режимі і хто може їх обійти.
За допомогою CLI
$ kubectl api-resources | grep gatekeeper
k8smandatoryannotations constraints.gatekeeper.sh/v1beta1 false K8sMandatoryAnnotations
k8smandatorylabels constraints.gatekeeper.sh/v1beta1 false K8sMandatoryLabel
constrainttemplates templates.gatekeeper.sh/v1 false ConstraintTemplate
ConstraintTemplate та Constraint можуть бути використані в Open Policy Agent (OPA) Gatekeeper для примусу правил до ресурсів Kubernetes.
$ kubectl get constrainttemplates
$ kubectl get k8smandatorylabels
З графічним інтерфейсом
Графічний інтерфейс користувача також може бути доступний для доступу до правил OPA за допомогою Gatekeeper Policy Manager. Це "проста тільки для читання веб-інтерфейс для перегляду статусу політик OPA Gatekeeper у кластері Kubernetes."

Шукайте відкритий сервіс:
$ kubectl get services -A | grep gatekeeper
$ kubectl get services -A | grep 'gatekeeper-policy-manager-system'
Виняті простори імен
Як показано на зображенні вище, певні правила можуть не застосовуватися універсально до всіх просторів імен або користувачів. Натомість вони працюють на основі білого списку. Наприклад, обмеження liveness-probe
виключено з застосування до п'яти вказаних просторів імен.
Обхід
Завдяки всебічному огляду конфігурації Gatekeeper, можна виявити потенційні неправильні налаштування, які можуть бути використані для отримання привілеїв. Шукайте простори імен, що знаходяться в білому списку або виключені, де правило не застосовується, а потім здійснюйте свою атаку там.
Abusing Roles/ClusterRoles in Kubernetes
Зловживання ValidatingWebhookConfiguration
Ще один спосіб обійти обмеження - зосередитися на ресурсі ValidatingWebhookConfiguration:
Kubernetes ValidatingWebhookConfiguration
Посилання
- https://github.com/open-policy-agent/gatekeeper
- https://github.com/sighupio/gatekeeper-policy-manager
tip
Вивчайте та практикуйте AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Вивчайте та практикуйте GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Вивчайте та практикуйте Azure Hacking:
HackTricks Training Azure Red Team Expert (AzRTE)
Підтримка HackTricks
- Перевірте плани підписки!
- Приєднуйтесь до 💬 групи Discord або групи Telegram або слідкуйте за нами в Twitter 🐦 @hacktricks_live.
- Діліться хакерськими трюками, надсилаючи PR до HackTricks та HackTricks Cloud репозиторіїв на GitHub.