CVE-2025-62517Rollbar.js是一个用于JavaScript错误跟踪和日志记录的库,可将客户端错误日志发送到Rollbar平台。该库在2.26.5之前版本以及3.0.0-alpha1至3.0.0-beta5版本中存在原型污染(Prototype Pollution)漏洞。漏洞根源在于merge()函数未能正确过滤用户输入,当应用程序代码使用不可信输入调用rollbar.configure()方法时,攻击者可以通过构造恶意对象属性(如__proto__、constructor或prototype)来污染JavaScript对象的原型链。此漏洞可能导致应用程序逻辑被篡改、拒绝服务攻击或进一步的安全问题。CVSS 3.1评分为5.9,属于中等严重程度,攻击复杂度较低且无需认证或用户交互即可利用。
原型污染是一种针对JavaScript运行时的注入攻击。在Rollbar.js的merge()函数实现中,当合并配置对象时,代码未对用户可控的输入进行严格过滤,允许攻击者通过设置__proto__或constructor.prototype等特殊属性来修改Object.prototype。攻击者构造恶意payload如{__proto__: {admin: true}}或{constructor: {prototype: {isAdmin: true}}},当这些数据通过rollbar.configure()传入时,会在全局范围内修改对象原型。成功利用后,所有新建对象的属性访问都可能受到影响,可能导致应用程序逻辑绕过、敏感数据泄露或拒绝服务。该漏洞的技术根源在于缺少对对象键名的递归验证,攻击者利用JavaScript原型链的动态特性实现污染攻击。