
kubectlベースのRed Team K8Sアドバーサリーエミュレーション

Red Kube は、攻撃者の視点から Kubernetes クラスターのセキュリティ態勢を評価するために記述された kubectl コマンドのコレクションです。
コマンドは、データ収集や情報公開のための受動的なものと、クラスターに影響を与える実際のアクションを実行するための能動的なものがあります。
コマンドは MITRE ATT&CK 戦術に対応付けられており、どの領域に最もギャップがあるかを把握し、調査結果に優先順位を付けるのに役立ちます。
現在のバージョンは Python オーケストレーションモジュールでラップされており、さまざまなシナリオや戦術に基づいて、1回の実行で複数のコマンドを実行できます。
一部のコマンドは能動的であり、新しいコンテナを積極的にデプロイしたり、ロールベースのアクセス制御構成を変更したりするため、注意して使用してください。
警告: 自分が所有していない Kubernetes クラスターでは red-kube コマンドを使用しないでください!
python3 要件
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 ベース)
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 kubectl コマンドを active / passive / all モードで実行
--tactic 戦術を選択
other arguments:
-h --help このヘルプメッセージを表示して終了
--show_tactics すべての戦術を表示
1 最初のワークショップ (Lab01 と Lab02) ウェビナーリンク
2 2回目のワークショップ (Lab03 と Lab04) ウェビナーリンク
なぜ kubectl を選択し、Python で kubernetes API を使用しないのですか?
レッドチームのアセスメントや敵対者エミュレーションを実行する際、使用するツールの迅速な操作や調整が重要です。
kubectl と強力な Linux コマンドに基づいて k8s 攻撃手法を組み合わせて、このようなアセスメントを実行できるため、時間と労力を大幅に削減できます。
この調査は Lightspin のセキュリティ研究チームによって実施されました。 詳細については、[email protected] までお問い合わせください。
このリポジトリは Apache License 2.0 の下で利用可能です。
| Tactic | Count |
|---|
| 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 |