clash漏洞,当心你的电脑中招!

对于还在用clash或者是sub-store的佬友们,以下漏洞请务必注意
攻击完整流程:
1. 用户打开攻击者控制的恶意网页
2. 网页内JS直接请求本机地址 http://127.0.0.1:38324
关键点:浏览器页面可以访问本机回环地址,只绑定127.0.0.1不能阻挡网页JS发起请求
3. Sub‑Store本地服务没有身份认证,直接接收外部传入的请求,不需要密码token
4. 接口返回头带 Access‑Control‑Allow‑Origin: * ,CORS放行,网页JS可以读取接口返回结果
5. 恶意网页发送POST请求 /api/preview/sub ,传入恶意脚本代码
6. Sub‑Store内部使用 new Function() 动态执行传入的脚本
7. 恶意脚本拿到node底层模块: require("child_process")
8. 使用 execSync() 在本机执行系统命令,示例: whoami 查询当前用户
9. 替换命令为 certutil ,就可以下载木马程序并在电脑运行,实现沦陷
防护方案
![]()
- 设置 Sub‑Store 的访问密码(auth token),开启接口鉴权;不要裸跑无密码本地实例
- 不要随便打开陌生网页,本机运行Sub‑Store期间,避免访问来历不明的站点
- 不要把端口暴露公网;仅本地使用,不要0.0.0.0监听
- 更新到最新版本,该风险已经在新版本做限制
本质属于本地服务被浏览器网页侧攻击,是很多node写的本地桌面工具常见安全坑。
简单测试看是否有风险(主要是win端,不明确移动端是否有风险):
佬友们底下测试反馈

来自新闻学大佬的建议),已知clash party和 sparkle 受影响,停止使用 sub-store就可以了.
,因为我确实没有深入分析(具体看最后几句,我想着有其他专业佬来给点安全检查检测反馈的)