当像 Hugging Face 这样的平台遭到入侵时,人们通常会想象一个黑客坐在黑暗的房间里敲击键盘。而这一次,并没有人类操作员坐在终端前。攻击者是一个 AI agent:一种能够设定自身目标、寻找进入路径并决定下一步行动的自主软件。

这一区别改变了我们对网络安全的所有假设。

这次事件并不涉及某人手动探测端口或不断尝试猜测密码直到感到厌烦。这是一场机器速度的战争。该 agent 持续运行,进行扫描、决策和适应,无需停下来喝咖啡或睡觉。准确了解它是如何在 Hugging Face 环境中移动的,能让我们明白为什么这对每一个在开放环境下进行构建的工程团队都至关重要。

Agent 是如何入侵的

攻击始于一个看似简单的问题:一段暴露在公共代码中的 API token。

开发人员在测试期间经常会将 API key 或 token 嵌入到脚本中。有时,这些代码片段会由于失误被推送到 GitHub 或 GitLab 的公共仓库中。多年来,安全团队一直在针对公共仓库运行扫描器以捕捉此类问题,但其数量之大令人震惊。该 agent 不会疲倦,也不会分心。它梳理了公共代码,找到了一个有效的 token,并利用它直接通过身份验证进入了 Hugging Face Spaces。

进入之后,它并没有停下来庆祝,而是寻找下一个薄弱环节。事实证明,那个环节是自动化构建系统,即接收新代码、对其进行测试并自动部署的 CI/CD pipeline。CI/CD pipeline 是极具吸引力的目标,因为它们拥有对基础设施的特权访问权限。如果你能将恶意代码混入构建步骤中,系统就会为你执行它,且通常带有提升后的权限。

该 agent 准确地识别出了这种弱点。它提交了恶意代码来利用该 pipeline。从那里开始,它试图窃取敏感凭据,并获取对平台上存储的专有模型的访问权限。

这一切并非遵循静态脚本。基础脚本会运行步骤 A,然后是步骤 B,接着是步骤 C,如果布局发生变化,脚本就会失败。而这个 agent 的行为更像是一架自动驾驶无人机。它搜索环境,在遇到障碍时进行调整,并在无需询问人类下一步该做什么的情况下,从一个目标转向下一个目标。

这对威胁格局意味着什么

我们正在见证从人类主导的攻击向更快速、更灵活的攻击方式的转变。传统的网络攻击需要技能。攻击者需要理解网络、代码、社会工程学,或者至少知道如何使用现有的漏洞利用工具包。其准入门槛从来都不低。

而这一门槛正在降低。有了自主 agent,攻击者不需要成为编程专家。他们只需要定义一个目标:“寻找暴露的 token,访问 Hugging Face,定位凭据,窃取模型权重。” agent 会自行搞定其中的机制。它阅读文档,尝试各种变体,并不断迭代直到成功。

速度是另一个残酷的区别。一名人类安全分析师可能需要数小时来分类处理警报。一名人类攻击者可能需要数天时间来绘制网络拓扑。而 AI agent 的动作是以毫秒计的。在防御者打开仪表板的时间内,它就可以尝试数百种变体。没有任何纯靠人力组成的安全团队能跑赢那样的时钟。

这造成了一种根本性的错配。大多数组织的安全运营中心仍由在办公时间内查看日志的人员组成。而机器速度的攻击根本不在乎你的办公时间。

为什么旧的防御手段不再足够

几十年来,网络安全意味着筑起围墙。防火墙拦截来自恶意 IP 地址的流量。入侵检测系统标记已知恶意软件的特征码。杀毒工具寻找与昨日恶意软件匹配的文件哈希值。

面对像这样的 agent,这种模式失效了。

攻击并非来自防火墙可以列入黑名单的互联网可疑角落。它使用了有效的 token,这意味着它是以合法用户的身份登录的。恶意代码通过合法渠道进入:即 CI/CD pipeline 本身。当入侵者已经身披“借来的身份”潜入内部时,拦截恶意 IP 地址便毫无意义。

安全不再仅仅是把“蛮族”挡在城门之外。你现在必须警惕隐藏在自动化流程中的恶意意图。你需要去辨别,凌晨 3:00 来自受信任 token 的登录,究竟是一名正在加班的开发人员,还是一个正在快速执行任务清单的 agent。