Skip to content
KitploitKITPLOIT
StrumentiBlog
Invia
StrumentiBlog
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.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
Expression-Sandbox-Escape-Simulation-Lab — Laboratorio didattico che dimostra le tecniche di evasione dei sandbox per espressioni JavaScript e l'evoluzione delle patch attraverso più versioni vulnerabili di sandbox, con payload e analisi AST. | Kitploit
Strumenti/GitHubGitHub/otakuliu/expression-sandbox-escape-simulation-lab
Analisi StaticaAnalisi delle VulnerabilitàExploitSicurezza WebApprendimento e Formazione
GitHubotakuliu/expression-sandbox-escape-simulation-lab

Expression-Sandbox-Escape-Simulation-Lab

Laboratorio didattico che dimostra le tecniche di evasione dei sandbox per espressioni JavaScript e l'evoluzione delle patch attraverso più versioni vulnerabili di sandbox, con payload e analisi AST.

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 →
Vedi Repository
16 mesi faNon ancora revisionato
Condividi

🧪 Expression Sandbox Escape – Simulation Lab

Un ambiente sperimentale minimale per dimostrare l'escape dei sandbox JavaScript e l'evoluzione delle patch.

Attraverso più versioni del sandbox, si passa da:

completamente aggirabile → patch su this → patch su destructuring

mantenendo al contempo nuovi modi di bypass, per comprendere il processo di confronto tra vulnerabilità e patch nel mondo reale.


📦 Struttura del progetto

root@kitploit:~
.
├── payload.js        # vari payload di attacco
├── sandbox_v0.js     # versione originale vulnerabile
├── sandbox_v1.js     # fix della catena this
├── sandbox_v2.js     # fix di destructuring

🎯 Obiettivi di progettazione

Vogliamo simulare questa realtà:

  1. Il team di sicurezza corregge una falla
  2. L'attaccante cambia percorso
  3. Nuova correzione
  4. Nuovo bypass

In un ciclo continuo.

Questo progetto non mira a creare una VM realmente sicura. Ma a osservare:

come ogni patch "apparentemente ragionevole" venga infranta dalla tecnica successiva.


🚀 Come eseguire

root@kitploit:~
npm install vm2 acorn acorn-walk
node sandbox_vX.js

Sostituisci X con 0 / 1 / 2.


🧨 Descrizione dei Payload

payload.js include quattro modalità di accesso:

NomeTecnica
CVE-2025-68613 / thisottenere process tramite this
CVE-2026-25049 / destructuringottenere constructor tramite destructuring
Reflect.getusare l'API Reflect
Dynamic Reflectaccesso dinamico alle proprietà

🏚 sandbox_v0 – l'era senza protezioni

Caratteristiche:

  • nessun limite su this
  • nessun controllo su destructuring
  • nessuna analisi AST

Risultato: tutti i payload passano.

L'attaccante è felice come una pasqua.


🔧 sandbox_v1 – fix su this

Modifiche:

  • forzato "use strict"
  • .call(undefined)

Quindi:

root@kitploit:~
this === undefined

Bloccati

  • CVE-2025-68613

Ancora possibili

  • destructuring
  • Reflect

L'attaccante annuisce e prosegue per un'altra strada.


🔒 sandbox_v2 – fix su destructuring

Novità:

  • analisi AST
  • controllo specifico su ObjectPattern
  • se compare:
    • constructor
    • o una chiave calcolata (computed key) → esecuzione bloccata

Bloccati

  • this
  • destructuring

Ancora possibili

  • Reflect.get
  • Dynamic Reflect

🧠 Cosa vuole davvero comunicare questo esperimento?

Le patch basate su blacklist di solito hanno:

✔ correzione di percorsi specifici ✔ costo basso ✔ facile da distribuire

Ma allo stesso tempo:

❌ superficie difensiva limitata ❌ facilmente aggirabili da altre modalità di accesso semanticamente equivalenti

È proprio per questo che sandbox come vm2 hanno storicamente subito ripetuti escape.

Scarica lo strumento