
Red Team K8S Angreiferemulation basierend auf kubectl

Red Kube ist eine Sammlung von kubectl-Befehlen, die entwickelt wurden, um die Sicherheitslage von Kubernetes-Clustern aus der Perspektive eines Angreifers zu bewerten.
Die Befehle sind entweder passiv (Datensammlung und Informationspreisgabe) oder aktiv (Ausführung echter Aktionen, die den Cluster beeinflussen).
Die Befehle sind MITRE ATT&CK-Taktiken zugeordnet, um ein Gefühl dafür zu bekommen, wo die meisten Lücken liegen, und um die Ergebnisse priorisieren zu können.
Die aktuelle Version ist mit einem Python-Orchestrierungsmodul versehen, um mehrere Befehle in einem Durchlauf basierend auf verschiedenen Szenarien oder Taktiken auszuführen.
Bitte verwenden Sie die Befehle mit Vorsicht, da einige aktiv sind und aktiv neue Container bereitstellen oder die rollenbasierte Zugriffskontrolle ändern.
Warnung: Sie sollten Red-Kube-Befehle NICHT auf einem Kubernetes-Cluster verwenden, der Ihnen nicht gehört!
python3 Anforderungen
pip3 install -r requirements.txt
kubectl (Ubuntu / Debian)
sudo apt-get update
sudo apt-get install -y apt-transport-https ca-certificates curl
sudo curl -fsSLo /usr/share/keyrings/kubernetes-archive-keyring.gpg https://packages.cloud.google.com/apt/doc/apt-key.gpg
echo "deb [signed-by=/usr/share/keyrings/kubernetes-archive-keyring.gpg] https://apt.kubernetes.io/ kubernetes-xenial main" | sudo tee /etc/apt/sources.list.d/kubernetes.list
sudo apt-get update
sudo apt-get install -y kubectl
kubectl (Red Hat-basiert)
cat <<EOF > /etc/yum.repos.d/kubernetes.repo
[kubernetes]
name=Kubernetes
baseurl=https://packages.cloud.google.com/yum/repos/kubernetes-el7-x86_64
enabled=1
gpgcheck=1
repo_gpgcheck=1
gpgkey=https://packages.cloud.google.com/yum/doc/yum-key.gpg https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg
EOF
yum install -y kubectl
jq
sudo apt-get update -y
sudo apt-get install -y jq
usage: python3 main.py [-h] [--mode active/passive/all] [--tactic TACTIC_NAME] [--show_tactics] [--cleanup]
required arguments:
--mode Run kubectl commands which are active / passive / all modes
--tactic Choose tactic
other arguments:
-h --help show this help message and exit
--show_tactics show all tactics
1 Erstes Workshop mit Lab01 und Lab02 Webinar-Link
2 Zweites Workshop mit Lab03 und Lab04 Webinar-Link
Warum kubectl wählen und nicht die Kubernetes-API in Python nutzen?
Bei der Durchführung von Red-Team-Bewertungen und Angriffssimulationen sind schnelle Anpassungen und Änderungen an den im Arsenal verwendeten Werkzeugen entscheidend.
Die Möglichkeit, solche Bewertungen durchzuführen und die K8s-Angriffstechniken basierend auf kubectl und leistungsstarken Linux-Befehlen zu kombinieren, reduziert den Zeit- und Arbeitsaufwand erheblich.
Diese Forschung wurde vom Lightspin Security Research Team durchgeführt. Für weitere Informationen kontaktieren Sie uns unter [email protected].
Dieses Repository ist unter der Apache License 2.0 verfügbar.
| Taktik | Anzahl |
|---|
| Reconnaissance | 2 |
| Initial Access | 0 |
| Execution | 0 |
| Persistence | 2 |
| Privilege Escalation | 4 |
| Defense Evasion | 1 |
| Credential Access | 8 |
| Discovery | 15 |
| Lateral Movement | 0 |
| Collection | 1 |
| Command and Control | 2 |
| Exfiltration | 1 |
| Impact | 0 |