CVE-2025-62796PrivateBin是一款开源的在线pastebin服务,其核心特点是服务器对粘贴数据保持零知识(zero-knowledge),即服务器端无法访问或解密用户数据。该漏洞影响PrivateBin 1.7.7至2.0.1版本,源于附件功能中attachment_name字段在处理时未进行适当的HTML转义或过滤。攻击者可以在加密操作前修改附件文件名,注入任意HTML代码。当受害者访问并解密该粘贴内容时,恶意HTML会被直接渲染到页面中,且不进行任何转义处理。这种持久型HTML注入可被用于实现页面重定向(如meta refresh标签)、站点内容篡改以及钓鱼攻击。由于PrivateBin默认推荐启用严格的内容安全策略(CSP),JavaScript脚本执行会被阻止,这在一定程度上限制了漏洞的潜在危害,但HTML注入本身仍然构成中等级别的安全风险。漏洞由GitHub安全团队于2025年10月28日披露并发布修复版本。
漏洞的根本原因在于PrivateBin的附件处理逻辑中,对attachment_name字段的输出渲染缺少必要的HTML实体编码。在版本1.7.7引入附件功能时,开发团队未充分考虑文件名作为用户可控输入的安全性。具体而言,当附件启用时,系统会将attachment_name与文件大小提示一起显示在页面上,但直接输出了未经过滤的原始值。攻击者可以构造形如<meta http-equiv="refresh" content="0;url=https://attacker.com">的attachment_name值,由于缺少HTML转义,浏览器会将此meta标签解析为页面指令,实现自动重定向。更进一步,攻击者可注入伪造的登录表单或恶意链接用于钓鱼。值得注意的是,虽然CSP会阻止<script>标签的执行,但<meta>、<iframe>、<a>等HTML标签的注入仍可产生实际危害。攻击的持久性体现在恶意数据被加密存储在服务器端,所有访问该粘贴的用户都会触发注入内容。