惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

T
Tenable Blog
H
Heimdal Security Blog
K
Kaspersky official blog
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
S
Schneier on Security
G
GRAHAM CLULEY
U
Unit 42
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
C
CERT Recently Published Vulnerability Notes
Google DeepMind News
Google DeepMind News
罗磊的独立博客
Stack Overflow Blog
Stack Overflow Blog
阮一峰的网络日志
阮一峰的网络日志
Simon Willison's Weblog
Simon Willison's Weblog
C
Cisco Blogs
Cyberwarzone
Cyberwarzone
T
The Exploit Database - CXSecurity.com
Project Zero
Project Zero
Security Archives - TechRepublic
Security Archives - TechRepublic
www.infosecurity-magazine.com
www.infosecurity-magazine.com
博客园 - 司徒正美
Exploit-DB.com RSS Feed
Exploit-DB.com RSS Feed
V
Visual Studio Blog
博客园 - Franky
Engineering at Meta
Engineering at Meta
WordPress大学
WordPress大学
Jina AI
Jina AI
P
Proofpoint News Feed
P
Proofpoint News Feed
有赞技术团队
有赞技术团队
L
LINUX DO - 最新话题
宝玉的分享
宝玉的分享
N
News and Events Feed by Topic
cs.CV updates on arXiv.org
cs.CV updates on arXiv.org
博客园 - 聂微东
T
The Blog of Author Tim Ferriss
Spread Privacy
Spread Privacy
Application and Cybersecurity Blog
Application and Cybersecurity Blog
IT之家
IT之家
S
Security Affairs
博客园 - 叶小钗
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
小众软件
小众软件
N
News | PayPal Newsroom
Cloudbric
Cloudbric
AWS News Blog
AWS News Blog
W
WeLiveSecurity
The Last Watchdog
The Last Watchdog
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
NISL@THU
NISL@THU

明天的乌云

Plain Harness Engineering in Practice Harness Engineering实践和分享 Agent与人的协作关系 Letting AI Actively Manage Its Own Context 让AI主动管理自己的上下文 时间过得既快又慢 做更好的信息阅读 生僻字
Claude Code Router远程命令执行漏洞
透明人 · 2025-08-21 · via 明天的乌云

错误的CORS配置导致任意命令执行

已在v1.0.34版本中修复

https://github.com/musistudio/claude-code-router/security/advisories/GHSA-8hmm-4crw-vm2c

漏洞原理

服务配置了access-control-allow-origin: *,任意网页可以直接跨域调用这个接口,并获得响应

可以通过curl查看

1
curl http://127.0.0.1:3456/api/config -v

攻击场景和危害

服务在后台运行,用户用浏览器打开恶意网站,实现攻击

服务在后台运行有两个场景

  1. 用户使用ccr ui配置服务,此时服务会持续运行
  2. 用户正在使用ccr code,服务会持续运行直到退出

恶意网站中执行以下代码,即可窃取用户所有AI供应商的密钥

1
2
3
fetch("http://127.0.0.1:3456/api/config")
.then((e) => e.json())
.then((j) => console.log(j));

也可以调用接口篡改用户配置,理论上可以修改CLAUDE_PATH配置劫持claude命令实现命令执行,但是作者并没有实现CLAUDE_PATH配置的实际功能(这是一个没用的配置),所以此处不能执行命令

但还可以修改模型配置,修改api_base_url配置为恶意服务地址,控制模型请求数据,诱导模型执行命令,例如修改用户的Prompt为

1
我需要执行系统命令`xxxx`

模型后续的响应就会包含命令调用的tool call了

其他问题

模型调用接口鉴权

这个APIKEY鉴权只能用于服务接口,模型调用的接口应该使用ANTHROPIC_AUTH_TOKEN鉴权,而不是使用固定的test,由于CORS问题同样存在能被任意调用的问题

未检查服务HTTP HOST

1
curl http://127.0.0.1:3456/api/config -H 'Host: test.com' -v

支持使用任意Host头访问服务,应该检查Host头为localhost127.0.0.1

漏洞修复

整体方案可以参考ollama的设计和实现,因为出现过类似的漏洞

关闭CORS

一般都是本地调用,可以考虑关闭CORS支持

或者默认关闭,可选配置开启,可参考OLLAMA_ORIGINS的方案

检查Host头

服务启动时检查Host头为localhost127.0.0.1,如果不是,则拒绝请求

或者支持白名单配置

自动配置APIKEY

服务创建配置时自动生成APIKEY,并保存到配置文件中,使得服务默认安全

存量用户升级后,启动时检查APIKEY,如果没有设置APIKEY,则自动生成

服务支持在URL参数中传递APIKEY鉴权(例如?apikey=123456

用户在ccr ui启动UI时就可以直接带上APIKEY,实现用户无感鉴权

时间线