Node.js | 报告 #2054283 - llhttp中HTTP头块终止不当 | HackerOne
漏洞摘要
Node.js 20的HTTP解析器存在缺陷,允许使用\r\n\rX
而非必需的\r\n\r\n
来不当终止HTTP/1头部。这种不一致性使得请求走私成为可能,攻击者可借此绕过基于代理的访问控制并提交未经授权的请求。该问题通过将llhttp升级至版本9得以解决,该版本强制执行正确的头部终止。
影响范围
此漏洞仅影响升级至llhttp v9之前的Node.js 20.x用户。
时间线
- 2023年7月7日:kenballus向Node.js提交报告。
- 2023年7月12日:rafaelgss(Node.js员工)将状态更改为“已分类”。
- 2023年7月20日:bnoordhuis加入报告作为无特定权限的参与者。
- 2024年5月7日:安全发布管理员机器人更新CVE引用为CVE-2025-23167。
- 2024年5月14日:安全发布管理员机器人关闭报告并将状态更改为“已解决”。
- 2025年6月13日:报告被公开。
报告详情
- 报告日期:2023年7月7日,UTC时间2:20
- 报告者:kenballus
- 报告对象:Node.js
- 报告ID:#2054283
- 状态:已解决
- 严重性:中等(6.5)
- 公开日期:2025年6月13日,UTC时间21:37
- 弱点:HTTP请求走私
- CVE ID:CVE-2025-23167
- 奖金:无
- 账户详情:无
注意:您的JavaScript似乎已禁用。要使用HackerOne,请在浏览器中启用JavaScript并刷新此页面。