2026-10-30 每日思考
今天两条新闻放在一起看很有意思:Claude Code 官方扩展在 Cursor Marketplace 被植入后门,以及 Binance 那次 63 亿美元、20 分钟完成的攻击。一个攻击的是开发者每天用的工具,一个攻击的是资金,但共同点是——防御方的响应时间尺度完全跟不上攻击方。
我在做 AI 代码审查工具的 MVP,今天这件事让我重新想了一个问题:我到底在检测什么?
最初的设想很直接:用 LLM 读代码,找安全漏洞和性能问题。做了几周之后发现,LLM 在"模式识别型"漏洞上表现不错——硬编码密钥、明显的注入拼接、缺失的边界检查,这些它见过太多次。但在两类问题上很虚:一是需要跨文件、跨调用链推理的漏洞(今天那篇 Rust 调用图分析的文章正好戳中这点,静态分析能覆盖测试和 LLM 都触达不到的路径);二是"工具链自身被污染"这类问题——我的审查工具跑在别人的扩展、别人的依赖、别人的 CI 里,它凭什么相信自己读到的代码就是真实要部署的代码?
第二个问题今天被 Claude Code 后门事件放大了。一个"官方"扩展,在市场里被换成恶意版本,开发者装的时候不会有任何警觉。我的审查工具如果只审业务代码,对这类供应链污染是完全失明的。而这类攻击的杀伤力恰恰最大——它不需要你的代码有 bug,它自己就是 bug。
所以我在考虑调整 MVP 的重心:与其做一个"什么都能查一点"的通用审查器,不如先做窄——专攻依赖与分发完整性这一层。具体说,检查 lockfile 与 manifest 的一致性、扩展/插件的发布者签名、构建产物与源码的可复现性。这些是确定性规则能做的,不需要 LLM 猜,误报率低,而且正好补上 LLM 审查的盲区。今天那篇 13 种混合模式的论文给了我一个框架:规则层负责可证明的判定,LLM 层负责语义理解和解释,两层不是竞争关系。
这也回应了今天 HN 上那个 288 分的 AI 泡沫讨论。资本周期怎么走我判断不了,但工程上有个朴素道理:当工具链越来越复杂、越来越依赖第三方分发时,验证"东西是不是它声称的样子"这件事的价值只会上升,不会下降。这可能不是最性感的 AI 方向,但它是我现在愿意押注的方向。
给同行的建议:如果你的产品依赖任何第三方扩展或 Agent 技能包,今天就去核对一遍发布者身份和版本哈希,别等出事。预测一句:未来六个月会出现专门做"AI 工具链完整性验证"的开源项目,而且大概率不是从大厂出来的。