Guiding Symbolic Execution with Static Analysis and LLMs for Vulnerability Discovery
University of California, Santa Barbara(加州大学圣塔芭芭拉分校)
SAILOR结合静态分析与LLM合成自动构建符号执行Harness,通过三个阶段发现内存安全漏洞,实验表明其在大规模代码库中显著提升漏洞检测效率。
2026-04-07 cs.CR cs.SE
FuzzDistill: Intelligent Fuzzing Target Selection using Compile-Time Analysis and Machine Learning
University of Virginia(弗吉尼亚大学)
针对模糊测试在大规模代码库中耗时久、资源消耗大的问题,提出FuzzDistill方法,结合编译时信息分析与机器学习筛选高优先级测试目标,可大幅缩短真实软件的测试时间。
2024-12-11 cs.CR cs.LG cs.SE
Predicting Vulnerability In Large Codebases With Deep Code Representation
Cisco Systems(思科系统公司)
目前,当软件工程师为各种模块编写代码时,经常会引入各种类型的错误-编码,逻辑,语义和其他(其中大多数不会被编译和其他工具捕获)。其中一些bug可能会在测试的后期发现,很多时候客户会在生产代码中报告。公司不得不花费大量的资源,包括金钱和时间来寻找和修复错误,如果编码正确,这些错误本可以避免。此外,软件中隐藏的缺陷可能导致安全漏洞,从而可能使攻击者危及系统和应用程序。有趣的是,过去修复过的相同或相似的问题/错误(尽管在不同的模块中)往往会再次引入生产代码。我们开发了一个新的基于人工智能的系统,它使用从源代码创建的抽象树(AST)的深度表示以及主动反馈循环来识别和警告可能在开发本身时引起的潜在错误,即开发人员正在编写新代码(逻辑和/或函数)。这个工具与IDE集成为一个插件将在后台工作,指出现有的类似功能/代码段和这些功能中的任何相关错误。该工具将使开发人员能够在开发时就纳入建议,而不是等待UT/QA/客户提出缺陷。我们评估了我们的工具上的开源代码和思科代码库的C和C++编程语言。我们的研究结果证实,源代码的深度表示和主动反馈循环是预测代码中存在的安全性和其他漏洞的可靠方法。
2020-04-24 cs.LG cs.SE
Hidden Ciphers and Where to Find Them: Static Discovery and Assessment of Cryptographic Assets in Software
XITASO GmbH(XITASO有限公司);University of Applied Sciences Amberg-Weiden(安贝格魏登应用科学大学)
本文提出分类驱动的静态方法,可在不到6分钟处理57610个文件,发现370个密码资产(含6个CVE漏洞、52个后量子迁移候选),F1达0.75,助力密码资产发现与后量子迁移规划
2026-08-06 cs.CR cs.SE
Evaluating Cryptographic API Misuse Detectors for Go
KTH Royal Institute of Technology(皇家理工学院)
本文研究Go语言中加密API误用检测,分析4种先进工具,识别14种误用类别,通过328个开源项目发现7473处漏洞,揭示误用分布及覆盖差异。
2026-04-27 cs.CR cs.SE
An Empirical Security Evaluation of LLM-Generated Cryptographic Rust Code
Texas A&M University–San Antonio(德克萨斯农工大学圣安东尼奥分校)
本文评估了三种LLM生成的加密Rust代码的安全性,发现通用工具不足,提示策略对结果影响显著,且存在nonce重用等系统性问题。
2026-04-29 cs.CR cs.SE
Static Exploration of Taint-Style Vulnerabilities Found by Fuzzing
污点类型的漏洞包括大多数模糊发现的程序故障。这些漏洞通常表现为受污染的程序输入导致的内存访问违规。尽管模糊器已经帮助发现了大多数软件中的污点类型的漏洞,但它们受限于(i)测试覆盖范围;(ii)可模糊测试用例的可用性。因此,单独的模糊化不能提供所有污染类型的漏洞都已被发现的高度保证。在本文中,我们使用静态模板匹配找到模糊发现漏洞的递归。为了弥补模板匹配固有的不完整性,我们实现了一个简单而有效的匹配排名算法,使用测试覆盖率数据集中注意力在那些匹配,包括未经测试的代码。我们使用Clang/LLVM编译器工具链对我们的方法进行原型设计,并将其与afl-fuzzz(一种现代覆盖率引导模糊器)结合使用。使用案例研究进行的开放vSwitch代码库,我们表明,我们的原型发现角落的情况下,缺乏一个模糊的测试工具的模块。我们的工作表明,静态分析可以有效地补充模糊测试,是一个有用的除了安全评估工具集。此外,我们的技术承诺提高程序分析和测试的有效性,并作为一个混合漏洞发现框架的构建块。
2017-06-01 cs.CR cs.PL cs.SE
Specognitor: Identifying Spectre Vulnerabilities via Prediction-Aware Symbolic Execution
Spectre攻击利用推测性执行来泄露敏感信息。在过去的几年中,已经提出了一些静态侧通道检测器来检测存在推测执行的高速缓存泄漏。然而,这些技术要么忽略了分支预测机制,检测静态的预定义模式,这是不适合检测新的模式,或导致假阴性。在本文中,我们说明了预测不可知的最先进的方法的弱点。我们提出了Specognitor,一种新的预测感知符号执行引擎,健全地探索程序路径和检测微妙的幽灵变体1和变体2漏洞。我们提出了一个动态模式检测机制,以考虑现有的和未来的漏洞。我们的实验结果表明Specognitor在分析真实世界的密码程序w.r.t.不同的处理器家族。
2022-11-24 cs.AR cs.CR cs.SC
Code Vulnerability Detection: A Comparative Analysis of Emerging Large Language Models
针对软件开发依赖开源项目引发的漏洞问题,本文对比了Llama、CodeGemma等新兴LLM与BERT、GPT-3等现有模型的代码漏洞检测性能,发现CodeGemma的F1分数和召回率在新兴模型中最高,为提升软件安全实践提供参考。
2024-09-16 cs.SE
Applying Formal Methods Tools to an Electronic Warfare Codebase (Experience report)
FAST Labs, BAE Systems(BAE系统公司 FAST实验室)
本文报告了将形式方法工具应用于电子战系统中的经验,探讨了工具可用性及漏洞检测比较,并提出改进建议。
2026-01-16 cs.LO cs.SE
CROW: Code Diversification for WebAssembly
WebAssembly的采用在过去几年中迅速增加,因为它为程序执行提供了快速和安全的模型。但是,WebAssembly也存在可能被侧通道攻击利用的漏洞。这类漏洞可以通过代码多样化来解决。在本文中,我们提出了第一个完全自动化的工作流程,用于多样化的WebAssembly二进制文件。我们提出了CROW,一个开源的工具,实现这个工作流程。我们评估CROW的303 C程序的能力,并研究其使用在现实生活中的安全敏感的程序:libsodium,加密库。总体而言,CROW能够为303个小程序中的239个(79%)生成不同的变体。此外,我们的实验表明,我们的方法和工具能够成功地多样化现成的加密软件(libsodium)。
2021-10-13 cs.CR cs.PL cs.SE
Rust for Embedded Systems: Current State, Challenges and Open Problems (Extended Report)
本文通过分析 2,836 个 Rust 嵌入式软件和 225 名开发者问卷,系统揭示了 Rust 在嵌入式领域的支持不足、SAST 工具失效及互操作性挑战。
2024-09-05 cs.CR cs.SE
To Fix or Not to Fix: A Critical Study of Crypto-misuses in the Wild
最近的研究表明,使用加密API的Android应用程序中有87%到96%存在可能导致安全漏洞的滥用。由于以前的研究没有对结果的有效性和严重性进行定性检查,我们的目标是更深入地了解结果。我们分析了一组936个开源Java应用程序的加密滥用。我们的研究表明,88.10%的分析应用程序未能安全地使用加密API。通过对随机样本的手动分析,我们对有效的误报有了新的认识。例如,频繁误用的JCA类MessageDigest的每四次误用都是一次有效的误报,因为它发生在非安全上下文中。由于我们希望更深入地了解这些滥用的安全影响,我们为加密API滥用创建了一个广泛的漏洞模型。我们的模型包括以前未讨论的攻击,如DoS攻击的加密API的上下文中。该模型显示,近一半的滥用是高度严重的,例如,硬编码凭证和潜在的中间人攻击
2023-03-24 cs.CR cs.SE
Unveiling Security Weaknesses in Autonomous Driving Systems: An In-Depth Empirical Study
本研究使用CodeQL对Autoware、AirSim和Apollo三个开源自动驾驶项目进行静态分析,发现CWE-190和CWE-20漏洞普遍且持久,建议将静态代码分析整合到开发中。
2025-02-27 cs.CR cs.SE
Usability and Security Effects of Code Examples on Crypto APIs - CryptoExamples: A platform for free, minimal, complete and secure crypto examples
上下文:据说加密API不可用,研究人员建议在文档中添加示例代码。目的:我们希望为加密代码示例创建一个免费平台,以提高非安全专家创建的应用程序的可用性和安全性。方法:我们创建了开源网络平台CryptoExamples,并进行了一项受控实验,其中58名学生将对称加密添加到Java程序中。然后我们测量了可用性和安全性。结果如下:使用该平台的参与者不仅效率显著提高(+73%),而且他们的代码包含的安全漏洞也显著减少(-66%)。结论:通过CryptoExamples,可以弥合难以更改的API文档与完整安全的代码示例之间的差距。不过,该平台还需要更多的代码示例。
2018-07-03 cs.CR cs.SE
LLMs in Code Vulnerability Analysis: A Proof of Concept
Ohio University(俄亥俄大学);University of Cincinnati(辛辛那提大学);University of Tennessee(田纳西大学)
本文探讨利用LLMs在代码漏洞分析中的应用,通过微调和提示方法评估模型性能,发现代码专用模型在复杂任务中表现优异,但现有指标不足以衡量修复质量。
2026-01-13 cs.SE
UEFI Vulnerability Signature Generation using Static and Symbolic Analysis
本文提出STASE技术,结合静态分析与符号执行,自动生成UEFI漏洞签名,检测出5个PixieFail漏洞和13个新漏洞,提升精确性与可扩展性。
2024-07-17 cs.CR cs.SE
Learning to Reduce False Positives in Analytic Bug Detectors
Microsoft(微软)
由于软件设计的日益复杂和快速迭代开发,代码缺陷和安全漏洞在现代软件中普遍存在。作为回应,程序员依靠静态分析工具定期扫描他们的代码库并发现潜在的错误。然而,为了最大化覆盖范围,这些工具通常倾向于报告大量的误报,需要开发人员手动验证每个警告。为了解决这个问题,我们提出了一种基于transformer的学习方法来识别误报错误警告。结果表明,该模型可以使静态分析的精度提高17.5%.此外,我们还验证了这种方法在两种主要错误类型上的通用性:空解引用和资源泄漏。
2022-03-08 cs.LG cs.SE
Example-Based Vulnerability Detection and Repair in Java Code
Java库JCA和JSSE提供了加密API以促进安全编码。当开发人员滥用某些API时,他们的代码容易受到网络攻击。为了消除这些漏洞,人们构建了通过模式匹配检测安全API滥用的工具。然而,大多数工具不(1)修复误用或(2)允许用户扩展工具的模式集。为了克服这两个限制,我们创建了Seader--一种基于示例的方法来检测和修复安全API滥用。给定一个示例<insecure,secure>代码对,Seader比较代码片段以推断任何API滥用模板和相应的修复编辑。根据推断出的信息,给定一个程序,Seader执行过程间静态分析来搜索安全API误用并提出定制的修复方案。为了进行评估,我们将Seader应用于28个<不安全,安全>代码对; Seader成功地推断出21个独特的API误用模板和相关修复。通过这些<vulnerability,fix>模式,我们将SEADER应用于一个有86个已知漏洞的程序基准测试。Seader以95%的准确率、72%的召回率和82%的F分数检测到漏洞。我们还将Seader应用于100个开源项目,并手动检查了77个建议的修复;其中76个修复是正确的。Seader可以帮助开发人员正确使用安全API。
2022-04-28 cs.CR cs.SE
CodeCureAgent: Automatic Classification and Repair of Static Analysis Warnings
CISPA Helmholtz Center for Information Security(CISPA赫尔姆霍兹信息安全中心)
本文提出CodeCureAgent,利用大语言模型代理自动分析、分类和修复静态分析警告,通过三步启发式方法生成合理修复方案,有效提升代码质量。
2026-04-13 cs.MA cs.SE
The Influence of Architectural Styles on Security, Using the Example of a Certification Authority
通常,安全性是在系统实施的高级阶段考虑的,而不是将其集成到系统设计中。这会导致系统的安全性降低,因为安全机制只是作为事后的想法应用,因此无法与设计的其他部分很好地集成。此外,关于现有系统中发现的漏洞的一些统计数据表明,系统的大多数漏洞不是由加密原语中的错误引起的,而是由实现的其他部分引起的。因此,在设计过程的早期集成安全问题似乎是一种很有前途的方法,可以提高最终系统的安全性。这项工作评估如何选择的建筑风格影响所产生的系统的安全性。评估是在现有的认证机构(CA)的例子。收集系统的需求,根据不同的建筑风格起草多个设计,并使用风险评估方法进行评估。然后将评估的设计进行比较,以确定是否存在显著差异。
2014-08-12 cs.CR cs.SE
Code-Augur: Agentic Vulnerability Detection via Specification Inference
National University of Singapore(新加坡国立大学)
提出安全规约优先范式,通过显式化智能体假设并运行时反证,结合引导式模糊测试提升漏洞检测能力,在真实项目中比现有智能体检测更多漏洞。
2026-06-18 cs.AI cs.CR cs.SE
An Extensive Comparison of Static Application Security Testing Tools
本研究通过150万次测试执行,对静态应用安全测试工具进行全面评估,发现其精确率高但召回率低,建议改进重点应放在提升召回率和扩大漏洞检测类型上。
2024-03-14 cs.CR cs.CY cs.SE
How Effective Are Neural Networks for Fixing Security Vulnerabilities
Purdue University(普渡大学);University of Waterloo(滑铁卢大学);York University(约克大学);University of Alberta(阿尔伯塔大学);J.P. Morgan AI Research(摩根大通AI研究院)
本文首次系统比较了LLMs与基于深度学习的APR模型在Java漏洞修复上的能力,提出新基准VJBench及变换版本,并发现现有方法修复率低、Codex表现相对最好,呼吁通过更大训练数据、微调和代码简化变换来提升自动修复效果。
2024-04-02 cs.AI cs.CR cs.SE
Quantum-Safe Code Auditing: LLM-Assisted Static Analysis and Quantum-Aware Risk Scoring for Post-Quantum Cryptography Migration
本文提出量子安全代码审计工具,结合正则表达式检测量子脆弱算法、LLM辅助上下文丰富及VQE模型风险评分,评估五个开源库发现5775项问题,实现高精度和召回率。
2026-04-01 cs.CR cs.SE quant-ph