#software-security

共收录 7 条相关安全情报。

← 返回所有主题
👥 作者: Rebecca Balebako, Jasmine Egl

随着大型语言模型(LLM)在软件开发中的广泛应用,如何客观比较LLM生成代码与人类编写代码的安全性成为一个关键问题。目前缺乏标准化的实证研究方法,导致难以评估LLM是提升还是削弱了安全基线。为此,本文提出一个自动化框架,用于在纯人类、纯LLM以及人机协作三种条件下进行对比研究。该框架自动记录提示词、时间戳和实验设置,并通过多维度的静态和动态质量分析来衡量结果。作者提供了开源实现,以确保未来研究的可重复性和“物种公平性”。通过一项可行性研究验证了框架的有效性,并总结了经验教训,为后续关于人类与LLM生成代码安全性的实证研究奠定了基础。本文适合软件安全研究人员、LLM开发者以及希望评估AI编码工具安全性的组织阅读。

💡 推荐理由: 该研究提供了首个标准化方法,用于实证比较LLM与人类编写代码的安全性,填补了评估AI编码工具安全影响的关键空白。

🎯 建议动作: 研究跟进

排序因子: 来自 arXiv 其他板块 (+2) | 命中热门研究主题 (+2) | Community 数据源 (+1) | LLM 评分加成 (+0.5)
👥 作者: Puzhuo Liu, Yuhan Huang, Jianlei Chi, Peng Di, Yu Jiang

二进制反编译旨在将二进制代码恢复为高级语言源代码,但现有评估方法主要依赖语法相似性(如BLEU)或单一维度的可读性指标(如McCabe复杂度),无法反映实际可复用性。本文提出一种以可复用性为导向的评估范式,从三个正交维度衡量反编译器质量:可读性(代码是否易于理解)、可重编译性(反编译代码能否直接编译为目标程序)、功能性(反编译代码执行结果是否与原始二进制一致)。为实现这一范式,作者构建了DEBENCH框架,包含240个原子测试函数,组织成8个源文件并编译为640个二进制文件(覆盖多种编译选项和架构)。DEBENCH集成三种评估手段:基于LLM作为评判者的可读性评分(包含18个子维度的URAF评分体系)、在固定50次迭代预算下的迭代编译-修复流程(评估可重编译性)、以及基于Frida的差分动态追踪(在程序级、函数级和指令级比对执行行为)。研究评估了5款主流反编译器(如Ghidra、IDA Pro、Hex-Rays等)和3个用于修复的LLM(如GPT-4、Claude等)。主要发现包括:(1)可复用性悬崖显著:最佳反编译器-LLM组合在程序级行为重叠上达到22.3%(精确+部分匹配),但精确stdout匹配仅1.2%,远低于可重编译性指标(约50个百分点);(2)可读性最佳设置并不最大化功能性:-O3优化产生最低可读性但最高功能性,Clang生成的可读性低于GCC但功能性高2.6倍;(3)反编译器间的功能级差异是修复LLM间差异的20倍(20x vs 1.6x),说明进展更依赖反编译器引擎而非更大规模的修复模型;(4)反编译失败可分为三类:语法噪声、类型系统坍塌(约占修复错误的19%)、以及不可逆的上游信息损失(如ARM64重定位惯用法、C++ ABI特性)。该研究为反编译工具选择、自动化补丁分析、恶意代码逆向等安全场景提供了量化基准。

💡 推荐理由: 二进制反编译是逆向工程和漏洞分析的核心环节,但现有评估指标脱离实际复用场景。DEBENCH首次从可读性、可重编译性、功能性三维量化反编译质量,揭示了不同优化选项和编译器对反编译结果的影响,帮助安全从业者选择最适合自己工作流的反编译工具和配置。

🎯 建议动作: 研究跟进

排序因子: 有可用补丁/修复方案 (+3) | 来自 arXiv 其他板块 (+2) | 命中热门研究主题 (+2) | Community 数据源 (+1) | LLM 评分加成 (+0.5)
👥 作者: Ze Sheng, Dmitrijs Trizna, Luigino Camastra, Zhicheng Chen, Qingxiao Xu, Jeff Huang

本文针对C/C++软件中模糊测试(fuzz testing)的关键瓶颈——fuzz harness(连接模糊器和库API的程序)的正确性问题,提出了一种自动化生成高质量harness的系统QuartetFuzz。现有的自动化harness生成工具无法系统性地确保harness的正确性,导致逻辑错误、API误用和生命周期违规等问题在源代码层面被忽视。随着基于大语言模型(LLM)的生成技术使harness创建规模化,缺乏质量控制反而使规模成为负担。QuartetFuzz的核心是四个原则框架:逻辑正确性(P1)、API协议合规(P2)、安全边界尊重(P3)和入口点充分性(P4),这是首个在源代码层面定义harness正确性的框架,包含数学规范与可实现的检查。该系统将这四个原则操作化为一个自主LLM智能体,通过“生成-检查-修复”循环,在模糊测试开始前确保生成的harness满足P1-P4。在涵盖C/C++、Java和JavaScript的23个开源项目上部署后,系统提交了42个漏洞报告,其中29个已被上游修复或确认(包括3个CVE),仅有2个被拒绝(误报率4.8%)。在生成过程中,内置的P1/P2检查自动拦截了58个由harness引起的崩溃,否则这些崩溃将成为误报。当作为质量审核工具应用于70个项目的586个现有生产环境harness时,系统识别出53个违规(45个已确认,35个已修复)。此外,作者发布了包含100个标注harness的数据集以供可复现评估。该工作对于提升模糊测试的有效性、减少误报、以及自动化安全测试基础设施有重要意义。

💡 推荐理由: 该研究首次从源代码层面定义并实现了fuzz harness的正确性框架,解决了LLM生成harness时质量失控的问题,显著降低了模糊测试中的误报率,并已产出实际漏洞修复(含3个CVE),对安全测试工程师和自动化工具开发者具有直接参考价值。

🎯 建议动作: 研究跟进

排序因子: 有可用补丁/修复方案 (+3) | 来自 arXiv 其他板块 (+2) | 命中热门研究主题 (+2) | Community 数据源 (+1) | LLM 评分加成 (+0.5)
👥 作者: Shuangjie Yao, Dongdong She

本文针对符号执行中的路径爆炸问题,提出了一种基于路径覆盖的有效路径优先级排序技术Empc。符号执行是一种强大的程序分析技术,能够系统地探索被测试程序的执行路径并检测软件缺陷,但路径爆炸严重限制了其可扩展性和性能。以往的路径优先级排序方法使用静态规则或启发式方法,但往往难以泛化到不同程序。本文的核心洞见在于并非所有路径都需要进行符号推理。与传统方法不同,Empc利用最小路径覆盖(MPC)子集,该子集能覆盖被测试程序的所有代码区域。为了鼓励路径优先级排序的多样性,计算多个MPC。然后,将符号执行的搜索引导到这些MPC内部的少量路径上,而非指数级数量的路径。基于KLEE实现了Empc,并进行了全面评估,涵盖代码覆盖率、漏洞发现和运行时开销。评估结果显示,相比KLEE的最佳搜索策略,Empc的基本块覆盖率提高了19.6%,代码行覆盖率相比最新工作cgs提高了24.4%。此外,Empc比KLEE的最佳搜索策略多发现24个安全违规。同时,Empc可将KLEE的内存使用量最高减少93.5%,符号状态数量最高减少88.6%。该研究适用于软件安全测试和符号执行领域的研究人员。

💡 推荐理由: 符号执行是漏洞发现的关键技术,但路径爆炸长期制约其实用性。Empc通过路径覆盖思想大幅减少探索路径,显著提升覆盖率、漏洞发现效率并降低资源消耗,对自动化安全测试具有重要价值。

🎯 建议动作: 研究跟进

排序因子: 来自网络安全顶级会议 (+8) | 命中热门研究主题 (+2) | Community 数据源 (+1) | LLM 评分加成 (+0.5)
👥 作者: Isaac David, Arthur Gervais

该论文提出 Patch2Vuln,一个利用语言模型代理从 Linux 发行版二进制补丁中重建漏洞信息的研究框架。安全更新发布后,防御者和攻击者均有机会对比漏洞版本和修复版本的软件,但实际运维中往往只有二进制包可用,缺乏源码补丁或公告文本。Patch2Vuln 构建了一个完全本地、可中断恢复的流水线:首先提取旧/新 ELF 二进制对,通过 Ghidra 和 Ghidriff 进行反汇编和差异分析;然后对变更函数进行排序,构建候选函数档案;最后调用离线大语言模型代理生成初步审计报告、有界验证计划以及最终审计结论。作者在 25 个 Ubuntu .deb 软件包对上评估了 Patch2Vuln,包括 20 个安全更新对和 5 个阴性对照,所有结果均基于私有源码补丁和二进制函数地面实况进行人工裁决。结果显示,代理在 20 个安全对中成功定位了 10 个经验证的安全相关补丁函数,并在 11 个对中给出了被接受的最终根因分类。进一步诊断发现,6 个安全对在模型推理前即因二进制差异分析或排序器遗漏了正确函数而失败,另有 1 个因上下文导出缺失导致失败。独立的有界验证步骤生成了两个目标级最小化新旧行为差异(均针对 tcpdump),但未发现崩溃、超时、消毒器发现或内存破坏证明;所有阴性对照均被归类为未知且未产生验证差异。实验表明,从二进制补丁进行代理式漏洞重建是一个有前景的研究方向,但同时指出二进制差异覆盖和局部行为验证仍是限制性组件。该工作对安全运营中自动化漏洞分析具有潜在价值,尤其适用于缺乏源码补丁的场景。

💡 推荐理由: 二进制补丁分析是安全运维中的关键环节,但手动逆向分析耗时且容易遗漏。Patch2Vuln 探索了利用 LLM 代理自动化这一过程的可能性,展示了无需源码即可定位安全修复函数的潜力,可帮助蓝队快速评估补丁影响、缩小攻击面。

🎯 建议动作: 研究跟进

排序因子: 有可用补丁/修复方案 (+3) | 来自 arXiv 其他板块 (+2) | Community 数据源 (+1) | LLM 评分加成 (+0.5)
👥 作者: Qixuan Guo, Yongzhong He

该论文针对软件供应链安全中识别漏洞引入提交(Vulnerability-Introducing Commit, VIC)这一关键问题,提出了一种基于补丁模式差异分析的新方法。传统VIC识别方法主要依赖代码变更的文本特征或图结构,但往往受限于噪声数据(如重构提交)且对隐蔽性漏洞引入不敏感。作者通过观察发现:修复补丁(patching patterns)在修复前和修复后的代码差异模式具有可区分的特征,这些特征可以反向用于定位最初的漏洞引入点。具体而言,论文首先从公开漏洞库(如NVD)和开源仓库中收集大量已知漏洞的修复提交,然后构建补丁模式的知识库;接下来,对于待分析的候选提交,通过比对候选提交的代码变更与已知修复补丁的“逆模式”(即补丁的镜像操作)来识别潜在的VIC。方法包含三个主要步骤:1)补丁模式提取与量化:使用抽象语法树(AST)差异分析将补丁模式表示为结构化编辑操作序列;2)逆模式匹配:对于每个候选提交,计算其编辑操作序列与已知补丁模式逆序列的相似度;3)基于集成排序的VIC判定:结合多个相似度指标和提交元数据(如时间戳、开发者信息)进行综合排序。实验在多个真实世界开源项目(如Linux内核、Apache HTTPD)上进行,结果显示该方法在TPR(真正例率)和Precision上均优于现有基线方法(如VCCFinder、FIBER),尤其对隐蔽性漏洞(如逻辑错误导致的漏洞)的引入提交识别准确率提升显著。论文还分析了不同补丁模式(如条件增强、函数接口变更)对识别效果的贡献,表明逆模式匹配能有效过滤重构提交等噪声。该研究的贡献在于提供了一种无需依赖漏洞细节(如PoC)的VIC识别思路,可应用于自动化漏洞根因定位和修复回溯。

💡 推荐理由: 准确识别漏洞引入提交是软件供应链安全的核心能力,直接影响漏洞修复效率与历史影响分析。本文提出的方法能有效降低误报,提升自动化根因定位的精度,对安全运维团队进行漏洞追溯、补丁优先级排序具有实际参考价值。

🎯 建议动作: 研究跟进

排序因子: 有可用补丁/修复方案 (+3) | 来自网络安全顶级会议 (+8) | Community 数据源 (+1) | LLM 评分加成 (+0.5)
👥 作者: Sicong Cao, Jinxuan Xu, Le Yu, Jing Yang, Xingwei Lin, Linlin Zhu, Fu Xiao

精确识别漏洞引入提交(Vulnerability-Inducing Commit)是软件安全领域多项任务(如漏洞检测、受影响版本分析)的基础。传统的SZZ算法通过追溯代码历史来定位最早修改漏洞代码的提交,但现有方法(如定制化V-SZZ和当前最先进的LLM4SZZ)存在两个关键缺陷:锚点选择错误(即无法准确定位漏洞相关语句)以及回溯能力不足,导致实际应用中可靠性低下。本文提出了一种基于多智能体协作的SZZ算法MAS-SZZ。给定一个CVE描述及其对应的修复提交,MAS-SZZ首先利用智能体总结漏洞根因,然后采用结构化的逐步提示(step-forward prompting)策略,根据每个补丁块(patch hunk)的变更意图,精准定位漏洞相关语句。这些语句作为锚点,再由另一个智能体自动回溯仓库历史,找到首次引入漏洞的提交。实验在多个数据集和编程语言上进行,结果显示MAS-SZZ在F1分数上相比最佳现有SZZ算法提升了高达65.22%,显著优于所有基线方法。该方法为漏洞引入提交识别提供了一种自动化、高精度的解决方案,有望推动漏洞管理、软件供应链安全等领域的实践。本文适合安全工程师、软件维护团队以及从事漏洞分析的研究人员阅读。

💡 推荐理由: 漏洞引入提交的精准识别是漏洞修复、影响范围评估和供应链安全防护的关键前提。MAS-SZZ通过多智能体协作克服了传统SZZ的锚点误差和回溯不足问题,显著提升准确性,为自动化漏洞归因提供了可靠方案。

🎯 建议动作: 研究跟进

排序因子: 有可用补丁/修复方案 (+3) | 命中热门研究主题 (+2) | Community 数据源 (+1) | LLM 评分加成 (+0.6)