Kubernetes Kyverno bypass

Tip

Aprende y practica AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Aprende y practica GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Aprende y practica Az Hacking: HackTricks Training Azure Red Team Expert (AzRTE)

Apoya a HackTricks

El autor original de esta página es Guillaume

Abusando de la mala configuración de políticas

Enumerar reglas

Tener una visión general puede ayudar a saber qué reglas están activas, en qué modo y quién puede eludirlas.

$ kubectl get clusterpolicies
$ kubectl get policies

Enumerar Excluidos

Para cada ClusterPolicy y Policy, puedes especificar una lista de entidades excluidas, incluyendo:

  • Grupos: excludedGroups
  • Usuarios: excludedUsers
  • Cuentas de Servicio (SA): excludedServiceAccounts
  • Roles: excludedRoles
  • Roles de Clúster: excludedClusterRoles

Estas entidades excluidas estarán exentas de los requisitos de la política, y Kyverno no aplicará la política para ellas.

Ejemplo

Vamos a profundizar en un ejemplo de clusterpolicy:

$ kubectl get clusterpolicies MYPOLICY -o yaml

Busca las entidades excluidas:

exclude:
any:
- clusterRoles:
- cluster-admin
- subjects:
- kind: User
name: system:serviceaccount:DUMMYNAMESPACE:admin
- kind: User
name: system:serviceaccount:TEST:thisisatest
- kind: User
name: system:serviceaccount:AHAH:*

Dentro de un clúster, numerosos componentes, operadores y aplicaciones añadidos pueden necesitar exclusión de una política de clúster. Sin embargo, esto puede ser explotado al dirigirse a entidades privilegiadas. En algunos casos, puede parecer que un namespace no existe o que careces de permiso para suplantar a un usuario, lo que puede ser un signo de mala configuración.

Abusando de ValidatingWebhookConfiguration

Otra forma de eludir políticas es centrarse en el recurso ValidatingWebhookConfiguration:

Kubernetes ValidatingWebhookConfiguration

Más información

Para más información, consulta https://madhuakula.com/kubernetes-goat/docs/scenarios/scenario-22/securing-kubernetes-clusters-using-kyverno-policy-engine/welcome/

Tip

Aprende y practica AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Aprende y practica GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Aprende y practica Az Hacking: HackTricks Training Azure Red Team Expert (AzRTE)

Apoya a HackTricks