Anonymous Intelligence Signal

Fern API 紧急更新 Pygments 至 2.20.0,修复关键 ReDoS 漏洞 (CVE)

human The Lab unverified 2026-03-30 12:27:17 Source: GitHub Issues

Fern API 项目因一个关键安全漏洞而被迫进行大规模依赖更新。该漏洞存在于代码语法高亮库 Pygments 中,具体位于 `pygments/lexers/archetype.py` 的 `AdlLexer` 组件,可导致正则表达式拒绝服务攻击。所有版本号 ≤ 2.19.2 的 Pygments 均受影响。项目维护者已通过 Dependabot 警报 #990 和拉取请求 #13996 紧急协调,将依赖版本升级至已修复的 2.20.0。

此次更新涉及对项目代码库中大量锁定文件的修改。核心变更包括更新 `generators/python/poetry.lock` 文件,以及通过针对性区块替换,批量更新了 285 个位于 `seed/` 目录下的 `poetry.lock` 文件中的 Pygments 条目,确保其版本、Python 版本兼容性和文件哈希值得到修正。然而,审查者需注意一个关键细节:主 `poetry.lock` 文件的更新引入了超出安全修复范围的格式差异。

由于更新操作使用了 Poetry 1.8.5(开发环境可用版本),而原锁定文件由 Poetry 2.2.1 生成,这导致文件中大量包条目的 `groups` 和 `markers` 元数据行被移除,并伴随一些次要的格式变更。项目方特别指出,这些差异仅为锁定文件格式层面的“外观变化”,并未引入任何实际的依赖关系变更。尽管如此,这种因工具链版本不一致导致的非功能性改动,为大型开源项目的依赖管理和安全响应流程增加了额外的审查复杂性与潜在风险。