Empecemos con lo básico, que es Kubernetes?

Kubernetes es una forma open-source de orquestar y automatizar aplicaciones. Esto incluye el deployment, scaling y management. Fue diseñado por Google.

Si lo quieres hacer local puedes usar minikube, kubectl es el command line.

Se basa en microservices.

Este video es genial para entender el deployment

Despues vean este:

Ahora si, hacking kubernetes. Si haces un port scan verás:

ETCD es la database de k8s y debe estar cerrada ( no siempre lo esta) si no esta cerrada puedes bajar tokens y volverte root ja.

Kubelet es para executar commands con los privilegios del docker engine.

Como siempre vulnerable services. Una ves adentro puedes escanear todo con otra perspectiva y ver muchas más cosas. En algunas empresas por ejemplo no se requiere https en las redes internas del k8s porque se asume que estan separadas.

Otra cosa a tomar en cuenta, es que si alguien tiene acceso a tu nube (aws o azure por ejmplo) desde ahí puede atacar a tu k8s. O puedes pedir tu meta-data y bajar los tokens.Y puede ser aun peor.

Api authentication, checa si esta enable

PodSecurity y network policy, puede ser muy interesante para ver como hacer privilege escalation.

Este video es muy interesante para empezar a hackear:

Se puede empezar como si ya hubieras hackeado algo (por ejemplo si estuviera corriendo wordpress y logras command execution:

Para un demo de como se hackea pueden ver:

Finalmente como bonus este video igual tiene un peirates demo en el minuto 54

Hay escaners automaticos https://github.com/aquasecurity/kube-bench para CIS