Understanding Software Vulnerabilities in the Maven Ecosystem: Patterns, Timelines, and Risks
本文利用 Goblin 框架对 Maven 生态中 77,393 个漏洞版本和 226 个 CWE 进行大规模分析,发现漏洞平均需近五年记录、4.4 年解决,延迟带来安全风险,凸显更高效漏洞管理的必要性。
2025-03-28 cs.SE
Advanced Vulnerability Scanning for Open Source Software: Detection and Mitigation of Log4j Vulnerabilities
University of Montana(蒙大拿大学)
本研究开发了高级Log4j扫描工具,通过自动化扫描和持续监控,提高漏洞检测准确性,减少误报,提升开源软件安全性。
2026-01-01 cs.SE
There are More Fish in the Sea: Automated Vulnerability Repair via Binary Templates
针对现有源代码层面漏洞修复技术的局限性,本文提出基于模板的Java二进制自动化漏洞修复方法TemVUR,通过收集并实现修复模板,在Vul4J和ManyVuls4J数据集上展现出显著的修复效果与通用性。
2024-11-27 cs.SE
Evaluation of Static Analysis Tools for Finding Vulnerabilities in Java and C/C++ Source Code
安全测试被推迟到软件开发之后是很常见的,但是漏洞可能会在整个实施阶段被发现,并且发现得越早,修复它们就越容易,越便宜。软件开发过程(如安全软件开发生命周期)在设计和开发过程的每个阶段都包含安全性。静态代码扫描工具通过突出潜在的安全缺陷来发现代码中的漏洞,并提供如何解决这些漏洞的示例,有些甚至可以修改代码以消除敏感性。本文比较了Java和C/C++源代码的静态分析工具,并探讨了它们的优缺点。
2018-05-24 cs.SE
Compatible Remediation on Vulnerabilities from Third-Party Libraries for Java Projects
随着开源软件中漏洞的日益暴露,软件组成分析(SCA)被广泛应用于揭示软件项目中的第三方库及其相关漏洞。除此之外,SCA工具还采用各种补救策略来修复漏洞,其质量差异很大。然而,无效的补救可能会导致副作用,如编译失败,这会阻碍用户的接受。根据我们的研究,现有的SCA工具无法正确处理用户对修复项目兼容性的关注。为此,我们提出了适用于Maven项目的第三方库兼容修复(CORAL),以在不破坏项目的情况下修复漏洞。评估结果表明,CORAL不仅修复了87.56%的漏洞,优于其他工具(最好的75.32%),而且实现了98.67%的编译成功率和92.96%的单元测试成功率。此外,我们发现,在流行的Maven项目中,78.45%的漏洞可以在不破坏编译的情况下修复,其余的漏洞(21.55%)可以通过破坏编译的升级来修复,甚至无法通过升级来修复。
2023-01-20 cs.SE
On the Impact of Security Vulnerabilities in the npm and RubyGems Dependency Networks
对开源软件的兴趣越来越大,导致了可重用软件库的大型语言特定包发行版的出现,例如npm和RubyGems。这些软件包可能存在漏洞,这些漏洞可能通过显式声明的依赖关系暴露依赖包。本文使用Snyk的漏洞数据库,实证研究了影响npm和RubyGems包的漏洞。我们分析了这些漏洞是如何以及何时被披露和修复的,以及它们的流行程度如何随时间变化。我们还分析了易受攻击的软件包如何暴露其直接和间接依赖于漏洞。我们区分了两种类型的依赖项:通过包管理器分发的包,以及依赖于npm包的外部GitHub项目。我们观察到npm中的漏洞数量正在增加,并且比RubyGems中的漏洞披露得更快。对于这两个软件包发行版,披露漏洞所需的时间随着时间的推移而增加。npm软件包中的漏洞影响了30个软件包版本,而RubyGems软件包中的漏洞影响了59个版本。很大一部分外部GitHub项目都暴露在来自直接或间接依赖的漏洞中。项目和包所暴露的依赖关系漏洞中,分别有33%和40%在所使用依赖关系的相同主要版本范围内的最新版本中得到了修复。我们的研究结果表明,需要更多的努力来更好地保护开源软件包的分发。
2022-03-28 cs.SE
An AUTOSAR-Aligned Architectural Study of Vulnerabilities in Automotive SoC Software
本研究分析180个汽车SoC漏洞,映射至AUTOSAR架构模型,识别16个根因和56个受影响模块,揭示漏洞模式及补丁延迟,为SoC软件安全提供检测与定位策略。
2025-10-09 cs.SE
Tracking Patches for Open Source Software Vulnerabilities
针对开源软件漏洞数据库中补丁质量不明、现有补丁追踪方法成本高或适用范围有限的问题,论文指出需要可扩展的补丁质量评估与追踪方法。
2023-09-30 cs.CR cs.SE
A Demand-Side Viewpoint to Software Vulnerabilities in WordPress Plugins
WordPress一直是最流行的内容管理系统(CMS)。这个CMS为数百万个网站提供支持。虽然WordPress在安全方面有着特别糟糕的记录,但近年来,许多众所周知的安全风险已经从核心WordPress转变为CMS编写的众多插件和主题。在此背景下,本文分析了从WordPress插件中发现的已知软件漏洞。需求方的观点被用来激励分析;基本假设是,具有大安装基础的插件受到多个漏洞的影响。由于实证结果也证实了这一假设,本文对近年来关于共同证券民间传说的讨论有所贡献。还提供了一些关于软件漏洞和软件维护之间的关系的一般见解。
2019-03-13 cs.CR cs.SE
PrAIoritize: Automated Early Prediction and Prioritization of Vulnerabilities in Smart Contracts
本研究提出PrAIoritize方法,结合LLM与NLP技术,利用智能合约缺陷领域词典及DistilBERT模型,实现以太坊智能合约代码审查中缺陷的自动化预测与优先级排序,性能显著优于现有模型,可降低人工分诊成本。
2024-05-15 cs.SE
Empirical Analysis of Software Vulnerabilities Causing Timing Side Channels
本研究针对非密码软件中时序攻击相关漏洞研究不足的问题,采用定性定量方法分析2003-2022年NVD中的相关漏洞及补丁代码,发现多数漏洞源于未遵循安全编码规范,为软件安全防护提供实证依据。
2023-08-23 cs.CR cs.SE
Automated Testing of Broken Authentication Vulnerabilities in Web APIs with AuthREST
提出开源安全测试工具 AuthREST,通过自动化检测撞库、密码暴力破解及未检查令牌真实性等问题,有效提升 Web API 安全性,并成功在四个公共 API 中发现未知身份验证漏洞。
2025-09-12 cs.CR cs.SE
SHERLOCK: A Deep Learning Approach To Detect Software Vulnerabilities
Informatics Institute of Technology(信息学技术学院);University of Westminster(威斯敏斯特大学)
本研究提出了一种基于深度学习的软件漏洞检测方法,利用卷积神经网络(CNN)对源代码进行分析,以提高检测多个漏洞的准确性,特别是在CWE-199、CWE-120和CWE-Other方面表现突出,但因缺乏标准化数据集而存在改进空间。
2025-12-14 cs.CR cs.SE
Verifying Software Vulnerabilities in IoT Cryptographic Protocols
物联网(IoT)是由大量智能设备通过网络连接而成的系统。这些设备的数量正在迅速增加,这创建了一个庞大而复杂的网络,其中包含通过该网络传输的大量数据。一种在传输中保护此数据的方法,即,实现数据机密性的方法是对物联网协议使用轻量级加密算法。然而,这种协议的设计和实现是一项容易出错的任务;实现中的缺陷可能导致破坏性的安全漏洞。攻击者可以利用这些漏洞并影响用户的隐私。存在各种技术来验证软件和检测漏洞。有界模型检验(BMC)和Fuzzing是检验软件系统规范正确性的有效技术。在这里,我们描述了一个框架,称为加密BMC和Fuzzing(EBF)使用组合BMC和Fuzzing技术。我们评估了EBF验证框架的应用案例研究,即,S-MQTT协议,用于检查物联网加密协议中的安全漏洞。
2020-01-27 cs.CR cs.SE
Well Begun is Half Done: An Empirical Study of Exploitability & Impact of Base-Image Vulnerabilities
容器技术,(例如,Docker)正被广泛用于以容器映像的形式部署软件基础设施或应用程序。容器镜像中的安全漏洞是开发容器化软件的主要问题。利用这些漏洞可能会导致灾难性的影响,例如丧失机密性、完整性和容器化软件的可用性。了解漏洞的可利用性和影响特征有助于保护容器化软件的配置。然而,缺乏旨在经验性地识别和理解容器映像中漏洞的可利用性和影响的研究。我们进行了一项实证研究,以调查基础图像中的安全漏洞的可利用性和影响,以及它们在开源容器化软件中的流行程度。我们考虑了基本映像,因为容器映像是从基本映像构建的,这些基本映像提供了构建和操作容器化软件的所有核心功能。我们发现并描述了261个基本映像中安全漏洞的可利用性和影响,这些映像是最大的容器注册表中4,681个积极维护的官方容器映像的来源,即,Docker Hub。为了描述现实项目中易受攻击的基础镜像的普遍性,我们分析了来自GitHub的64,579个容器化软件。我们对一组$1,983$独特的基本图像安全漏洞的分析揭示了13个新的发现。这些发现有助于开发人员了解与基本映像相关的潜在安全问题,并鼓励他们在开发应用程序之前从安全角度调查基本映像。
2021-12-21 cs.CR cs.SE
Automated Vulnerability Injection in Solidity Smart Contracts: A Mutation-Based Approach for Benchmark Development
本研究提出基于突变注入的MuSe工具,自动向Solidity智能合约注入六种漏洞以生成基准,并用Slither验证,发现注入率因漏洞而异且静态分析工具检测不全,凸显了改进检测评估的需求。
2025-04-22 cs.SE
A metric for software vulnerabilities classification
漏洞发现和漏洞检测是软件工程中两个广泛的研究领域。这个初步的工作试图结合现有的方法与机器学习技术来定义一个度量分类脆弱的计算机程序。首先定义了一个功能集,然后针对现实世界的漏洞测试了两个模型。分类器的选择和功能之间的关系也被概述。
2014-07-21 cs.LG cs.SE
Automated Software Testing Starting from Static Analysis: Current State of the Art
复杂软件的大规模生产使得人工测试其安全漏洞变得不可能。自动化安全测试工具有各种各样的风格,在软件开发的各个阶段发挥作用,并针对不同类别的软件漏洞。我们有大量的自动化工具可供选择,这很好,但问题是它们的采用和认可并不突出。本研究的目的是探索现有技术的可能性,同时也通过探索安全测试工具和相关技术的未来来拓宽视野。
2023-01-15 cs.SE
An Exploratory Study on Regression Vulnerabilities
背景:安全回归是在以前未受影响的软件系统中引入的漏洞。它们通常是由于源代码更改而发生的(例如,bug修复)并且可能具有严重的影响。目的:增加对安全回归的理解。这是发展安全软件工程的重要一步。方法:我们对Mozilla进行了探索性的混合方法案例研究。首先,我们分析了78个回归漏洞和72个bug报告,其中一个bug修复在Mozilla中引入了回归漏洞。我们调查了开发人员如何在这些错误报告中进行交互,他们如何执行更改,以及在什么条件下他们引入回归漏洞。其次,我们对参与可扩展性诱导bug修复的尽可能多的Mozilla开发人员进行了五次半结构化访谈。结果:漏洞修复期间未讨论软件安全性。开发人员主要关心的是当前bug的复杂性和社区修复它的压力。此外,开发人员不必担心回归漏洞,并假设工具会检测到它们。事实上,动态分析工具帮助发现了Mozilla大约30%的回归漏洞。结论:这些结果提供的证据表明,虽然工具支持有助于识别回归漏洞,但它可能不足以确保漏洞修复期间的安全性。此外,我们的研究结果需要进一步研究安全工具支持以及如何在错误修复期间集成它们。数据和材料:https://doi.org/10.5281/zenodo.6792317
2022-07-05 cs.SE
Understanding the Changing Landscape of Automotive Software Vulnerabilities: Insights from a Seven-Year Analysis
本文分析2018年至2024年9月的1,663个汽车软件漏洞,揭示CWE类型及生态系统暴露面的演变,以支持全生命周期漏洞管理。
2025-03-21 cs.CR cs.SE
SCPatcher: Automated Smart Contract Code Repair via Retrieval-Augmented Generation and Knowledge Graph
Hainan University(海南大学)
本文提出SCPatcher框架,结合检索增强生成与知识图谱实现智能合约漏洞自动修复,通过构建5000个验证过的以太坊合约知识图谱,提升大语言模型推理能力,实现高修复率和编译通过率。
2026-04-01 cs.SE
Causative Insights into Open Source Software Security using Large Language Code Embeddings and Semantic Vulnerability Graph
本文提出将漏洞与根本原因关联的系统,结合大语言代码嵌入和语义漏洞图教育开发者安全编码,并通过可用性研究证明其使代码修复能力提升24%,约9%的开发者经训练后自然编写更安全代码。
2024-01-13 cs.SE
ZTD$_{JAVA}$: Mitigating Software Supply Chain Vulnerabilities via Zero-Trust Dependencies
本文提出零信任依赖方法,将NIST ZTA应用于软件应用,设计了系统ZTD$_{SYS}$与Java原型ZTD$_{JAVA}$,以低成本有效防御软件供应链漏洞。
2024-12-20 cs.CR cs.SE
Finding Software Vulnerabilities in Open-Source C Projects via Bounded Model Checking
针对有界模型检测难以扩展至大规模代码库的问题,提出含代码预处理、系统探索引导及函数级优先级策略的漏洞检测方法,在12个开源C项目中验证有效且内存占用低,发现了经开发者确认的真实漏洞。
2023-11-09 cs.CR cs.SE
Towards Demystifying and Repairing LLM-in-the-Loop Vulnerabilities
Tianjin University(天津大学);Singapore Management University(新加坡管理大学);University of Luxembourg(卢森堡大学)
通过构建首个LLM-in-the-loop漏洞数据集LLMCVE,分析发现LLM常作为目标或传播向量而非根因,并评估现有修复方法,揭示此类漏洞修复更具挑战性。
2026-07-03 cs.CR cs.SE
Faster Releases, Fewer Risks: A Study on Maven Artifact Vulnerabilities and Lifecycle Management
本研究分析10,000个Maven制品的发布历史,发现发布速度与依赖过时程度及CVE数量呈负相关,强调加速发布策略对降低安全风险的重要性。
2025-03-31 cs.SE
Is Secure Coding Education in the Industry Needed? An Investigation Through a Large Scale Survey
美国国土安全部估计,90%的软件漏洞可以追溯到设计和软件编码的缺陷。仅在工业控制系统中,这些漏洞的财务影响就超过3.8亿美元。由于软件开发人员编写软件,他们也会将这些漏洞引入源代码。但是,存在安全编码指南以防止软件开发人员编写易受攻击的代码。本研究的重点是人的因素,软件开发人员和安全编码,特别是安全编码指南。我们想了解软件开发人员对安全编码指南的意识和遵从性,以及为什么他们不遵从或不知道。我们的研究结果基于对安全编码指南的大规模调查,有190多名工业软件开发人员参与。我们的工作的主要贡献激励需要教育工业软件开发人员的安全编码准则,它给出了一个列表的15个可操作的项目,以供业界从业者使用。我们还公开提供原始数据以供进一步研究。
2021-02-10 cs.SE
VULNERLIZER: Cross-analysis Between Vulnerabilities and Software Libraries
University of Innsbruck(因斯布鲁克大学)
本文提出 VULNERLIZER 框架,通过聚类算法对 CVE 与软件库进行交叉分析并训练模型更新权重,实现对未来易受攻击软件库的预测,准确率达 75% 以上。
2023-09-18 cs.CR cs.LG cs.SE
Impact assessment for vulnerabilities in open-source software libraries
针对开源软件库漏洞影响评估依赖专家、成本高且易错的问题,本文提出一种与漏洞类型和编程语言无关的实用方法,并通过 Java 概念验证和案例研究展示其可即时评估应用是否受影响。
2015-04-21 cs.CR cs.SE
Codexity: Secure AI-assisted Code Generation
本文提出集成五个LLM并利用静态分析工具反馈的代码生成框架Codexity,在751个真实漏洞样本上可防止60%的漏洞暴露给开发者。
2024-05-07 cs.SE
A Combined Feature Embedding Tools for Multi-Class Software Defect and Identification
针对软件漏洞识别中特征嵌入和精确识别的局限,提出结合GraphCodeBERT与GCN的CodeGraphNet方法,在漏洞识别准确率达98%,并能处理真实数据及缺陷定位。
2024-11-27 cs.SE
Automated Black-box Testing of Mass Assignment Vulnerabilities in RESTful APIs
大量赋值是RESTful API中最突出的漏洞之一。此漏洞源于常见Web框架中的错误配置,因此攻击者可以利用命名约定和自动绑定来编写恶意请求,写入机密资源并(大规模)覆盖应该是只读和/或机密的数据。在本文中,我们采用了黑盒测试的角度来自动检测大量分配RESTful API中的漏洞。执行场景完全基于OpenAPI规范生成,OpenAPI规范列出了可用的操作及其消息格式。聚类用于对相似的操作进行分组并显示只读字段,后者是批量分配的候选者。然后,通过实例化抽象测试模板自动生成交互序列,试图利用潜在的漏洞。最后,运行测试用例,并由特定的oracle评估其执行情况,以揭示漏洞是否可以被成功利用。所提出的新方法已实施和评估的一组案例研究写在不同的程序设计语言。评估强调,该方法是非常有效的检测种子漏洞,具有非常高的准确性。
2023-01-03 cs.CR cs.SE
A Survey of Prevent and Detect Access Control Vulnerabilities
本文综述 Web 应用访问控制漏洞的特征,并从设计实现、分析测试到运行时监控梳理现有预防与检测方法,指出开放问题。
2023-04-20 cs.CR cs.SE
Automatically Assessing Vulnerabilities Discovered by Compositional Analysis
测试是在真实世界的软件程序中发现漏洞的最广泛使用的方法。基于符号执行的组合分析是一种自动化测试方法,用于发现由许多交互组件组成的中型到大型程序中的漏洞。然而,现有的成分分析框架并不评估所报告的漏洞的严重性。在本文中,我们提出了一个框架来分析现有的组成分析工具发现的漏洞,并分配CVSS3(通用漏洞评分系统v3.0)分数给他们,基于各种知识,如与相关组件的交互,易于达到,设计的复杂性和接受未消毒输入的可能性。通过分析过去使用CVSS 3分数报告的漏洞,我们训练简单的机器学习模型。通过向流行开源软件的开发人员和其他安全专家展示我们的交互式框架,我们收集了对我们训练模型的反馈,并进一步改进了功能,以提高我们预测的准确性。通过从21个开源源程序中提供定性(基于社区反馈)和定量(基于预测准确性)证据,我们表明我们的严重性预测框架可以有效地帮助开发人员评估漏洞。
2018-07-24 cs.SE
SoK: Automated Vulnerability Repair: Methods, Tools, and Assessments
本SoK研究按漏洞分析、补丁生成、补丁验证三步体系化梳理自动化漏洞修复(AVR)方法,构建含144个漏洞的C/C++基准数据集Vul4C,评估了多款C/C++和Java的AVR工具,并指出未来研究方向。
2025-06-13 cs.SE
VFFINDER: A Graph-based Approach for Automated Silent Vulnerability-Fix Identification
针对开源项目静默漏洞修复难以识别的问题,提出基于图神经网络VFFINDER方法,利用AST结构特征区分修复与非修复提交,在36K+提交数据集上显著提升精确率、召回率和F1,并加速识别过程。
2023-09-05 cs.SE
On the Threat of npm Vulnerable Dependencies in Node.js Applications
软件漏洞对我们日常依赖的软件系统有很大的负面影响。有关软件漏洞的报告总是描绘出一幅严峻的画面,一些报告显示,83%的组织依赖于易受攻击的软件。然而,我们的经验使我们相信,在宏伟的计划中,这些软件漏洞的影响可能比报告的要小。因此,我们进行了一项研究,以更好地了解Node.js应用程序中使用的npm漏洞包的威胁。我们根据软件包的生命周期为软件包中的漏洞定义了三个威胁级别,其中,如果软件包漏洞在依赖应用程序中使用时被隐藏或仍然未知,则将其分配为低威胁级别(t),如果漏洞在t时被报告但尚未发布,则为中等威胁级别,如果在t时公开宣布,则为高威胁级别。然后,我们进行了一项实证研究,涉及6,673个真实世界,活跃和成熟的开源Node.js应用程序。我们的研究结果显示,虽然67.93%的受检查的应用程序依赖于至少一个易受攻击的软件包,但这些受影响的应用程序中94.91%的易受攻击的软件包被归类为具有低威胁。此外,我们发现,在被归类为具有高威胁的易受攻击的软件包的情况下,正是应用程序缺乏更新使得它们易受攻击,即,真正的问题并不是脆弱性的存在。此外,我们在应用程序生命周期的不同阶段验证了我们的研究结果,发现我们的研究结果仍然成立。我们的研究认为,当涉及到软件漏洞时,事情可能并不像看起来那么糟糕,考虑漏洞威胁是关键。
2020-09-18 cs.SE
Using Sequence-to-Sequence Learning for Repairing C Vulnerabilities
KTH Royal Institue of Technology(KTH皇家理工学院);Colorado State University(科罗拉多州立大学)
软件漏洞影响所有企业,正在进行研究以避免、检测或修复这些漏洞。在这篇文章中,我们贡献了一种自动修复漏洞的新技术。我们提出了一个系统,使用丰富的软件开发历史,可以在GitHub上找到训练生成补丁的AI系统。我们在代码更改的大数据集上应用序列到序列学习,并从CVE数据库中评估训练系统的真实漏洞。实验结果表明了序列到序列学习用于修复软件漏洞的可行性。
2019-12-04 cs.CR cs.LG cs.SE
Can Large Language Models Find And Fix Vulnerable Software?
PeopleTec(皮奥泰克公司)
本研究评估GPT-4等大语言模型的软件漏洞检测修复能力,发现其检测量是传统工具四倍、修复使漏洞降90%且误报低,具备自我审计能力,为代码安全审计提供新方向。
2023-08-20 cs.LG cs.SE
Autosploit: A Fully Automated Framework for Evaluating the Exploitability of Security Vulnerabilities
Ben-Gurion University of the Negev(内盖夫本-古里安大学);NEC Corporation(日本电气公司)
系统中存在安全漏洞并不一定意味着它可以被利用。在这项研究中,我们介绍了Autosploit -一个自动化的框架,用于评估漏洞的可利用性。给定易受攻击的环境和相关漏洞,Autosploit将自动在环境的不同配置上测试漏洞,以确定成功利用现有漏洞所需的特定属性。由于测试所有可能的系统配置是不可行的,我们引入了一个有效的方法来测试和搜索所有可能的配置环境。Autosploit实现的高效测试过程基于两种算法:广义二进制分裂和Barinel,分别用于无噪声和噪声环境。我们实现了所提出的框架,并使用真正的漏洞进行评估。结果表明,Autosploit能够自动识别影响在无噪声和噪声环境中利用漏洞的能力的系统属性。这些重要结果可用于更准确和有效的风险评估。
2020-06-30 cs.AI cs.CR cs.SE
Fixing Vulnerabilities Potentially Hinders Maintainability
安全性是生产高质量软件的最重要要求。然而,几乎每周仍有大量漏洞被发现和修复。我们假设开发人员在修补漏洞时会影响其代码库的可维护性。本文评估了补丁的影响,以提高开源软件的可维护性的安全性。可维护性是基于Better Code Hub的10个准则模型来衡量的,包括1300个与安全相关的提交。结果表明,在41.90%的情况下,安全性和可维护性之间存在权衡,即,开发人员可能会妨碍软件的可维护性。我们的分析表明,38.29%的补丁增加了软件复杂性,37.87%的补丁增加了每单位LOC的百分比。我们的研究的影响是,代码库的变化,而修补漏洞需要格外小心执行;补丁风险评估工具应集成到CI/CD管道;计算机科学课程需要更新;和,更安全的程序设计语言是必要的。
2021-09-12 cs.CR cs.SE
VFArchē: A Dual-Mode Framework for Locating Vulnerable Functions in Open-Source Software
针对开源软件漏洞定位中补丁缺失与词汇差距问题,提出双模式框架VFArchē,在有/无补丁场景下均显著提升定位性能,并大幅降低SCA工具误报。
2025-06-24 cs.SE
Vulnerability Coverage as an Adequacy Testing Criterion
主流软件应用程序和工具是可配置的平台,具有大量参数及其值。这些参数之间的某些设置和可能的交互可能会加强(或削弱)这些应用程序对某些已知漏洞的安全性和鲁棒性。然而,大量的漏洞报告和与这些工具相关联,使这些工具的详尽测试不可行,对这些漏洞不可行。作为一般软件测试问题的一个实例,要解决的研究问题是被测系统是否健壮和安全。本文介绍了“漏洞覆盖率”的概念,这是一个充分测试给定应用程序的某些类别的漏洞的概念,正如国家漏洞数据库(NVD)所报告的那样。其思想是利用通用漏洞评分系统(CVSS)作为一种手段来衡量进化算法生成的测试输入的适应度,然后通过模式匹配识别与生成的漏洞向量相匹配的漏洞,然后对这些识别出的漏洞进行测试。我们报告了两个进化算法的性能(即,遗传算法和粒子群优化)在生成脆弱性模式矢量中的应用。
2020-06-14 cs.SE
Shallow or Deep? An Empirical Study on Detecting Vulnerabilities using Deep Learning
深度学习(DL)技术在软件工程研究界正在兴起。越来越多的方法已经在DL模型之上被开发出来,这也是由于可用于训练这些模型的软件相关数据的空前数量。深度学习在软件工程领域的一个最新应用是自动检测软件漏洞。虽然已经开发了几种DL模型来解决这个问题,但关于它们的实际有效性仍然存在有限的经验证据,特别是当与浅层机器学习技术相比时。在本文中,我们通过使用三个漏洞数据集和五个不同的源代码表示(即,将代码提供给分类器以评估其是否易受攻击的格式)来比较两个广泛使用的基于DL的模型和一个浅机器学习模型在(i)将代码函数分类为易受攻击或非易受攻击(即,二进制分类),以及(ii)基于代码函数所包含的特定类型的脆弱性(或者“干净”,如果不存在脆弱性)来对代码函数进行分类。作为基线,我们在研究中使用了Google Cloud Platform提供的AutoML实用程序。我们的研究结果表明,实验模型仍然远远不能确保可靠的漏洞检测,并且浅学习分类器代表了最新的基于DL的模型的竞争基准。
2021-03-22 cs.SE
Explaining Software Vulnerabilities with Large Language Models
Chapman University(查普曼大学);Paderborn University(帕德博恩大学);University of Oldenburg(奥尔登堡大学);Paderborn University and Fraunhofer IEM(帕德博恩大学和弗劳恩霍夫IEM研究所)
本文提出IDE插件SAFE,利用GPT-4o为SAST工具检测的漏洞生成成因、影响与缓解策略解释,并通过专家用户研究验证其能显著提升初级到中级开发人员对安全漏洞的理解与处理能力,改善SAST工具可用性。
2025-11-06 cs.AI cs.SE
TransferFuzz: Fuzzing with Historical Trace for Verifying Propagated Vulnerability Code
针对代码复用导致漏洞传播但现有方法无法验证其在新环境中可触发的问题,提出TransferFuzz框架,通过提取基础二进制文件的历史轨迹并结合密钥字节引导变异与嵌套模拟退火算法,实现高效验证,速度为现有方法的2.5-26.2倍,还扩展了15个漏洞的受影响范围。
2024-11-27 cs.SE
An Empirical Study on Android-related Vulnerabilities
移动设备在日常生活中的使用越来越多。它们是我们的相机、钱包和钥匙。基本上,它们将我们的大部分私人信息嵌入我们的口袋里。由于这个原因和其他原因,移动设备,特别是在它们上运行的软件,被认为是软件漏洞领域的一等公民。一些研究调查了移动应用程序以及更广泛的移动设备背景下的软件漏洞现象。这些研究大多集中在可能影响移动应用程序的漏洞上,而只有少数研究影响移动应用程序运行的底层平台的漏洞:操作系统(OS)。此外,这些研究是在非常有限的一组漏洞上进行的。在本文中,我们提出了迄今为止调查Android相关漏洞的最大研究,特别关注影响Android操作系统的漏洞。特别是,我们(i)定义了Android相关漏洞类型的详细分类;(ii)调查受漏洞影响的Android操作系统的层和子系统;(iii)研究漏洞的生存能力(即,漏洞引入和修复之间的天数)。我们的发现可以帮助操作系统和应用程序开发人员专注于他们的验证和验证活动,并帮助研究人员构建为移动世界量身定制的漏洞检测工具。
2017-04-11 cs.CR cs.SE
AutoMESC: Automatic Framework for Mining and Classifying Ethereum Smart Contract Vulnerabilities and Their Fixes
由于智能合约中的漏洞所带来的风险,其安全性近年来受到了极大的关注。然而,缺乏关于智能合约漏洞及其修复的开放数据集,从而可以进行数据驱动的研究。为此,我们提出了一种自动化方法,用于从GitHub和国家漏洞数据库中的常见漏洞和暴露(CVE)记录中挖掘和分类以太坊的智能合约漏洞及其相应的修复。我们在一个完全自动化的框架中实现了所提出的方法,我们称之为AutoMESC。AutoMESC使用七种最知名的智能合约安全工具,根据漏洞类型对收集到的漏洞进行分类和标记。此外,它还收集可用于数据密集型智能合约安全研究的元数据(例如,漏洞检测、漏洞分类、严重性预测和自动修复)。我们使用AutoMESC构建了一个样本数据集,并将其公开。目前,该数据集包含6700个以Solidity编写的智能合约的可行性修复对。我们从准确性、来源和相关性方面评估了构建数据集的质量,并将其与现有数据集进行比较。AutoMESC旨在持续收集数据,并通过GitHub和CVE记录中新发现的智能合约漏洞及其修复程序来更新相应的数据集。
2022-12-20 cs.CR cs.SE
CVEfixes: Automated Collection of Vulnerabilities and Their Fixes from Open-Source Software
Simula Research Laboratory(西莫拉研究实验室)
对源代码中安全漏洞的自动发现和修复进行数据驱动的研究需要真实易受攻击的代码及其修复的全面数据集。为了帮助这样的研究,我们提出了一种方法来自动收集和策划一个全面的漏洞数据集,从公共的国家漏洞数据库(NVD)中的常见漏洞和暴露(CVE)记录。我们在一个完全自动化的数据集收集工具中实现了我们的方法,并分享了名为CVEfixes的漏洞数据集的初始版本。CVEfixes收集工具自动从NVD获取所有可用的CVE记录,从相关的开源存储库收集易受攻击的代码和相应的修复程序,并将收集到的信息组织到关系数据库中。此外,数据集还包含了诸如程序设计语言等元数据,以及五个抽象级别的详细代码和安全度量。该集合可以很容易地重复,以保持最新的新发现或修补的漏洞。CVE修复的初始版本涵盖了截至2021年6月9日的所有已发布的CVE,涵盖了1754个开源项目的5365条CVE记录,这些项目在总共5495次漏洞修复提交中得到了解决。CVEfixes支持各种类型的数据驱动的软件安全研究,例如漏洞预测,漏洞分类,漏洞严重性预测,分析与安全性相关的代码更改以及自动漏洞修复。
2021-07-19 cs.AI cs.CR cs.LG
The Popularity Hypothesis in Software Security: A Large-Scale Replication with PHP Packages
University of Southern Denmark(南丹麦大学)
本研究针对PHP软件开展大规模重复验证分析,证实软件流行度与漏洞存在正相关,同时为软件安全实证知识及漏洞术语讨论提供了支撑。
2026-09-02 cs.CR cs.SE
Detecting Vulnerabilities in Encrypted Software Code while Ensuring Code Privacy
LASIGE, DI, Faculdade de Ciências, Universidade de Lisboa(里斯本大学科学学院)
提出结合静态分析与可搜索对称加密(SSE)的CoCoA工具,在保护代码隐私的前提下对加密源代码进行漏洞检测,实现了93%的精度和42.7%的适度开销。
2026-05-23 cs.CR cs.SE
Forecasting the risk of software choices: A model to foretell security vulnerabilities from library dependencies and source code evolution
本文提出一个白盒轻量级模型,通过形式化源代码演化与库依赖,在库级别预测软件项目未来面临CVE披露的概率,辅助项目特定技术决策与生态系统健康度量。
2024-11-17 cs.CR cs.ET cs.SE
VulEval: Towards Repository-Level Evaluation of Software Vulnerability Detection
提出仓库级评估系统VulEval,通过函数级检测、依赖预测和仓库级检测三项任务及大规模数据集,填补了过程间漏洞检测评估的空白。
2024-04-24 cs.CR cs.SE
Beyond Metadata: Code-centric and Usage-based Analysis of Known Vulnerabilities in Open-source Software
本文提出结合静态与动态分析的代码中心方法 VULAS,依据漏洞代码可达性评估开源依赖,并支持选择安全版本,已在 SAP 工业环境大规模应用。
2018-07-12 cs.CR cs.SE