PoCGen:生成NPM软件包漏洞的验证性攻击
密码学与安全
2025-09-30 v3 软件工程
摘要
软件包中的安全漏洞是开发者和用户的重大关切。及时修复这些漏洞对于恢复软件系统的完整性和安全性至关重要。然而,先前的工作表明,漏洞报告常常缺乏证明性攻击(PoC),而这对于修复漏洞、测试补丁以及避免回归至关重要。创建 PoC 攻击具有挑战性,因为漏洞报告是非正式的且常常不完整,并且需要对通过可能存在漏洞 API 的输入如何到达安全相关接收端的详细理解。在本文中,我们提出了 PoCGen,一种自主为 NPM 软件包漏洞生成和验证 PoC 攻击的新方法。该方法是首次针对这一任务,将大型语言模型( LLM )的互补优势(例如,理解非正式的漏洞报告)与静态分析(例如,识别污点路径)和动态分析(例如,验证生成的攻击)相结合。PoCGen 在 SecBenchjs 数据集中的 77% 漏洞上成功生成攻击。此成功率显著超过最近的基线(高出 45 个百分点),同时每个生成攻击的平均成本仅为 $0.02。此外,PoCGen 为最近的真实世界漏洞生成了六个成功攻击,其中五个现已包含在其相应的漏洞报告中。
引用
@article{arxiv.2506.04962,
title = {PoCGen: Generating Proof-of-Concept Exploits for Vulnerabilities in Npm Packages},
author = {Deniz Simsek and Aryaz Eghbali and Michael Pradel},
journal= {arXiv preprint arXiv:2506.04962},
year = {2025}
}