安全公司 HiddenLayer 周二报告 Hugging Face 上的恶意包 ——「Open-OSS/privacy-filter」—— 通过克隆 OpenAI 合法 Privacy Filter 项目的 README,累计了大约 244,000 次下载和 667 个赞。该包搭载一个 `loader.py`,运行 PowerShell 命令获取基于 Rust 的信息窃取器,针对 Windows 主机上的浏览器、Discord 会话、加密货币钱包和系统信息。Hugging Face 在报告后移除了仓库。HiddenLayer 指出,下载数「可能被攻击者人为膨胀以使模型看起来更受欢迎」,但该包仍在 18 小时内达到顶级 trending 状态。任何实际执行 `loader.py` 的人被建议将其系统视为已受损。

攻击向量并不新颖 —— 这是 AI 市场安全研究人员两年来一直标记的相同形式:typosquatted 命名空间、克隆的 README、隐藏在 Python 文件中的恶意 loader 代码,而不是人们下载的模型权重。具体而言,`loader.py` 禁用 SSL 验证、base64 解码 URL、下载批处理文件,并通过冒充 Microsoft Edge 更新的计划任务建立持久性。Rust 信息窃取器有效载荷是当代的 commodity-malware 形式 —— 浏览器 cookie、Discord 令牌、加密钱包 `.dat` 文件、系统指纹 —— 在数十个不同的活动中销售和重用。HiddenLayer 报告了;Hugging Face 的响应是报告后下架,不是 trending 前检测。244,000 下载数是每个人都应该暂停的部分:即使一半是机器人膨胀,那仍然是数万台可能真实的机器拉取了该包。

Hugging Face 自 2022 年以来一直是开源 AI 模型的事实分发点,具有市场形式 —— 公共仓库、对匿名友好的发布、允许命名空间抢注、未检测到的 README 克隆 —— npm、PyPI 和 Docker Hub 过去十年试图加固。在学术工作首次标记这些问题两年后(2024 年关于 Hugging Face pickle 漏洞的论文),以及在此期间发生了几起较小的事件之后,市场仍然没有在上传时运行自动 README 相似性检测、自动命名空间冒充检查,也没有在 trending 状态上设置人工审查前的等待期。Open-OSS/privacy-filter 案例是第一个下载数足够响亮以强制对话的案例。预计 HiddenLayer/Manifold 风格的 ML 供应链安全产品市场将在此基础上增长 —— Manifold 的 Manifest MCP-server 评分产品(本周单独宣布)是应用于 MCP 服务器的相同形式;两者都在读取相同的市场差距。

如果你最近从 Hugging Face 安装了「privacy-filter」模型 —— 特别是来自任何「Open-OSS」命名空间 —— 检查文件列表中包含 PowerShell 加 base64 编码 URL 的 `loader.py`,如果找到,将主机视为已受损:轮换 Discord 令牌、浏览器保存的凭证、加密钱包密钥,以及磁盘上缓存的任何内容。更广泛地说,对生产中使用 Hugging Face 的任何人的教训:命名空间固定比人们意识到的做了更多工作,而「流行」不是安全信号 —— 18 小时内顶级 trending,有克隆 README 和恶意 loader 是威胁形式,不是异常。观察 HF 是否在下个季度交付命名空间冒充检测和 trending 前审查控件;如果不,第三方扫描器市场(HiddenLayer、Manifold,以及他们身后的浪潮)是赌注。