Kubernetes Pentesting
{{#include ../../banners/hacktricks-training.md}}
Kubernetes Grundlagen
Wenn Sie nichts über Kubernetes wissen, ist dies ein guter Anfang. Lesen Sie es, um mehr über die Architektur, Komponenten und grundlegenden Aktionen in Kubernetes zu erfahren:
{{#ref}} kubernetes-basics.md {{#endref}}
Labs zum Üben und Lernen
Härtung von Kubernetes / Automatische Tools
{{#ref}} kubernetes-hardening/ {{#endref}}
Manueller Kubernetes Pentest
Von außen
Es gibt mehrere mögliche Kubernetes-Dienste, die Sie im Internet (oder in internen Netzwerken) finden könnten. Wenn Sie sie finden, wissen Sie, dass es dort eine Kubernetes-Umgebung gibt.
Je nach Konfiguration und Ihren Berechtigungen könnten Sie in der Lage sein, diese Umgebung auszunutzen. Für weitere Informationen:
{{#ref}} pentesting-kubernetes-services/ {{#endref}}
Enumeration innerhalb eines Pods
Wenn Sie es schaffen, einen Pod zu kompromittieren, lesen Sie die folgende Seite, um zu lernen, wie Sie enumerieren und versuchen können, Berechtigungen zu eskalieren/zu entkommen:
{{#ref}} attacking-kubernetes-from-inside-a-pod.md {{#endref}}
Enumerieren von Kubernetes mit Anmeldeinformationen
Möglicherweise haben Sie es geschafft, Benutzeranmeldeinformationen, ein Benutzertoken oder ein Dienstkonto-Token zu kompromittieren. Sie können es verwenden, um mit dem Kubernetes API-Dienst zu kommunizieren und versuchen, es zu enumerieren, um mehr darüber zu erfahren:
{{#ref}} kubernetes-enumeration.md {{#endref}}
Ein weiteres wichtiges Detail zur Enumeration und zum Missbrauch von Kubernetes-Berechtigungen ist die Kubernetes Role-Based Access Control (RBAC). Wenn Sie Berechtigungen missbrauchen möchten, sollten Sie zuerst hier darüber lesen:
{{#ref}} kubernetes-role-based-access-control-rbac.md {{#endref}}
Wenn Sie über RBAC Bescheid wissen und die Umgebung enumeriert haben, können Sie nun versuchen, die Berechtigungen mit:
{{#ref}} abusing-roles-clusterroles-in-kubernetes/ {{#endref}}
Privilegieneskalation zu einem anderen Namespace
Wenn Sie einen Namespace kompromittiert haben, können Sie möglicherweise zu anderen Namespaces mit interessanteren Berechtigungen/Ressourcen entkommen:
{{#ref}} kubernetes-namespace-escalation.md {{#endref}}
Von Kubernetes zur Cloud
Wenn Sie ein K8s-Konto oder einen Pod kompromittiert haben, könnten Sie in der Lage sein, zu anderen Clouds zu wechseln. Dies liegt daran, dass es in Clouds wie AWS oder GCP möglich ist, einem K8s SA Berechtigungen über die Cloud zu geben.
{{#ref}} kubernetes-pivoting-to-clouds.md {{#endref}}
{{#include ../../banners/hacktricks-training.md}}