# Kubernetes Namespace Escalation

{{#include ../../banners/hacktricks-training.md}}

Dans Kubernetes, il est assez courant que d'une manière ou d'une autre **vous parveniez à entrer dans un namespace** (en volant des identifiants d'utilisateur ou en compromettant un pod). Cependant, généralement, vous serez intéressé par **l'escalade vers un autre namespace car des choses plus intéressantes peuvent y être trouvées**.

Voici quelques techniques que vous pouvez essayer pour échapper à un autre namespace :

### Abuser des privilèges K8s

Évidemment, si le compte que vous avez volé a des privilèges sensibles sur le namespace vers lequel vous pouvez escalader, vous pouvez abuser d'actions comme **créer des pods** avec des comptes de service dans le NS, **exécuter** un shell dans un pod déjà existant à l'intérieur du ns, ou lire les **secrets** des jetons SA.

Pour plus d'informations sur les privilèges que vous pouvez abuser, lisez :

{{#ref}}
abusing-roles-clusterroles-in-kubernetes/
{{#endref}}

### Échapper au nœud

Si vous pouvez échapper au nœud soit parce que vous avez compromis un pod et que vous pouvez échapper, soit parce que vous pouvez créer un pod privilégié et échapper, vous pourriez faire plusieurs choses pour voler d'autres jetons SAs :

- Vérifiez les **jetons SAs montés dans d'autres conteneurs docker** exécutés dans le nœud
- Vérifiez les nouveaux **fichiers kubeconfig dans le nœud avec des permissions supplémentaires** accordées au nœud
- Si activé (ou activez-le vous-même), essayez de **créer des pods miroirs d'autres namespaces** car vous pourriez obtenir accès aux comptes de jetons par défaut de ces namespaces (je n'ai pas encore testé cela)

Toutes ces techniques sont expliquées dans :

{{#ref}}
attacking-kubernetes-from-inside-a-pod.md
{{#endref}}

{{#include ../../banners/hacktricks-training.md}}
