二进制安全补丁检测的代码大语言模型实证研究
软件工程
2025-09-09 v1 人工智能
密码学与安全
摘要
安全补丁检测(SPD)是维护软件安全的关键,因未修补的漏洞可能导致严重的安全风险。近年来,众多基于学习的方法在源代码上展现了前景,但这些方法通常无法应用于闭源应用和专有系统,因为补丁仅以二进制文件形式发布,源代码不可访问。鉴于代码大语言模型(LLM)在代码智能和二进制分析任务(如反编译和编译优化)方面的卓越表现,探索其用于检测二进制安全补丁的潜力仍未得到探索,这在其低层代码理解能力与这一关键安全任务之间存在显著的研究空白。为填补这一空白,本文构建了一个大规模二进制补丁数据集,包含19,448个样本,包含两种表示层次:汇编代码和伪代码,系统评估了规模不同的19个代码LLM,以调查其在二进制SPD任务中的能力。我们的初始探索表明,直接提示基础代码LLM难以准确识别二进制补丁中的安全补丁,甚至 state-of-the-art 提示技术也无法弥补基础模型在二进制SPD领域缺乏领域知识的问题。基于初始发现,进一步研究通过两种表示层次将二进制SPD领域知识注入代码LLM的微调策略。实验结果表明,微调后的LLM取得卓越的性能,最佳结果在伪代码表示上获得。
引用
@article{arxiv.2509.06052,
title = {Empirical Study of Code Large Language Models for Binary Security Patch Detection},
author = {Qingyuan Li and Binchang Li and Cuiyun Gao and Shuzheng Gao and Zongjie Li},
journal= {arXiv preprint arXiv:2509.06052},
year = {2025}
}