用 IANA 专用注册表替换手工编写的 SSRF 地址拒绝列表
作者: czlonkowski创建于 2026年8月9日更新于 2026年8月9日
`src/utils/ssrf-protection.ts` 使用两个手动维护的拒绝列表对出站目的地进行分类: `PRIVATE_IP_RANGES` (IPv4 正则表达式) 和 `isPrivateOrMappedIpv6` 中的前缀测试。目前已针对这同一文件修复了四个建议,其中最新的 (GHSA-2x5j-hrmv-ccrq, v2.69.0) 是因为一个范围与一个仅覆盖其 CIDR 部分的字符串前缀匹配。v2.69.0 的修复将 IPv6 移至数字首六位掩码中,更加可靠,但其基本结构未变: 一个由人工维护的列表,需要手动记住和扩展。建议是从 IANA 专用 CIDR 表中推导分类,其中包含一个明确的 `globally-reachable` 标志,通过数字匹配,因此添加范围是一个数据更改,而不是正则表达式。**请不要使用 `ipaddr.js` 的 `range()` 函数。**它在 v2.69.0 版本的工作中被评估并被拒绝。在固定的 1.9.1 版本中:
内容来源: czlonkowski/n8n-mcp