CVE-2019-1003030
Jenkins Matrix Project Plugin Remote Code Execution Vulnerability
Beschreibung
CVE-2019-1003030 ist eine Sandbox-Bypass-Schwachstelle im Jenkins Matrix Project Plugin, die es Angreifern ermöglicht, die Groovy-Sandbox zu umgehen und beliebigen Code auf dem Jenkins-Controller auszuführen. Ein authentifizierter Benutzer mit Job/Configure-Berechtigungen kann diesen Fehler ausnutzen, indem er ein bösartiges Groovy-Skript erstellt. Jenkins ist einer der am häufigsten verwendeten CI/CD-Automatisierungsserver, was dies zu einem bedeutenden Supply-Chain-Risiko macht. Die Schwachstelle wurde am 25. März 2022 in den CISA-Katalog aufgenommen, mit einem EPSS-Score von 2,5 % (90,4. Perzentil).
KEV-Informationen
CVSS-Score
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:HIm Rechner öffnenBetroffene Produkte
| Hersteller | Produkt | Version |
|---|---|---|
| jenkins | pipeline\ | <= 2.63 |
| redhat | openshift container platform | 3.11 |
Mehrere CVSS-Bewertungen
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H
Referenzen
- http://packetstormsecurity.com/files/159603/Jenkins-2.63-Sandbox-Bypass.html(Exploit, Third Party Advisory, VDB Entry)
- http://www.securityfocus.com/bid/107476(Broken Link, Third Party Advisory, VDB Entry)
- https://access.redhat.com/errata/RHSA-2019:0739(Third Party Advisory)
- https://jenkins.io/security/advisory/2019-03-06/#SECURITY-1336%20%282%29(Third Party Advisory)
- https://www.cisa.gov/known-exploited-vulnerabilities-catalog?field_cve=CVE-2019-1003030(US Government Resource)
Schwachstellentyp
CWE-94: Unsachgemäße Kontrolle der Codegenerierung (Code-Injection)
CVE-2019-1003030 wird unter CWE-94 klassifiziert und beschreibt Schwachstellen, bei denen eine Anwendung die Generierung oder Ausführung von Code nicht ordnungsgemäß kontrolliert. Das Jenkins Matrix Project Plugin setzt die Groovy-Sandbox-Beschränkungen nicht ordnungsgemäß durch, wodurch speziell gestaltete Skripte Sicherheitskontrollen umgehen und beliebigen Code ausführen können.
Mehr erfahren: CWE-94 — Improper Control of Generation of Code
Auswirkungsanalyse
CVE-2019-1003030 ermöglicht es authentifizierten Jenkins-Benutzern mit Job/Configure-Berechtigungen, die Groovy-Sandbox zu umgehen und beliebigen Code auf dem Jenkins-Controller mit vollen Systemrechten auszuführen. Der Jenkins-Controller hat typischerweise Zugriff auf alle Build-Secrets, Anmeldedaten, SSH-Schlüssel und API-Token für verbundene Systeme sowie Quellcode-Repositories und Deployment-Pipelines. Die Kompromittierung des Jenkins-Controllers stellt ein kritisches Supply-Chain-Risiko dar, da Angreifer bösartigen Code in Software-Builds einschleusen und auf Produktionssysteme zugreifen können.
Exploit-Reifegrad
CVE-2019-1003030 wurde von CISA als aktiv ausgenutzt bestätigt. Obwohl der EPSS-Score von 2,5 % aufgrund der Authentifizierungsanforderung niedriger ist, ist die Schwachstelle gut dokumentiert und die Groovy-Sandbox-Bypass-Technik ist bekannt. Die kritische Natur der Jenkins-Infrastruktur und die Verfügbarkeit detaillierter technischer Informationen machen diese Schwachstelle zu einem prioritären Ziel für Angreifer mit initialem Zugriff auf eine Jenkins-Umgebung.
Behebung
- Matrix Project Plugin aktualisieren: Aktualisieren Sie das Jenkins Matrix Project Plugin auf die neueste Version, die CVE-2019-1003030 behebt.
- Benutzerberechtigungen überprüfen und einschränken: Prüfen Sie Jenkins-Benutzerkonten und beschränken Sie Job/Configure-Berechtigungen auf die Benutzer, die sie unbedingt benötigen.
- Skript-Genehmigung aktivieren: Stellen Sie sicher, dass das Script-Security-Plugin konfiguriert ist und alle Skripte eine Administratorgenehmigung vor der Ausführung erfordern.
- Jenkins-Audit-Logs überwachen: Überprüfen Sie Jenkins-Audit-Logs auf verdächtige Skriptausführungen und Konfigurationsänderungen.
- Jenkins-Controller isolieren: Stellen Sie sicher, dass der Jenkins-Controller in einem Netzwerksegment mit eingeschränktem Zugriff läuft.
Technische Details
CVE-2019-1003030 ist eine Groovy-Sandbox-Bypass-Schwachstelle im Jenkins Matrix Project Plugin. Jenkins verwendet eine Groovy-Sandbox, um die Operationen einzuschränken, die benutzerdefinierte Skripte ausführen können. Das Matrix Project Plugin verarbeitet Groovy-Ausdrücke zur Konfiguration von Build-Matrizen, und die Schwachstelle besteht, weil das Plugin Sandbox-Beschränkungen nicht auf alle Codepfade ordnungsgemäß anwendet. Ein authentifizierter Benutzer kann einen Groovy-Ausdruck erstellen, der diese Lücke ausnutzt, um die Sandbox zu verlassen und beliebigen Java-Code auf der Jenkins-Controller-JVM auszuführen.
Häufig gestellte Fragen
Wird CVE-2019-1003030 aktiv ausgenutzt?
Ja. CISA hat die aktive Ausnutzung bestätigt. Obwohl Authentifizierung erforderlich ist, nutzen Angreifer mit initialem Jenkins-Zugang aktiv Sandbox-Bypass-Schwachstellen zur Rechteeskalation.
Welche Produkte sind von CVE-2019-1003030 betroffen?
CVE-2019-1003030 betrifft das Jenkins Matrix Project Plugin. Jenkins ist ein Open-Source-CI/CD-Automatisierungsserver, der in Softwareentwicklungs- und Deployment-Pipelines weit verbreitet ist.
Wie behebe ich CVE-2019-1003030?
Aktualisieren Sie das Matrix Project Plugin auf die neueste gepatchte Version. Beschränken Sie Job/Configure-Berechtigungen, aktivieren Sie Skript-Genehmigungsworkflows und überwachen Sie Jenkins-Audit-Logs.
Wie schwerwiegend ist CVE-2019-1003030?
CVE-2019-1003030 ist eine bedeutende Schwachstelle, die Sandbox-Escape und beliebige Codeausführung auf dem Jenkins-Controller ermöglicht. Aufgrund der zentralen Rolle von Jenkins in CI/CD-Pipelines kann eine Kompromittierung zu Supply-Chain-Angriffen führen.
Hilfe beim Schwachstellenmanagement?
Unsere Sicherheitsexperten helfen Ihnen bei der Priorisierung und Behebung von Schwachstellen.