4月8日,GitHub上发布了一则安全公告。不到10小时后,第一批攻击流量就已经命中目标。

这不是演习。攻击者用了一个假扮成VS Code工具的Hugging Face空间,把区块链网络变成了自己的指挥通道。

打开网易新闻 查看精彩图片

漏洞公开到武器化:9小时41分钟

CVE-2026-39987,这是marimo Python笔记本平台的一个认证绕过漏洞,能让攻击者在无需登录的情况下执行任意代码。

GitHub公告编号GHSA-2679-6mx9-h9xc,发布时间:2026年4月8日。Sysdig TRT团队记录的首次活跃利用时间:当天稍后,间隔9小时41分钟。

这个速度打破了常规认知中"漏洞窗口期"的假设。从4月11日到14日,11个独立IP地址、横跨10个国家的攻击者发起了662次利用尝试。

早期还是零散扫描,很快演变成多攻击者协同的规模化战役。目标很明确:AI开发者的工作站。

Sysdig研究人员识别出四种不同的入侵后行为模式:窃取凭证、建立反向shell、通过DNS外泄数据,以及部署一种此前未被记录的NKAbuse恶意软件变种。

武器化速度本身说明了一件事:多个威胁行为体在漏洞公开后数天内就独立锁定了同一目标。这不是某个组织的专属工具,而是变成了公共资源。

假VS Code工具:攻击者的社会工程陷阱

最棘手的发现是一个名为kagent的后门程序。攻击者把它藏在一个拼写陷阱里:vsccode-modetx。

仔细看这个名字——"vsccode"比真正的"vscode"多了一个c,"modetx"模仿的是开发者熟悉的模式。这个Hugging Face空间被包装成一个合法的VS Code辅助工具。

攻击链条很简洁。攻击者向暴露的marimo端点发送一条curl命令,拉取并执行一个shell投放器。这个脚本负责下载kagent二进制文件到受害者系统。

关键问题在于信任链。Hugging Face域名在16个信誉情报源中均为干净状态,零恶意标记。这意味着标准安全过滤器根本不会拦截这个载荷。

攻击者精准地利用了开发者生态的开放性。Hugging Face作为AI模型和工具的主流托管平台,其域名天然享有高信誉度。把恶意载荷藏在这里,相当于在安检口使用了VIP通道。

一个暴露的marimo实例很快成为更大范围的入口。攻击者从笔记本环境变量中提取凭证,转向连接的PostgreSQL数据库和Redis实例。

有操作者直接拿走了AWS访问密钥、数据库连接字符串和OpenAI API令牌。单点突破变成了云基础设施的横向移动。

区块链指挥通道:为什么传统防御失效

kagent的技术设计值得细究。这是一个经过剥离和UPX压缩的Go语言ELF文件,压缩后4.3MB,解压后15.5MB。

它的指挥控制(C2)通信不走常规路线,而是依托NKN区块链网络。

NKN协议使用去中心化中继节点。没有单一IP地址或域名可以封锁,C2流量与正常的区块链活动混在一起。传统基于网络边界的检测工具在这里基本失明。

这是一个结构性难题。安全团队习惯在流量层面寻找异常——某个陌生IP、某个可疑域名。但当通信基础设施本身就是去中心化网络时,这些锚点消失了。

持久化机制同样多层冗余。投放器脚本连续使用三种方法:首先在~/.config/systemd/user/kagent.service创建systemd用户服务;然后添加crontab的@reboot启动项;最后在~/Library/LaunchAgents/com.kagent.plist安装macOS LaunchAgent。

所有输出被静默重定向到~/.kagent/install.log,避开标准监控视线。

攻击者的运营节奏:从扫描到规模化

时间线揭示了攻击者的组织程度。4月8日漏洞公开,当天即被利用。4月11日至14日进入高密度活动期。

662次利用事件来自11个独立IP,意味着这不是单一组织的行动,而是漏洞情报在攻击者社区中的快速扩散。

目标选择也有针对性。marimo是面向数据科学家和AI工程师的交互式Python环境,这类用户的工作站通常持有高价值资产:云凭证、API密钥、模型训练数据、数据库访问权限。

攻击者从初始入侵到凭证窃取、横向移动、持久化驻留,形成完整链条。一个暴露的开发工具实例,足以撬开整个云环境的门锁。

Hugging Face空间的拼写陷阱设计,说明攻击者熟悉开发者的工作流程和信任习惯。vsccode-modetx这个名字不是随机生成的,而是针对"VS Code + 模型扩展"这一常见搜索模式的精准模仿。

防御层面的结构性困境

这起事件暴露了几个难以用传统手段解决的问题。

第一是速度。9小时41分钟的武器化窗口,远超大多数组织的补丁响应能力。即使安全团队第一时间关注到公告,测试、审批、部署的流程周期通常以天计算。

第二是信任域的模糊化。Hugging Face作为合法平台被滥用,域名信誉不再等同于内容安全。开发者习惯从这类平台直接拉取代码,curl | bash的操作模式本身就是风险敞口。

第三是去中心化基础设施的检测盲区。NKN区块链网络作为C2通道,绕过了基于IP/域名的威胁情报体系。流量看起来就是普通的区块链活动,没有明显恶意特征。

第四是开发环境的特权集中。AI开发者的工作站往往聚合了多重高权限凭证——云服务、数据库、API平台——一旦失守,影响半径远超单点损失。

Sysdig TRT团队的研究表明,攻击者在入侵后平均停留时间足以完成凭证提取和横向移动。这意味着检测不能依赖边界防御,必须在运行时行为层面建立可见性。

对AI基础设施安全的实用指向

这起攻击的模板很可能会被复制。核心要素——热门开发工具漏洞、可信平台的拼写陷阱、区块链C2通道——都具有可迁移性。

对于运营marimo或类似交互式开发环境的团队,几个具体检查点:是否暴露了无需认证的端点?环境变量中是否嵌入了高权限凭证?是否监控了异常的出站连接模式,尤其是指向区块链网络的流量?

对于依赖Hugging Face等平台的开发者,拼写陷阱的识别需要更主动的验证习惯。项目名称的细微差异——vsccode与vscode——在快速操作时极易被忽略。

对于安全架构,这起事件提示了"零信任"在开发场景中的具体含义:即使来自高信誉域名的代码,也需要在隔离环境中执行并监控行为,而非直接授予系统级权限。

区块链作为C2基础设施的用法,可能标志着攻击者基础设施的新阶段。传统威胁情报的IP/域名黑名单模式,在面对去中心化网络时需要补充行为分析和运行时检测。

AI开发工具链的复杂性正在创造新的攻击面。每一个提升效率的集成点——自动化的模型下载、便捷的环境配置、无缝的云服务连接——都可能成为权限跃迁的跳板。

防御的核心问题从"如何阻止入侵"转向"如何在入侵后限制影响半径"。这需要重新评估开发工作站的权限设计、凭证隔离策略,以及异常行为的实时响应能力。