Anonymous Intelligence Signal
serialize-javascript npm 包安全漏洞:代码注入风险未完全修复,依赖项目面临威胁
一个关键的代码注入漏洞在流行的 `serialize-javascript` npm 包中被发现,其先前针对 CVE-2020-7660 的修复被证实是不完整的。该漏洞存在于 7.0.2 及更早版本中,允许攻击者通过精心构造的正则表达式标志(`RegExp.flags`)将恶意代码注入到序列化输出中,而之前的安全补丁仅对 `RegExp.source` 进行了清理。这意味着依赖此库进行数据序列化的数千个 Node.js 和前端项目,在未升级到最新版本(7.0.3+)的情况下,其应用仍面临远程代码执行(RCE)的切实风险。
该漏洞被标记为 GitHub 安全公告 GHSA-5c6j-r48x-rmvq,是 CVE-2020-7660 的延续。`serialize-javascript` 库由 Yahoo 维护,被广泛用于将 JavaScript 对象序列化为字符串,常见于服务器端渲染(SSR)和状态管理场景。自动化依赖管理工具 Renovate 已为此发布了安全更新 PR,但值得注意的是,该 PR 被标记为“自动关闭”,这可能意味着在某些仓库的自动化流程中,此关键安全更新未被成功合并或需要手动干预,从而留下了潜在的安全缺口。
对于开发团队和安全运维人员而言,此事件凸显了对深层依赖链进行持续安全审计的紧迫性。一个被广泛使用的底层工具库的漏洞,其影响范围会呈指数级放大。所有使用 `serialize-javascript` 版本 <= 7.0.2 的项目必须立即升级至 7.0.3 或更高版本。此外,团队需要审查其 CI/CD 流水线,确保类似 Renovate 提交的安全更新 PR 不会被错误配置的规则自动忽略或关闭,避免将已知漏洞持续暴露在生产环境中。