
Diese Schwachstelle resultiert aus unvollständigem Sandboxing in js2py, bei dem manipulierte JavaScript-Code Python's internes Objektmodell durchlaufen und auf gefährliche Klassen wie subprocess.Popen zugreifen kann, was zur Ausführung beliebiger Befehle führt.
Diese Schwachstelle entsteht durch unvollständiges Sandboxing in js2py, bei dem präpariertes JavaScript das interne Objektmodell von Python durchlaufen und auf gefährliche Klassen wie subprocess.Popen zugreifen kann, was zur Ausführung beliebiger Befehle führt.
Dieses Repository enthält einen Proof-of-Concept (PoC)-Payload, der eine Sandbox-Escape durch js2py.disable_pyimport() demonstriert, eine Schwachstelle in js2py-Versionen bis 0.74.
Wenn eine Anwendung benutzereingegebenes JSON/JavaScript unsicher auswertet oder parst, ermöglicht diese Schwachstelle einem Angreifer, die JavaScript-Sandbox zu verlassen, in Python-Interna einzudringen, subprocess.Popen zu lokalisieren und beliebige Befehle auszuführen.
js2py verwenden, um JavaScript sicher zu parsen.js2py.disable_pyimport() und ermöglicht es, die beabsichtigten Importbeschränkungen über den Zugriff auf globale Objekte zu umgehen.__class__, __base__ und __subclasses__() zu, um subprocess.Popen zu lokalisieren.disable_pyimport() Sandbox-Escape https://github.com/advisories/GHSA-h95x-26f3-88hr