Red Kube – это набор команд kubectl, написанных для оценки состояния безопасности кластеров Kubernetes с точки зрения злоумышленника.
Команды либо пассивны для сбора данных и раскрытия информации, либо активны для выполнения реальных действий, влияющих на кластер.
Команды привязаны к MITER ATT & CK Tactics, чтобы помочь понять, где у нас больше всего пробелов, и расставить приоритеты в выводах.
Текущая версия снабжена модулем оркестровки python для выполнения нескольких команд за один запуск в зависимости от различных сценариев или тактик.
Пожалуйста, используйте с осторожностью, так как некоторые команды активны и развертывают новые контейнеры или изменяют конфигурацию управления доступом на основе ролей.
Предупреждение: вы НЕ должны использовать команды red-kube в кластере Kubernetes, которым вы не владеете!
Зависимости Python
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 based)
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
Почему стоит выбрать kubectl и не использовать api kubernetes в Python?
При выполнении оценок red team и эмуляции противника быстрые манипуляции и настройки инструментов, используемых в арсенале, имеют решающее значение.
Возможность проводить такие оценки и комбинировать методы атаки k8s, основанные на kubectl и мощных командах Linux, значительно сокращает время и усилия.
Скачать Red-Kube