20. April 2024 – In Jenkins, eine weit verbreitete Automatisierungssoftware, wurde eine maximal kritische Schwachstelle (CVE-2024-23897) bekannt, die es ermöglicht durch spezielle Manipulation der Kommandozeilenschnittstelle (CLI) beliebige Dateien vom Zielsystem auszulesen. Die Schwere der Bedrohung mit fast maximaler CVSS Bewertung 9.8 / 10 wird durch die Existenz eines bereits veröffentlichten Proof of Concept (PoC) unterstrichen, welcher zeigt, das selbst Angreifer ohne Programmierkenntnisse die Schwachstelle ausnutzen können.
Jenkins benutzt die Bibliothek args4j zur Analyse von Befehlsargumenten. Eine Funktion dieser Bibliothek ersetzt ein „@“-Zeichen in Befehlsargumenten automatisch durch den Inhalt der dahinter angegebenen Datei (expandAtFiles), wodurch Dateien auf dem Server ohne strenge Zugriffsbeschränkungen ausgelesen werden können. Betroffen sind alle Jenkins-Versionen bis einschließlich 2.441 und LTS 2.426.2.
Der PoC demonstriert, wie Angreifer über parallelisierte HTTP-Anfragen die Schwachstelle ausnutzen können:
- Upload-Anfrage: Sendet manipulierte Daten, die das Auslesen der Datei erzwingen sollen.
- Download-Anfrage: Versucht, die Antwort mit den Daten der ausgelesenen Datei zu empfangen.
Diese Angriffsmethode kann potenziell genutzt werden, um sensible Informationen wie Kryptoschlüssel und Zugangsdaten zu extrahieren, die tiefgreifende und dauerhafte Schäden in betroffenen Systemen verursachen können.
Durch die Schwachstelle sind verschiedene Angriffsszenarien denkbar:
- Remote Code Execution (RCE): Über spezielle URLs oder die „Remember me“-Funktion können unbefugte Codes auf dem Server ausgeführt werden.
- Cross-Site Scripting (XSS): Durch manipulierte Build-Logs können Angreifer beliebigen HTML- und JavaScript-Code in Jenkins-Seiten einschleusen.
- Command & Control-Angriffe (C&C): Durch CSRF-Token („crumbs“) können Angreifer legitime Aktionen im Namen anderer Nutzer ausführen.
Die Entwickler von Jenkins haben bereits reagiert und empfehlen dringend das Update auf die neuesten Versionen (Jenkins 2.442, LTS 2.426.3, LTS 2.440.1), in denen das automatische Ersetzen von „@“ deaktiviert ist. Zusätzlich wird geraten, den Zugang zur CLI komplett zu sperren, um mögliche Angriffe zu verhindern. Wer kein Update mehr installieren kann, sollte dringend eine Web Application Firewall mit entsprechend aktualisierten Regeln vorschalten, um einen Datenabfluss zu verhindern.
Professionelle Hilfe erwünscht?
Sentiguard ist spezialisiert auf Notfallhilfe nach Cyberattacken, IT Sicherheitsbeauftragte und IT Sicherheitskonzepte nach BSI Standard. Haben Sie Fragen und wünschen Sie unverbindliche Beratung, dann melden Sie sich gerne bei uns: