[Security] CORS Misconfiguration in Local Proxy Enables 1-Click API Key Abuse #1841 漏洞概述 cc-switch 本地代理服务器(默认监听 )存在过度宽松的 CORS 策略( ),允许任意网站向代理发送跨域请求。由于代理会自动注入用户的 AI API 密钥(如 Claude、OpenAI、Gemini 等),攻击者只需诱导用户访问恶意网页,即可无需用户确认或知晓 API 密钥的情况下,滥用用户的 AI API 进行请求。 影响范围 受影响版本:cc-switch v3.12.3 及之前包含代理功能的所有版本。 严重程度:高 — 1 点击攻击,无需用户额外确认。 影响描述: - API 密钥滥用:攻击者可无限次调用受害者账户的 API。 - 成本放大:受害者承担所有 API 调用费用。 - 数据泄露:AI 响应可能包含敏感上下文。 - 速率限制耗尽:攻击者可耗尽受害者 API 速率限制。 - 跨提供商影响:影响所有配置的提供商(Claude, OpenAI, Gemini, Codex 等)。 修复方案 替换 为限制性 CORS 策略。推荐以下三种方案: 选项 A — 仅允许本地来源: 选项 B — 完全移除 CORS(推荐): 由于代理仅服务于本地 CLI 工具,CORS 不必要。移除 以阻止所有来自浏览器的跨域请求。 选项 C — 添加本地秘密令牌: 要求所有代理请求携带 bearer token(在启动时生成并存储在已知位置),防止本地应用之外的未授权访问。 POC 代码 攻击场景: 1. 受害者访问 (1 点击) 2. JavaScript 静默检测 cc-switch 代理( ) 3. JavaScript 通过代理发送 API 请求(代理自动注入受害者 API 密钥) 4. AI 响应被外泄到攻击者服务器 5. 无需额外用户交互,无确认对话框