产品Databricks Blog·原文 2026年10月16日本站收录 2026年10月17日

Databricks用能力画像让预算级大模型识别npm恶意二进制包

Databricks自 2025 年 11 月起收集npm恶意样本,在 11,413 个经OSV确认的恶意包版本中发现 3.8% 捆绑二进制;其测试显示,注入约 1,800 token的能力画像后,七款预算级模型的检测失败率从 50% 降至 4%。

AI解读:Databricks博客介绍其npm恶意软件扫描管线如何用“能力画像”把二进制分析领域知识注入提示词,而非微调模型权重。

在 11,413 个经OSV npm恶意公告确认的包版本中,96.2% 把载荷藏在源代码或外部服务器,3.8%(432 个)捆绑二进制;捆绑二进制的包在Triade中无法得出明确恶意结论的比例是纯源码包的两倍多(14.4% vs 6.2%)。

实验用五种原生Node.js插件载荷测试九款模型;七款预算级模型在无画像时 70 次测试中 35 次失败,其中 20 次判为benign,画像启用后 91% 的失败恢复为检出。

Databricks在博客中报告,其npm恶意软件扫描管线通过向提示词注入“能力画像”编码的领域知识,把预算级模型对捆绑二进制恶意包的检测失败率从 50% 降至 4%。该实验在字节相同的输入上对比同一批模型开启画像前后的判定,画像内容为扫描器静态证据的约 1,800 token结构化摘要。

扫描管线和能力画像怎么工作

Databricks的扫描器实时监控npm registry,先运行静态阶段:对tarball用YARA,对JavaScript和元数据用Semgrep及registry API,对编译产物运行二进制分析模块;汇总后组成结构化提示词,模型返回判定和理由,并可在最多三轮中请求额外文件。

能力画像是一份声明式规则,把一种恶意技术(如凭据窃取、持久化)编码为对扫描器静态证据的加权条件,覆盖npm和PyPI的源码及二进制技术。证据按可疑、恶意、严重三档阈值打分;触发后引擎在模型推理前把结构化摘要(约 1,800 token)注入提示词,模型仍可完全推翻画像结论。

无画像时的失败模式和具体数字

七款预算级模型在 70 次模型-载荷测试中失败 35 次(50%),其中 20 次直接判为benign,51 次未达到恶意门槛(73%)。两款行为基线Sonnet 4.6和Kimi K3在升级门槛上零失败,仅Sonnet在sysmon v3上一次未达恶意门槛。

失败可归为四类,比例在九款模型 90 次扫描中统计:合理化约 37%、弃权 22%、含糊 16%、虚构约 23%,且不互斥。合理化会援引安装脚本、原生模块打包或包描述来压过二进制信号;Haiku对未混淆的sysmon v1判malicious 0.98,字符串被XOR编码后反而降为suspicious。弃权表现为不接触二进制就判benign,Qwen3-Next在十个载荷中九个判benign 0.98并建议加入允许列表。含糊表现为始终不升级到决定性判定,GPT-5.4-nano在八个载荷上返回suspicious 0.55-0.62。虚构是判定正确但理由编造,Gemini十个载荷全判malicious,却报告了扫描输入中不存在的地址 0x401490和 0x4013b0。

  • 35 次失败每次至少依赖两个良性上下文信号,24 次同时依赖四个,14 次把二进制自身导入重述为标准系统调用。
  • 35 次失败全部引用node-gyp-build安装脚本和 .node原生插件打包,32 次引用元数据或声明的用途,21 次引用干净的lib/index.js。
  • 在九个模型对混淆版sysmon-native stealer的判定中,三benign、两suspicious、一highly suspicious、三malicious,多数投票会返回错误答案。

开启画像后的变化

启用画像后,35 次无画像失败中的 32 次(91%)恢复为检出,没有任何模型对任何载荷返回benign。预算级模型在升级门槛上的失败从 50% 降至 4%(70 次中 3 次),在恶意门槛上的失败从 73% 降至 34%。唯一仍有残留失败的是GPT-5.4-nano,三个载荷上停留在suspicious。

最明显的单个案例是Qwen3-Next对混淆版sysmon-native窃密器:无画像时以 0.98 置信度判benign并建议允许列表,四个画像触发后,在字节相同的输入上以 0.98 置信度判malicious并建议拦截。基线模型Sonnet和Kimi在无画像时已正确,画像只是强化其结论。

  • sysmon-native触发T004(二进制伪装)、T001(凭据窃取)、T002(网络外传)、T003(环境侦察)。
  • buildchain-native触发T004、T007(投放器/暂存器)、T002、T001;netpulse-native触发T004、T006(反弹Shell);hashworker-native触发T004、T002;taskd-native仅触发T004。

成本和token用量

基线模型Sonnet 4.6和Kimi K3在无画像时检出了全部载荷,单次扫描成本约为预算级模型的三倍;画像让预算级模型以更低价格达到同样准确率。画像对token用量的方向取决于模型自行推理的程度:预算级模型的输入因约 1,800 token证据块增加 9% 至 34%,分析量基本不变;而彻底的模型反向变化,Opus 4.6从无画像时约 10.5K输入token降至 7.2K(−32%),Kimi输出token减少 13%。

生产验证的语料规模

公开OSV公告(排除撤回条目)确认 470 个捆绑原生二进制的恶意npm包版本,共 604 个二进制:PE 273个、ELF 215个(全部stripped)、Mach-O 113个,3 个未识别;按编译器分,363 个为原生C/C++、183 个Go、58 个Rust。其中 425 个落在被扫描的非撤回语料中,构成检测评估集。

良性集仅由外部信号定义,不依赖引擎自身判定:包需捆绑原生二进制、月下载量超过一百万,且从未出现在恶意公告中。二进制字符串混淆画像在 425 个经OSV确认的二进制包中的 74 个(17%)触发。

信息来源

Databricks Blog原始来源

更多

新闻专题
外观