文章总结: 文档披露了jsPDF库中一个高危PDF对象注入漏洞CVE-2026-25755,CVSS评分8.8。该漏洞源于addJS方法未正确过滤用户输入,攻击者可注入右括号等字符提前终止字符串并嵌入任意PDF对象与操作,从而在JavaScript被禁用的PDF查看器中也能执行恶意操作或篡改文档结构。这使依赖jsPDF动态生成PDF的应用程序面临严重风险,攻击者可借此进行网络钓鱼或文档操纵。建议开发者立即升级至jsPDF4.1.0或更高版本以修复漏洞,或在修补前避免使用addJS方法处理不可信内容并实施严格的输入验证。 综合评分: 85 文章分类: 漏洞预警,WEB安全,应用安全,安全开发,漏洞POC
jsPDF漏洞使数百万开发者面临对象注入攻击风险
网安百色
2026年2月24日 18:56 广西
流行jsPDF库中最新披露的安全漏洞使数百万Web开发者面临PDF对象注入攻击风险,允许远程攻击者将任意对象和操作嵌入生成的PDF文档中。
该漏洞被追踪为CVE-2026-25755,影响用于在PDF文件中嵌入JavaScript代码的addJS方法。
问题源于jsPDF中javascript.js文件对用户输入的不当过滤。具体而言,问题行使用以下语法将未经过滤的输入直接连接到PDF流中:
this.internal.out("/JS (" + text + ")");
此逻辑未能转义作为PDF规范中字符串分隔符的右括号。通过注入诸如) >> /Action …的有效载荷,攻击者可以提前终止/JS字符串并注入任意PDF结构,从而完全控制嵌入对象。
| CVE ID | CVSS分数 | 描述 | | — | — | — | | CVE-2026-25755 | 8.8(高) | jsPDF的addJS方法中的PDF对象注入漏洞允许在生成的PDF中注入任意对象并执行操作。 |
与典型的基于JavaScript的XSS攻击不同,此漏洞直接操纵PDF对象层次结构,使恶意行为者能够在查看器禁用JavaScript时执行操作或修改文档结构。
关键影响包括:
- JS禁用执行:注入的PDF操作(例如/OpenAction)可以自动触发,绕过JavaScript限制。
- 文档操纵:攻击者可以注入、加密或修改/Annots或/Signatures部分,以修改元数据、进行网络钓鱼或改变PDF外观。
- 跨查看器风险:轻量级PDF查看器,尤其是移动或嵌入式查看器,可能由于严格遵守PDF对象解析规则而执行注入的操作。
发现此问题的安全研究员ZeroXJacks演示了一个概念验证,使用精心设计的addJS有效载荷在文档打开时触发自定义PDF操作。
这突显了从用户输入动态生成PDF的应用程序的严重风险。根本原因在于缺少根据PDF规范进行的输入验证和转义。
开发者强烈建议更新至jsPDF 4.1.0或更高版本,其中通过转义括号和反斜杠正确过滤了输入。
在修补之前,用户应避免使用addJS或相关方法嵌入不可信或用户生成的内容,并对任何客户端PDF创建工作流程实施严格的输入验证。
本公众号所载文章为本公众号原创或根据网络搜索下载编辑整理,文章版权归原作者所有,仅供读者学习、参考,禁止用于商业用途。因转载众多,无法找到真正来源,如标错来源,或对于文中所使用的图片、文字、链接中所包含的软件/资料等,如有侵权,请跟我们联系删除,谢谢!
免责声明:
本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。
任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。
本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我。
本文转载自:网安百色 《jsPDF漏洞使数百万开发者面临对象注入攻击风险》
版权声明
本站仅做备份收录,仅供研究与教学参考之用。
读者将信息用于其他用途的,全部法律及连带责任由读者自行承担,本站不承担任何责任。









评论