利用前沿模型进行软件包注册表恶意软件检测

软件供应链的安全是现代开发中的关键漏洞。由于绝大多数开发者依赖高度嵌套的依赖树,公共注册表(如 NPM 或 PyPI)中的单个恶意软件包就可能危及数千个系统。这提出了一个关键问题:前沿模型——具备复杂代码分析能力的大型语言模型(LLM)——是否可以集成到包管理生态系统中,以在恶意软件到达最终用户之前进行检测?

AI 驱动安全的潜力

前沿模型已经展示出显著的模式识别能力以及理解代码意图的能力。不同于传统的静态分析工具——这些工具通常依赖预定义的签名集合或已知的恶意模式——LLM 有可能识别出异常行为或伪装成合法功能的混淆代码。这种从基于签名的检测转向基于意图的分析的转变,理论上可以让注册表更有效地捕获“零日”供应链攻击。

经济与运营约束

尽管技术上可行,但在公共注册表规模上实现此类系统充满挑战。主要障碍不仅是技术层面,还有经济和运营方面的因素。

基础设施成本

在多个注册表中对每一次包版本更新都运行前沿模型将需要巨大的计算资源。正如社区成员所指出的,基础设施成本可能会提升一个数量级,可能会“超过 10 倍的基础设施成本”,而且并未为注册表运营者提供直接的收入来源。

可用性与发布速度

包管理生态系统的核心原则之一是交付速度。将繁重的基于 AI 的扫描过程集成到发布流程中可能会导致显著的延迟。这在安全性与可用性之间产生了紧张关系:

这基本上是一些第三方供应商所做的……npmjs、pypy 以及其他公共注册表之所以不这样做,是因为这可能会使它们的基础设施成本增加十倍以上,却没有带来太多新收入。这也可能与客户需求无关,因为它可能导致停机,或至少阻止新版本的发布。

如果模型将某个软件包标记为可疑,注册表必须决定是否阻止其发布。阻止合法软件包(误报)会扰乱整个生态系统的开发速度,而放行恶意软件包(误报)则会导致安全漏洞。

当前生态系统的现状

目前,安全扫描的负担已转移至专注于供应链安全的第三方供应商。这些供应商可以对其服务收费,从而使 AI 分析的高昂计算成本得以持续。这也是为何许多供应链威胁现在能够在数小时内而非数周内被检测到。

此外,人们预期像 Microsoft 这样的大型企业——其拥有 GitHub 并在生态系统中占有重要份额——已经在内部使用这些工具,以保护其在 GitHub、NPM 和 NuGet 上的基础设施。虽然这并非注册表面向公众的功能,但这些幕后安全层提供了关键的深度防御策略。

Sources