
이 취약점은 js2py의 불완전한 샌드박싱에서 비롯되며, 조작된 JavaScript가 Python의 내부 객체 모델을 탐색하고 subprocess.Popen과 같은 위험한 클래스에 접근하여 임의 명령 실행을 초래할 수 있습니다.
이 취약점은 js2py의 불완전한 샌드박싱으로 인해 발생하며, 조작된 JavaScript가 Python의 내부 객체 모델을 탐색하고 subprocess.Popen과 같은 위험한 클래스에 접근하여 임의의 명령 실행을 유발할 수 있습니다.
이 저장소는 js2py.disable_pyimport()를 통한 샌드박스 이스케이프를 시연하는 개념 증명(PoC) 페이로드를 포함합니다. 이는 js2py 버전 0.74까지의 취약점입니다.
애플리케이션이 사용자가 제공한 JSON/JavaScript를 안전하지 않게 평가하거나 구문 분석할 때, 이 취약점으로 인해 공격자는 JavaScript 샌드박스를 탈출하여 Python 내부에 접근하고 subprocess.Popen을 찾아 임의의 명령을 실행할 수 있습니다.
js2py를 사용하여 JavaScript를 안전하게 구문 분석하는 많은 Python 환경에 영향을 미칩니다.js2py.disable_pyimport() 내의 불완전한 샌드박싱에 존재하며, 전역 객체 접근을 통해 의도된 임포트 제한을 우회할 수 있게 합니다.__class__, __base__, __subclasses__()에 접근하여 subprocess.Popen을 찾습니다.disable_pyimport() 샌드박스 이스케이프를 통한 js2py RCE https://github.com/advisories/GHSA-h95x-26f3-88hr