vulnerability-lookup/cve-attack-mapping-paper

GitHub: vulnerability-lookup/cve-attack-mapping-paper

学术论文复现包,提出基于专家标注 gold set 的 CVE→MITRE ATT&CK 多标签分类器,并系统性地证明了 LLM 辅助标注扩展在提升分类性能方面的无效性。

Stars: 0 | Forks: 0

# 将 CVE 映射到 MITRE ATT&CK 技术 论文的 LaTeX 源码、图表及图表生成脚本如下: ## 摘要 我们提出了一个可复现的 pipeline,用于从自由文本的漏洞描述中,将 CVE 映射到 MITRE ATT&CK(Enterprise)技术。我们没有依赖 CWE → CAPEC → ATT&CK 的推导链——我们对其产生的表扩展伪影进行了量化——而是在由专家 MITRE CTID 映射构建的 1,207 个 CVE 的精选 gold set 上,训练了一个多标签分类器;它使 zero-shot embedding 相似度 baseline 的 recall@5 几乎翻倍。 接着,我们探讨了 LLM 辅助标注是否能扩展 gold set,并经过三次日益严格的实验才得出结论,且每一次实验都推翻了前一次的结果:与专家标注一致性约为 0.39 的 LLM 标签,在任何规模(新增 100-984 个 CVE)下均未产生可靠的提升,而在新增约 1,000 个 CVE 时,反而明显降低了稀有技术的覆盖率。其根本原因在于,在小型测试 split 上进行 best-checkpoint 选择所带来的评估噪声——这足以使得固定随机种子的相同运行在 recall@5 上产生 0.05 的差异,并且让一个包含五个种子的比较通过自身的一致性标准,但结论依然是错误的。在修正后的 protocol 下(使用验证 split 进行 checkpoint 选择,并作为默认设置发布),仅使用 gold set 的结果保持不变,且“无效扩展”的结论得到证实。gold 数据规模的 scaling 曲线表明,随着精选数据行的增加,各项指标均单调提升:该分类器受限于标签质量,而非数据量。 ## 产物 所有数据集、模型和代码均已开源: | 产物 | 位置 | DOI | |----------|----------|-----| | 代码(数据集构建器、训练器、验证器) | [vulnerability-lookup/VulnTrain](https://github.com/vulnerability-lookup/VulnTrain) | — | | Gold 数据集(1,207 个 CVE,CTID 精选标签) | [CIRCL/vulnerability-attack-techniques](https://huggingface.co/datasets/CIRCL/vulnerability-attack-techniques) | [10.57967/hf/9621](https://doi.org/10.57967/hf/9621) | | LLM 扩展数据集(984 个 LLM 标注的 CVE) | [CIRCL/vulnerability-attack-techniques-llm-scaling](https://huggingface.co/datasets/CIRCL/vulnerability-attack-techniques-llm-scaling) | [10.57967/hf/9622](https://doi.org/10.57967/hf/9622) | | 发布的模型(仅使用 gold set,修正后的 protocol) | [CIRCL/vulnerability-attack-technique-classification-roberta-base](https://huggingface.co/CIRCL/vulnerability-attack-technique-classification-roberta-base) | [10.57967/hf/9623](https://doi.org/10.57967/hf/9623) | | 负面结果对比模型(gold set + 984 行 LLM 数据) | [CIRCL/vulnerability-attack-technique-classification-roberta-base-llm-expanded](https://huggingface.co/CIRCL/vulnerability-attack-technique-classification-roberta-base-llm-expanded) | [10.57967/hf/9624](https://doi.org/10.57967/hf/9624) | 完整的方法论说明位于 VulnTrain 文档中: [`docs/attack-techniques-dataset.md`](https://github.com/vulnerability-lookup/VulnTrain/blob/main/docs/attack-techniques-dataset.md)。 支持各表格的训练器日志包含在本仓库的 [`trainer-logs/`](trainer-logs/) 目录下。 ## 仓库内容 | 文件 | 用途 | |------|---------| | `main.tex`, `references.bib` | 论文源码 | | `cve2capec_noise.pdf` | 图:CVE2CAPEC 标签噪声分布 | | `goldcurve.pdf` | 图:gold 数据规模 scaling 与 LLM 扩展对比 | | `scaling.pdf` | 图:扩展规模 scaling 扫描 | | `make_cve2capec_fig.py` | 从原始 CVE2CAPEC 缓存(`~/.cache/vulntrain`)重新生成 `cve2capec_noise.pdf` | | `make_goldcurve_fig.py`, `make_scaling_fig.py` | 重新生成两张结果图(统计数据来源于训练器日志) | | `aggregate_sweep.py`, `scaling_sweep.py`, `basemodel_table.py` | 将训练器日志目录汇总为论文中的表格 | | `NOTES.md` | 为保持透明度而保留的原始实验记录——论文背后未经修饰的实验日志 | | `trainer-logs/` | 支持各表格和图表的完整训练器日志,每个实验对应一个目录 | ## 构建 PDF ``` pdflatex main.tex bibtex main pdflatex main.tex pdflatex main.tex ``` ## 引用 在预印本发布之前,请引用: ``` @misc{bonhomme2026cveattack, title = {Mapping CVEs to MITRE ATT\&CK Techniques: A Curated Gold-Set Classifier and the Limits of LLM-Assisted Label Expansion}, author = {Bonhomme, C{\'e}dric}, year = {2026}, note = {Preprint}, } ``` ## 致谢 这项工作是在 [AIPITCH](https://www.science.nask.pl/en/research-areas/projects/12456) 项目(AI-Powered Innovative Toolkit for Cybersecurity Hubs)的背景下完成的,由欧盟共同资助。完整的声明请参阅论文的致谢部分。 ## 许可证 论文正文和图表采用 [CC BY-SA 4.0](https://creativecommons.org/licenses/by-sa/4.0/) 许可(参见 `LICENSE`)。 本仓库中的 Python 脚本采用 [GPLv3](https://www.gnu.org/licenses/gpl-3.0.html) 许可,与 [VulnTrain](https://github.com/vulnerability-lookup/VulnTrain) 本身保持一致。
标签:Apex, GPT, IaC 扫描, LaTeX, TruffleHog, 代码示例, 学术论文, 数据分析, 机器学习, 漏洞管理, 逆向工具