本仓库包含一个完整的 CVE‑2026‑2964 实验室环境,该漏洞是 web‑audio‑recorder‑js 库中的一个原型污染漏洞,在特定条件下可导致远程代码执行。
该实验室包含:
index-vulnerable.js),用于演示攻击链。index-fixed.js),实现了适当的清理和允许列表验证。前置要求:
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 发送请求。服务器将记录所有传入的载荷,并指示是否发生了污染。
已修复的服务器运行在 3000 端口,并同时应用递归键清理和允许列表,以在任何危险键到达库构造函数之前将其阻止。请确保修改 package.json 并将 main 指向 index-fixed.js
node index-fixed.js
预期输出:
Original WebAudioRecorder loaded successfully.
Server is running on http://localhost:3000
本实验室仅用于教育目的。请勿在生产系统上运行,或未经明确授权针对任何目标使用。所展示的技术旨在帮助开发人员和安全专业人员理解该漏洞并应用适当的防御措施。