3.15.1 之前的 billboard.js 被发现通过函数包含原型污染generate,这可能允许攻击者执行任意代码或通过注入任意属性导致拒绝服务(DoS)。
📌 摘要
漏洞类型:原型污染
受影响的库:billboard.js
受影响的版本:<= 3.14.0
修复版本:>= 3.15.1
CVE编号:CVE-2025-49223
影响:执行任意代码或导致拒绝服务
🧪 概念验证(PoC)
在浏览器中打开index.html并检查控制台日志以查找原型污染尝试。
加载易受攻击的版本:
<scriptsrc="https://cdn.jsdelivr.net/npm/[email protected]/dist/billboard.pkgd.min.js"></script>
污染尝试:
{ ["__proto__"]: { polluted: "polluted_via_string_key" }}
控制台输出:
🔥 string key '__proto__' -> POLLUTED! Value: polluted_via_string_key
这证实攻击者可以污染Object.prototype,影响页面上创建的任何未来对象。
🔥 影响
成功利用此漏洞可能导致:
-
向所有对象注入任意键
-
篡改图表渲染逻辑
-
应用程序崩溃(DoS)
-
依赖不安全对象合并的应用程序可能存在安全绕过风险
原文始发于微信公众号(Ots安全):CVE-2025-49223 - Billboard.js 中的原型污染
免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论