CVE-2026-42449n8n-mcp是一个为AI助手提供访问n8n节点文档的MCP服务器。在2.47.4至2.47.13版本中,由于SDK中的同步URL验证器缺少IPv6检查,导致IPv4映射的IPv6地址(如::ffff:169.254.169.254)可以绕过云元数据、本地主机和私有IP范围的检查。攻击者可以通过提供恶意n8nApiUrl值,导致服务器向云元数据端点或内部网络发起HTTP请求,造成非盲SSRF攻击,且n8nApiKey会被转发到攻击者控制的目标。
该漏洞存在于n8n-mcp的SDK嵌入路径中,具体涉及N8NDocumentationMCPServer构造函数、getN8nApiClient()和validateInstanceContext()方法。核心问题在于SSRFProtection.validateUrlSync()同步URL验证器在实现时未包含IPv6地址的校验逻辑。虽然该验证器旨在阻止对云元数据端点(如AWS 169.254.169.254)、RFC1918私有网络及本地主机的访问,但攻击者可以利用IPv4映射的IPv6地址格式(例如http://[::ffff:169.254.169.254])绕过这些安全检查。当受影响的应用程序(嵌入n8n-mcp作为SDK且使用用户提供InstanceContext)处理包含此类恶意URL的请求时,会向攻击者指定的目标发起HTTP请求。值得注意的是,响应体会直接返回给调用者(非盲SSRF),且请求头中包含敏感的x-n8n-api-key,该密钥会被转发至攻击者控制的服务器,从而导致信息泄露。尽管第一方HTTP服务器部署具有第二个异步验证器validateWebhookUrl来捕获IPv6地址,但在特定SDK集成场景下该保护机制无效。