Automatisierte Plattform zur Angreiferemulation
Caldera™ ist eine Cybersicherheitsplattform, die entwickelt wurde, um Gegneremulation einfach zu automatisieren, manuelle Red-Teams zu unterstützen und die Incident Response zu automatisieren.
Sie basiert auf dem MITRE ATT&CK™-Framework und ist ein aktives Forschungsprojekt bei MITRE.
Das Framework besteht aus zwei Komponenten:
⭐ Erstellen Sie Ihr eigenes Plugin! Plugin-Generator: Skeleton ⭐
Diese Plugins werden vom Caldera-Team unterstützt und gepflegt.
Diese Plugins sind einsatzbereit, aber nicht standardmäßig enthalten und werden nicht vom Caldera-Team gepflegt.
Diese Anforderungen gelten für den Computer, auf dem das Kernframework ausgeführt wird:
Hinweis: Wir EMPFEHLEN DRINGEND, Caldera in einer Python-virtuellen Umgebung zu installieren, um Probleme mit pip-Paketen zu vermeiden. Du kannst eine bestehende Umgebung verwenden, wenn du möchtest, oder eine neue von Grund auf erstellen:
python3 -m venv .calderavenv
source .calderavenv/bin/activate
Prägnante Installationsschritte:
git clone https://github.com/apache/caldera.git --recursive
cd caldera
pip3 install -r requirements.txt
python3 server.py --insecure --build
Vollständige Schritte: Beginne damit, dieses Repository rekursiv zu klonen und dabei die gewünschte Version/Release im Format x.x.x anzugeben. Dadurch werden alle verfügbaren Plugins mitgeladen.
git clone https://github.com/apache/caldera.git --recursive --tag x.x.x
Als Nächstes installieren Sie die PIP-Anforderungen:
pip3 install -r requirements.txt
Starten Sie abschließend den Server.
python3 server.py --insecure --build
Das Flag --build installiert automatisch alle VueJS-UI-Abhängigkeiten, bündelt die UI in ein dist-Verzeichnis und wird vom Caldera-Server bereitgestellt. Sie müssen das Flag --build nur dann erneut verwenden, wenn Sie Plugins hinzufügen oder Änderungen an der UI vornehmen. Melden Sie sich nach dem Start unter http://localhost:8888 mit den Standard-Anmeldedaten red/admin an. Gehen Sie dann zu Plugins -> Training und absolvieren Sie den Trainingskurs im Capture-the-Flag-Stil, um die Verwendung von Caldera zu erlernen.
Wenn Sie die neue VueJS-UI nicht verwenden möchten, wechseln Sie zurück zu Caldera v4.2.0. Verwenden Sie das Flag --build für frühere Versionen entsprechend nicht, da es nicht erforderlich ist.
Beachten Sie außerdem bitte die Sicherheitsempfehlungen für die Bereitstellung von Caldera.
Lokaler Build:
git clone https://github.com/apache/caldera.git --recursive
cd caldera
docker build --build-arg VARIANT=full -t caldera .
docker run -it -p 8888:8888 caldera
Passen Sie die Portweiterleitung (-p) und die Build-Argumente (--build-arg) nach Bedarf an, um Ports zugänglich zu machen oder die Caldera-Variante zu ändern. Welche Ports Sie freigeben, hängt davon ab, welche Kontakte Sie verwenden möchten (siehe Dockerfile und docker-compose.yml als Referenz).
Vorgefertigtes Image (von GitHub Container Registry):
docker run -p 8888:8888 ghcr.io/apache/caldera:latest
Dieser Container ist möglicherweise etwas veraltet; wir empfehlen, den Container selbst zu erstellen.
Um Ihren Docker-Container ordnungsgemäß zu beenden, gehen Sie wie folgt vor:
# Find the container ID for your docker container running Caldera
docker ps
# Stop the container
docker stop <container ID>
Es sind zwei Varianten verfügbar: full und slim. Die Variante slim enthält keine Dateien, die für die Plugins emu und atomic erforderlich sind; diese werden bei Bedarf heruntergeladen, falls die Plugins jemals aktiviert werden. Die Variante full eignet sich für den Betrieb in Umgebungen ohne Internetverbindung. Slim-Images auf GHCR tragen das Präfix „slim“.