Kubernetes OPA Gatekeeper bypass
Tip
Apprenez & pratiquez AWS Hacking:
HackTricks Training AWS Red Team Expert (ARTE)
Apprenez & pratiquez GCP Hacking:HackTricks Training GCP Red Team Expert (GRTE)
Apprenez & pratiquez Az Hacking:HackTricks Training Azure Red Team Expert (AzRTE)
Soutenez HackTricks
- Consultez les subscription plans!
- Rejoignez le đŹ Discord group ou le telegram group ou suivez-nous sur Twitter đŠ @hacktricks_live.
- Partagez des hacking tricks en soumettant des PRs aux HackTricks et HackTricks Cloud github repos.
Lâauteur original de cette page est Guillaume
Abus de mauvaise configuration
ĂnumĂ©rer les rĂšgles
Avoir un aperçu peut aider à savoir quelles rÚgles sont actives, dans quel mode et qui peut les contourner.
Avec le 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 et Constraint peuvent ĂȘtre utilisĂ©s dans Open Policy Agent (OPA) Gatekeeper pour appliquer des rĂšgles sur les ressources Kubernetes.
$ kubectl get constrainttemplates
$ kubectl get k8smandatorylabels
Avec lâinterface graphique
Une interface utilisateur graphique peut Ă©galement ĂȘtre disponible pour accĂ©der aux rĂšgles OPA avec Gatekeeper Policy Manager. Câest âune simple interface web en lecture seule pour visualiser lâĂ©tat des politiques OPA Gatekeeper dans un cluster Kubernetes.â

Recherchez le service exposé :
$ kubectl get services -A | grep gatekeeper
$ kubectl get services -A | grep 'gatekeeper-policy-manager-system'
Espaces de noms exclus
Comme illustrĂ© dans lâimage ci-dessus, certaines rĂšgles peuvent ne pas ĂȘtre appliquĂ©es universellement Ă tous les espaces de noms ou utilisateurs. Au lieu de cela, elles fonctionnent sur une base de liste blanche. Par exemple, la contrainte liveness-probe est exclue de lâapplication aux cinq espaces de noms spĂ©cifiĂ©s.
Contournement
Avec un aperçu complet de la configuration de Gatekeeper, il est possible dâidentifier des erreurs de configuration potentielles qui pourraient ĂȘtre exploitĂ©es pour obtenir des privilĂšges. Recherchez des espaces de noms sur liste blanche ou exclus oĂč la rĂšgle ne sâapplique pas, puis effectuez votre attaque lĂ -bas.
Abusing Roles/ClusterRoles in Kubernetes
Abus de ValidatingWebhookConfiguration
Une autre façon de contourner les contraintes est de se concentrer sur la ressource ValidatingWebhookConfiguration :
Kubernetes ValidatingWebhookConfiguration
Références
- https://github.com/open-policy-agent/gatekeeper
- https://github.com/sighupio/gatekeeper-policy-manager
Tip
Apprenez & pratiquez AWS Hacking:
HackTricks Training AWS Red Team Expert (ARTE)
Apprenez & pratiquez GCP Hacking:HackTricks Training GCP Red Team Expert (GRTE)
Apprenez & pratiquez Az Hacking:HackTricks Training Azure Red Team Expert (AzRTE)
Soutenez HackTricks
- Consultez les subscription plans!
- Rejoignez le đŹ Discord group ou le telegram group ou suivez-nous sur Twitter đŠ @hacktricks_live.
- Partagez des hacking tricks en soumettant des PRs aux HackTricks et HackTricks Cloud github repos.
HackTricks Cloud

