CVE-2024-28397:js2py(JS 解释器)沙盒逃逸,绕过限制执行命令

admin 2024年6月22日21:49:16评论65 views字数 771阅读2分34秒阅读模式

CVE-2024-28397:js2py(JS 解释器)沙盒逃逸,绕过限制执行命令

js2py是一个流行的 Python 包,可以在 Python 解释器中执行 JavaScript 代码。各种网络爬虫都会使用它来解析网站上的 JAVScript 代码。

内部一个全局变量的实现存在漏洞js2py,使得攻击者可以获取js2py环境中一个python对象的引用,从而逃离js环境并在主机上执行任意命令。

通常情况下,用户会调用此方法js2py.disable_pyimport()来阻止 JavaScript 代码逃离js2py环境。但利用此漏洞,攻击者可以绕过此限制并在主机上执行任何命令。

威胁行为者可以托管一个包含恶意 js 文件的网站,或者通过 HTTP API 发送恶意脚本供受害者解析。通过这样做,威胁行为者可以通过在目标上执行任何 shell 命令来在主机上执行远程代码执行。

漏洞详细信息

  • 受影响组件的版本号:

  1. 在 Python 3 下运行的最新 js2py (<=0.74)

  • 受影响的产品:

  1. pyload/pyload

  2. VeNoMouS/cloudscraper(使用 js2py 作为可选的“js 解释器”)

  3. dipu-bd/lightnovel-crawler

  • 重现步骤:

  1. 在3.12下安装python3,目前js2py不支持python3.12。

  2. 运行pip install js2py安装js2py并执行poc.py,它将尝试head -n 1 /etc/passwd; calc; gnome-calculator; kcalc;在主机上执行。

  3. 如果存在漏洞,脚本应该打印Success! the vulnerability exists...或弹出计算器。

CVE-2024-28397:js2py(JS 解释器)沙盒逃逸,绕过限制执行命令

CVE-2024-28397:js2py(JS 解释器)沙盒逃逸,绕过限制执行命令

https://github.com/Marven11/CVE-2024-28397-js2py-Sandbox-Escape

原文始发于微信公众号(Ots安全):CVE-2024-28397:js2py(JS 解释器)沙盒逃逸,绕过限制执行命令

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年6月22日21:49:16
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   CVE-2024-28397:js2py(JS 解释器)沙盒逃逸,绕过限制执行命令https://cn-sec.com/archives/2874403.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息