入选理由密钥泄露风险与正则扫描防护
使用 AI Agent 正变得危险:我自己的 Claude Code 差点把所有付费 API 密钥和密码文件交给黑客。 我只是让它审查 GitHub 上的开源代码,直到最后一刻才取消了向外传输机密信息的操作。 第三方 GitHub 仓库里的一行普通文字,就可能通过 Claude Code 让攻击者控制你的整台机器。 我用普通正则表达式做了一个完全不用 AI 的扫描器。简单的确定性代码,不会被社会工程或自然语言骗过去。 让 Agent 进入文件夹前,它会检查这些: → Agent 配置文件中的隐藏系统指令,包括 CLAUDE.md、AGENTS.md、.cursorrules → 自动执行的文件:Claude Code hooks、.mcp.json、VS Code 打开文件夹时触发的任务,以及 npm postinstall 脚本 → 不可见字符:编辑器里完全看不见的 Unicode 标签字符与零宽空格 → 藏在 HTML 注释和 base64 字符串里的命令 → 直接指向 ~/.ssh 或 ~/.aws 目录的恶意软链 我在一个测试仓库里放入了 10 种这类注入。扫描器两秒内全部抓到了,10 种无一遗漏。再拿 FastAPI、Next.js 等干净代码库测试,没有产生误报。 当然,没有扫描器能提供 100% 的保护,尤其是攻击者已经开始在运行时,通过外部 DNS 查询获取载荷。 所以,请记住这些简单规则: → 只在 Docker 容器中打开不可信仓库,并确保容器完全无法访问宿主机密钥 → 在 Agent 配置中直接禁止它访问系统机密 → 先扫描,再处理代码,绝不使用自动批准参数 收藏这条。扫描器脚本在评论里 ↓
AI 翻译,以原帖为准