我觉得这件事比表面上看到的有意思得多,甚至可能是 AI Agent 时代一种非常值得警惕的新型攻击思路。 以前程序员做代码混淆,主要是为了让人看不懂代码。把… · @UPing123zzz · TwKit
@UPing123zzz
我觉得这件事比表面上看到的有意思得多,甚至可能是 AI Agent 时代一种非常值得警惕的新型攻击思路。 以前程序员做代码混淆,主要是为了让人看不懂代码。把变量名改得乱七八糟,把控制流打散,把字符串加密,让逆向工程的成本不断提高。 但现在不一样了。随着 Codex、Claude Code 这类 AI 编程工具越来越强,过去需要程序员花几天分析的代码,现在可能直接交给 AI,几十分钟就能帮你梳理出来。 那问题来了,如果传统的代码混淆已经越来越难挡住 AI,能不能反过来利用 AI 自己的限制,让它主动拒绝分析? 这篇文章里提到的案例就非常离谱。 一段原本用于浏览器指纹识别的 JavaScript,里面混入了大量涉及危险内容的函数名,甚至还藏着经过 Unicode 编码的伪系统指令。 研究人员尝试让不同模型分析这段代码,结果有的模型直接拒绝,有的却可以继续完成分析。 这意味着什么?以前是通过技术手段提高代码的理解难度,现在甚至可以尝试利用模型的安全判断机制,让 AI 在理解代码之前就主动停下来。 我觉得这背后真正值得讨论的,不是哪家模型的安全限制更多,而是 AI 系统出现了一种传统软件工程里不太一样的攻击面。 以前我们担心的是恶意代码会不会被执行。现在还得担心,恶意构造的内容会不会影响 AI 的判断,让它拒绝执行合法任务,或者把外部数据误认为更高优先级的指令。 尤其是现在大家都在做 Agent、RAG、自动化代码审查。 Agent 每天都需要读取 GitHub 仓库、网页、文档、日志,甚至执行第三方工具返回的内容。 这些东西本质上都是外部输入。如果系统没有把外部数据和真正的控制指令严格隔离,模型能力越强、权限越大,问题可能反而越严重。 当然,这个案例还不能证明所有模型都会受到影响,代码作者是否刻意这样设计,也没有得到确认。 但它至少提醒我们一件事:AI 编程的普及,不只是降低了软件开发和逆向工程的门槛,也在创造全新的安全问题。 未来优秀的 AI 工程师,可能不仅要懂 Prompt、Skill、Agent 和工作流,还得真正理解模型的信任边界、工具权限、输入隔离和安全评测。 因为当 AI 开始替人阅读代码、理解系统、执行任务时,攻击者瞄准的就不再只是程序本身,也可能是 AI 的判断过程。 以前的代码混淆,是让人看不懂代码。现在的 AI 对抗,甚至开始尝试让模型不敢读代码。 这才是我觉得最值得关注的变化。
曝光 233 · 评论 1 · 点赞 1 · 书签 0
查看原帖