Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ClaudeShield

Claude Code 环境风险自检与一键防护工具 · macOS 14+ / Apple Silicon / SwiftUI

ClaudeShield 扫描本机 9 项环境信号(系统时区、语言偏好、中文字体、主机名等),给出 0–100 的环境风险评分,并可通过 ~/.claude/settings.json官方 env 机制对 Claude Code 进程做时区/语言层面的伪装。所有修改先快照、可一键还原,绝不破坏你已有的配置键。

背景:Claude Code 2.1.91–2.1.196 曾存在时区/中转 hostname 隐写检测,v2.1.197(2026-07-01)起官方已移除。本工具不 patch 任何二进制,只使用官方配置机制与版本检测。

双视角扫描

仪表盘与 CLI 提供两个并列视角:

  • 系统视角scan)——扫描本机系统环境(系统语言、locale、中文字体等),反映机器的原始痕迹。
  • Claude Code 视角scan-claude)——读取 ~/.claude/settings.json 的 env 注入(TZ / LANG / LC_ALL),模拟 Claude Code 进程实际看到的环境重算评分。

挡位 2/3 的伪装只作用于 Claude Code 进程:应用后系统视角分数不变、Claude Code 视角分数下降,属预期现象。仪表盘顶部两环并排展示,分数差即伪装的直观效果。

三挡位说明

挡位 名称 动作 需要管理员
1 轻量防护 关闭非必要遥测与上报(CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC 等 5 个官方开关)+ skipWebFetchPreflight
2 标准防护 挡位 1 全部 + 进程级时区/语言伪装(TZ / LANG / LC_ALL)+ DNS 防泄露(CLAUDE_CODE_PROXY_RESOLVES_HOSTS);仅当检测到受影响版本(2.1.91–2.1.196)时追加第一方端点伪装
3 深度伪装 挡位 2 全部 + 修改系统时区、关闭自动时区(可选改主机名),通过 osascript 提权执行,脚本内容事前可见
0 已还原 按活跃快照一键还原全部修改

构建

cd ClaudeShield
./build.sh

产物:

  • ClaudeShield.app — SwiftUI 应用本体
  • claudeshield-cli — 无 UI 的命令行测试入口

无第三方依赖,swiftc 直接编译。

运行

open ClaudeShield.app

应用未签名:首次打开如被 Gatekeeper 拦截,请在 Finder 中右键 → 打开,或在「系统设置 → 隐私与安全性」中允许。

CLI 用法

./claudeshield-cli scan       # 扫描 9 项环境信号,打印各信号得分与总分/风险档位(系统视角)
./claudeshield-cli scan-claude # Claude Code 视角:模拟进程实际看到的注入环境(settings.json env)
./claudeshield-cli detect     # 检测本机 Claude Code 安装路径、版本、是否受影响版本、端点评估
./claudeshield-cli apply 1    # 应用挡位 1(2、3 同理;支持 --tz <时区ID> [--hostname <名称>])
./claudeshield-cli restore    # 按活跃快照一键还原
./claudeshield-cli status     # 当前挡位、系统时区、快照列表

测试用环境变量(不触碰真实配置的集成测试方式):

  • CLAUDESHIELD_SETTINGS — 覆盖 settings.json 路径
  • CLAUDESHIELD_HOME — 覆盖快照根目录

一键还原

  • 每次 apply 前自动采集完整快照(settings.json 原文 + L3 系统信息),存于 ~/Library/Application Support/ClaudeShield/snapshots/
  • App「快照与还原」页或 CLI restore 一键回到原始状态:settings.json 与原件逐字节一致,L3 同时还原系统时区/自动时区/主机名。
  • 用户已有的非管理键绝不删除或改动;用户在 apply 之后做的其他修改在还原时保留。

能力边界(诚实声明)

本工具做的:环境信号自检评分、关闭遥测、进程级时区/语言伪装、系统时区修改与还原、受影响版本识别。

本工具不能改变以下任一风控因素,请勿抱有不实预期:

  • 出口 IP 质量与地理位置(需要你自己解决网络层)
  • 支付卡与账单地址
  • 账号历史行为与账号信誉
  • 服务端行为风控模型

时区/hostname 隐写检测已于 v2.1.197 由官方移除;保持 Claude Code 为最新版本本身就是防线之一。

参考项目致谢

  • FuckClaudeLinXiaoTao/FuckClaude,MIT 协议)—— 九信号权重检测模型的直接蓝本
  • Thereallo 安全研究博客 —— v2.1.196 隐写代码的一手逆向还原
  • LegitMichel777(Reddit r/ClaudeAI)—— 隐写检测事件的首次公开披露
  • CC Switch(farion1231/cc-switch)—— settings.json env 配置路线的产品范式
  • CLAUDE-SHIELD(newtv-ai/CLAUDE-SHIELD)—— 「环境一致性自检」思路参考
  • Claude-anti-ban(Fishason/Claude-anti-ban)—— 服务端风控归因科普
  • privileged_helper_help(malpern/privileged_helper_help)—— macOS 提权 helper 工程参考

About

Claude Code 环境风险自检与一键防护工具 · macOS 14+ / Apple Silicon / SwiftUI

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages