MITRE Caldera ist eine Plattform zur Adversary-Emulation, deren Agenten – insbesondere Sandcat und Manx – zum Zeitpunkt des Downloads dynamisch kompiliert werden. Alle Versionen von Caldera, die vor dem Commit 35bc06e veröffentlicht wurden (bis hin zu älteren Versionen), sind anfällig.
Diese Schwachstelle ist ausnutzbar, wenn auf dem Zielsystem Go, Python und gcc installiert sind – Abhängigkeiten, die im Allgemeinen für den vollen Funktionsumfang von Caldera erforderlich sind. In vielen Distributionen führt die Installation von Go auch zur Installation von gcc, was die Gefährdung weiter erhöht.
| Produkt | Caldera Framework |
| Datum | 10.03.2025 14:47:04 |
| Informationen |
|
Technische Zusammenfassung
Die Schwachstelle liegt in der Funktion zur dynamischen Kompilierung, die von den Caldera-Agenten verwendet wird. Wenn ein Agent angefordert wird, kompiliert der Server dynamisch eine benutzerdefinierte Binärdatei, indem er vom Benutzer steuerbare Parameter (wie Kommunikationsmethoden, Verschlüsselungsschlüssel und Callback-Adressen) in die Linker-Flags injiziert. Das Hauptproblem ist der unsichere Umgang mit diesen Linker-Flags – insbesondere durch die Verwendung von Optionen wie -X (ähnlich wie -D bei gcc) sowie der gefährlichen Flags -extld und -extldflags.
Obwohl die Kompilierung über subprocess.check_output() ohne shell=True erfolgt (was einen Teil der Risiken einer direkten Injection mindert), kann ein Angreifer den Kompilierungsprozess dennoch durch Missbrauch der Linker-Flags manipulieren. Durch das Festlegen eines externen Linkers (z. B. gcc oder clang) und das Übergeben von durch den Angreifer kontrollierten Argumenten über -extldflags ist es möglich, während des Build-Prozesses beliebige Befehle auszuführen.
Ein Proof-of-Concept (PoC) hat gezeigt, wie entsprechend konstruierte Werte in HTTP-Headern dieses Verhalten auslösen können, was zur Remote-Code-Ausführung auf anfälligen Systemen führt.
Empfehlungen
Sofortiges Update:
Wechseln Sie zu einer korrigierten Version von MITRE Caldera (die neueste Version des Master-Branches oder v5.1.0 und höher), die diese Schwachstelle behebt.Netzwerkzugriff einschränken:
Erlauben Sie den Zugriff auf den Caldera-Server nur von vertrauenswürdigen Hosts aus, um das Risiko unbefugter Exploits zu verringern.Build-Umgebungen absichern:
Entfernen oder beschränken Sie nicht benötigte Kompilierungstools (Go, Python, gcc) auf Produktionssystemen oder isolieren Sie den Caldera-Server in einer kontrollierten Umgebung.Überwachung und Auditierung:
Erhöhen Sie das Überwachungs- und Logging-Niveau, um anomale Aktivitäten zu erkennen, die auf Exploit-Versuche hindeuten könnten. Überprüfen Sie regelmäßig die Konfiguration und die Zugriffskontrollen für die Endpunkte der dynamischen Kompilierung.
[Callforaction-THREAT-Footer]
Leave a Reply