
Questa vulnerabilità deriva da un sandboxing incompleto in js2py, dove codice JavaScript appositamente creato può attraversare il modello di oggetti interno di Python e accedere a classi pericolose come subprocess.Popen, portando all'esecuzione arbitraria di comandi.
Questa vulnerabilità deriva da una sandbox incompleta in js2py, dove JavaScript appositamente predisposto può attraversare il modello di oggetti interno di Python e accedere a classi pericolose come subprocess.Popen, portando all'esecuzione arbitraria di comandi.
Questo repository contiene un payload proof-of-concept (PoC) che dimostra una fuga dalla sandbox tramite js2py.disable_pyimport(), una vulnerabilità presente nelle versioni di js2py fino alla 0.74.
Quando un'applicazione valuta o analizza JSON/JavaScript forniti dall'utente in modo non sicuro, questa vulnerabilità consente a un attaccante di uscire dalla sandbox JavaScript, raggiungere le parti interne di Python, individuare subprocess.Popen ed eseguire comandi arbitrari.
js2py per analizzare JavaScript in modo sicuro.js2py.disable_pyimport() e rende possibile aggirare le restrizioni di import previste tramite l'accesso agli oggetti globali.__class__, __base__ e __subclasses__() per individuare subprocess.Popen.disable_pyimport() https://github.com/advisories/GHSA-h95x-26f3-88hr