跳转至

AutoMalDesc: Large-Scale Script Analysis for Cyber Threat Research

会议: AAAI 2026
arXiv: 2511.13333
代码: https://github.com/CrowdStrike/automaldesc
领域: NLP生成 / 安全
关键词: 恶意软件分析, 自我改进LLM, 自步学习, 静态分析, 脚本安全

一句话总结

提出 AutoMalDesc 自动化静态分析框架,通过迭代自步学习流水线——从 900 个专家标注种子样本出发,经 LoRA 微调 Llama-3.3-70B 生成伪标签,多阶段质量过滤后进行 V2 训练——实现 5 种脚本语言的恶意软件自动分类和行为描述,Batch 脚本检测准确率从 52.7% 提升到 82.4%。

研究背景与动机

  1. 领域现状:网络安全中需要对恶意脚本做静态分析并生成自然语言解释。现有方法依赖 YARA 规则和沙箱引爆,覆盖面有限且需人工专家。

  2. 现有痛点:(1) 专家标注成本极高,难以覆盖 5 种脚本语言的海量变种;(2) 通用 LLM 对恶意软件的行为理解不足(Base 模型 Batch 检测仅 52.7%);(3) 缺乏大规模高质量恶意脚本描述数据集。

  3. 核心矛盾:高质量标注数据稀缺,但需要大量多样化数据才能训练出鲁棒的恶意软件分析模型。

  4. 本文要解决什么? 用少量种子+自步训练策略突破标注瓶颈。

  5. 切入角度:沙箱行为报告作为知识桥梁,将运行时行为转化为训练信号。

  6. 核心 idea 一句话:从 900 个专家种子迭代自步学习,逐步扩展到 10 万+高质量恶意脚本分析训练集。

方法详解

整体框架

种子集(900) → LoRA微调V1 → V1标注157K未标注脚本 → 四阶段质量过滤(→101K) → V2训练。三个任务:恶意软件检测、语言识别、行为描述。

关键设计

  1. 种子数据集构建:900个脚本(5语言),经YARA规则+沙箱引爆+专家验证。描述由Llama-3.3-70B基于沙箱报告生成(τ=0.3)。

  2. 四阶段质量过滤:(1) 语法检查(可解析JSON);(2) 共识检查(τ=0.4/0.6/0.8下标签一致);(3) 置信度检查(logit概率≥90%);(4) 连贯性检查(Phi-3.5-Mini验证摘要-标签对齐)。

  3. 训练配置:V1: LoRA rank=8, α=16, 11 epochs;V2: rank=16, α=32, 13 epochs。16K上下文。

损失函数 / 训练策略

标准语言模型交叉熵损失 + LoRA 微调。

实验关键数据

主实验

模型 Bash Batch JS PS Python 平均
Base 恶意检测 92.4 52.7 90.8 94.2 89.8 83.1
V1 恶意检测 93.2 77.9 90.6 95.3 91.8 89.3
V2 恶意检测 96.3 82.4 92.2 95.3 92.6 91.5

消融实验

  • V3 探索:标签准确率 91.53%(与V2持平),两轮即饱和
  • McNemar 检验:V2 vs V1 显著 (p<10⁻⁵)

关键发现

  • Batch 脚本恶意检测从近随机(52.7%)提升到 82.4%——改善最显著
  • 性能在两轮迭代后饱和(V3 无显著增益)

亮点与洞察

  • 工业级落地:CrowdStrike 出品,157K 脚本规模的真实部署方案
  • 四阶段过滤是核心质量保障:多温度共识+logit 置信+外部模型连贯性检查

局限性 / 可改进方向

  • 幻觉问题未完全解决(V2 仍有 14 个幻觉描述)
  • 仅覆盖 5 种脚本语言,未涵盖二进制恶意软件

相关工作与启发

  • 自步学习在专家知识稀缺领域的成功案例,可迁移到其他安全分析任务

评分

  • 新颖性: ⭐⭐⭐⭐ 沙箱报告→LLM种子→自步扩展的流水线新颖实用
  • 实验充分度: ⭐⭐⭐⭐ 3600测试样本、多轮迭代对比、McNemar统计检验
  • 写作质量: ⭐⭐⭐⭐ 工业论文风格清晰
  • 价值: ⭐⭐⭐⭐⭐ 直接服务网络安全产业,代码和数据开源