thegenetic/CVE-2026-2964-Lab
GitHub: thegenetic/CVE-2026-2964-Lab
CVE-2026-2964 原型链污染漏洞的完整实验环境,包含易受攻击和已修复的服务器实现,用于学习和演示从原型链污染到远程代码执行的完整攻击链。
Stars: 0 | Forks: 0
## CVE‑2026‑2964 实验环境 – 原型链污染导致 RCE
本仓库包含 CVE‑2026‑2964 的完整实验环境,这是 `web‑audio‑recorder‑js` 库中的一个原型链污染漏洞,在特定条件下可导致远程代码执行(RCE)。
该实验环境包含:
* 一个演示攻击链的易受攻击服务器 (`index-vulnerable.js`)。
* 一个实现了正确清理和允许列表验证的已修复服务器 (`index-fixed.js`)。
* 直接从 GitHub 仓库拉取的原始易受攻击库代码。
* 使用单个命令设置环境的脚本。
前置条件:
* Node.js(版本 18 或更高)
* `npm`(随 Node.js 附带)
* `curl`(用于在设置期间下载库文件)
# 设置
克隆仓库并安装依赖项:
```
git clone https://github.com/bughuntblueprint/cve-2026-2964-lab.git
cd cve-2026-2964-lab
npm install
```
安装过程将自动从 higuma GitHub 仓库下载原始 `WebAudioRecorder.js` 并将其放置在 `lib/` 文件夹中。
如果您更喜欢手动运行设置:
```
npm run setup
```
# 运行易受攻击的服务器
易受攻击的服务器运行在端口 3000,配置为接受用户控制的配置,从而导致原型链污染。
```
node index-vulnerable.js
```
预期输出:
```
Original WebAudioRecorder loaded successfully.
Server is running on http://localhost:3000
```
您现在可以向 `http://localhost:3000/api/audio/config` 发送请求。服务器将记录所有传入的 payload 并指示是否发生了污染。
# 运行已修复的服务器
已修复的服务器运行在端口 3000,并应用递归键清理和允许列表,在任何危险键到达库构造函数之前将其阻止。请务必修改 `package.json` 并将 `main` 指向 `index-fixed.js`。
```
node index-fixed.js
```
预期输出:
```
Original WebAudioRecorder loaded successfully.
Server is running on http://localhost:3000
```
# 其他资源
* 完整视频演示:BugHunt Blueprint — CVE‑2026‑2964
* 详细博客文章:CVE‑2026‑2964:从原型链污染到 RCE
# 免责声明
本实验环境仅用于教育目的。请勿在生产系统上运行,或在未经明确授权的情况下针对任何目标运行。所示技术旨在帮助开发人员和安全专业人员了解该漏洞并应用适当的防御措施。
标签:API密钥检测, CISA项目, CMS安全, CVE-2026-2964, EXP, GNU通用公共许可证, JavaScript, MITM代理, Node.js, OPA, PoC, RCE, web-audio-recorder-js, Web安全, 原型污染, 安全实验室, 数据可视化, 暗色界面, 暴力破解, 漏洞分析, 漏洞复现, 编程工具, 网络安全, 自定义脚本, 蓝队分析, 路径探测, 输入验证, 远程代码执行, 隐私保护, 靶场