Same Coverage, Less Bloat: Accelerating Binary-only Fuzzing with Coverage-preserving Coverage-guided Tracing
覆盖率引导的模糊测试的积极性,高容量的测试已经帮助揭示了数以万计的软件安全缺陷。虽然执行数十亿个测试用例要求快速的代码覆盖跟踪,但仅二进制目标的性质导致跟踪性能降低。二进制模糊性能的最新进展是覆盖引导跟踪(CGT),它通过将覆盖跟踪的费用限制为仅在保证新覆盖时才进行,从而带来吞吐量的数量级增益。不幸的是,CGT只适合基本的块覆盖粒度--然而大多数模糊器需要更细粒度的覆盖度量:边缘覆盖和命中计数。正是这种限制,几乎所有的今天的国家的最先进的模糊实现CGT的性能优势。本文解决了适应CGT模糊的最普遍的覆盖指标的挑战。我们引入并实现了一套增强功能,扩展CGT的自省模糊的最常见的代码覆盖率指标,同时保持其数量级的速度比传统的始终覆盖跟踪。我们评估他们的权衡方面的模糊性能和有效性在12个不同的现实世界的二进制文件(8个开源和4个闭源)。平均而言,我们的覆盖率保持CGT达到了与目前仅块覆盖率CGT UnTracer几乎相同的速度;并且比领先的二进制和源代码级覆盖率跟踪器QEMU,Dyninst,RetroWrite和AFL-Clang高出2- 24倍,在更短的时间内发现更多的错误。
2022-09-07 cs.CR cs.SE
MulCovFuzz: A Multi-Component Coverage-Guided Greybox Fuzzer for 5G Protocol Testing
Swinburne University of Technology(斯威本科技大学);CSIRO’s Data61(澳大利亚联邦科学与工业研究组织数据61);CSIRO Data61(澳大利亚联邦科学与工业研究组织数据61)
MulCovFuzz通过多组件覆盖引导机制提升5G协议测试效率,发现多个零日漏洞。
2026-02-25 cs.CR
Stateful protocol fuzzing with statemap-based reverse state selection
针对现有有状态覆盖灰盒模糊测试未关联程序覆盖与协议状态的问题,提出基于状态映射的反向状态选择方法,开发SMGFuzz工具,在边覆盖、崩溃发现和执行速度上均优于AFLNet。
2024-08-13 cs.CR
Intelligent Graybox Fuzzing via ATPG-Guided Seed Generation and Submodule Analysis
George Mason University(乔治梅森大学);University of Florida(佛罗里达大学)
PROFUZZ通过结合ATPG的结构分析能力,提升灰盒模糊测试的效率和扩展性,有效解决传统方法在大规模电路中的局限性。
2026-01-26 cs.CR
Batch Me If You Can: Coverage-guided RPKI Fuzzing at Scale
Goethe-Universität Frankfurt(法兰克福歌德大学);ATHENE National Research Center for Applied Cybersecurity(ATHENE国家应用网络安全研究中心)
针对RPKI软件现有模糊测试无法处理多对象加密仓库的局限性,提出基于连续采样和函数侧信道的覆盖归因技术,结合非顺序模糊测试与ASN.1变异引擎,实现66倍吞吐量提升并发现21个新漏洞。
2026-05-26 cs.CR
The Progress, Challenges, and Perspectives of Directed Greybox Fuzzing
本文综述了定向灰盒模糊测试(DGF)的进展、挑战与前景,基于42个相关模糊测试工具,从位置定向和行为定向两个维度深入分析了DGF的实证研究,并揭示了当前研究的差距与未来机会。
2023-11-21 cs.CR
Coverage-based Scene Fuzzing for Virtual Autonomous Driving Testing
Baidu Security(百度安全)
基于仿真的虚拟测试已成为确保自动驾驶系统安全性的重要步骤。测试人员需要手工制作虚拟驾驶场景,并配置各种环境设置,如周围的交通,天气条件等。由于配置的可能性巨大,人类的努力受到检测工业级自动驾驶系统缺陷的效率低下的影响。本文提出了一种覆盖率驱动的模糊技术,自动生成不同的配置参数,形成新的驾驶场景。实验结果表明,我们的模糊化方法可以显着降低成本,在派生新的风险场景从初始设置设计的测试人员。我们预计自动模糊将成为自动驾驶系统虚拟测试的常见做法。
2021-06-02 cs.AI cs.CR
Logic Solver Guided Directed Fuzzing for Hardware Designs
本文提出 TargetFuzz,利用基于 SAT 的逻辑求解在原生硬件抽象层引导定向模糊测试,无需等效软件模型即可精确覆盖 RTL 目标位点,并显著提升扩展性与覆盖率。
2025-09-30 cs.CR
Fuzz'EMup: Leveraging EM Side-Channel Emanation to Guide Black-Box Embedded Firmware Fuzzing
Clemson University(克莱姆森大学);Texas Tech University(德克萨斯理工大学);University of Rochester(罗切斯特大学);Northeastern University(东北大学)
针对许多设备无法获取覆盖信息只能进行低效黑盒固件模糊测试的问题,提出利用电磁侧信道发射指导模糊测试的方法,通过频带选择与动态时间规整相结合解决挑战,在四个固件目标上评估,证明该方法能提高代码覆盖率。
2026-07-21 cs.CR
A Comparative Quality Metric for Untargeted Fuzzing with Logic State Coverage
针对现有模糊测试质量度量标准不可靠的问题,提出逻辑状态覆盖作为代理度量,通过统计执行中满足的分支集合来更细粒度地计算观察到的有趣行为,并在AFL++和XMLLint上进行了初步评估验证其可靠性。
2024-09-23 cs.CR cs.SE
Nyx-Net: Network Fuzzing with Incremental Snapshots
覆盖率引导的模糊测试(“fuzzing”)已经成为主流,我们已经观察到在这个研究领域的许多进展。然而,它仍然是具有挑战性的,有效地测试网络服务与现有的覆盖引导模糊方法。在本文中,我们介绍了Nyx-Net的设计和实现,一种新的基于快照的模糊方法,可以成功地模糊广泛的目标,跨越服务器,客户端,游戏,甚至Firefox的进程间通信(IPC)接口。与最先进的方法相比,Nyx-Net将测试吞吐量提高了300倍,覆盖率提高了70%。此外,Nyx-Net能够在ProFuzzBench的两个目标中找到以前没有其他模糊器发现的崩溃。当使用Nyx-Net玩超级马里奥游戏时,Nyx-Net显示与现有工作相比加速了10- 30倍。在某些情况下,Nyx-Net甚至可以玩得“比光还快”:解决关卡所需的挂钟时间比完美地玩一次关卡所需的时间要少。Nyx-Net能够在服务器(如Lighttpd)、客户端(如MySQL客户端)甚至Firefox的IPC机制中找到以前未知的错误-证明了所提出方法的强大性和多功能性。最后,我们的原型实现获得了20.000美元的bug奖励,因为它在Firefox中启用了模糊化,并解决了Mozilla的一个长期问题。
2021-11-04 cs.CR
SysFuSS: System-Level Firmware Fuzzing with Selective Symbolic Execution
University of Florida(佛罗里达大学)
SysFuSS通过结合系统级模糊测试与选择性符号执行,高效检测固件漏洞,显著提升分支覆盖和漏洞发现效率。
2026-02-02 cs.CR
ES-Fuzz: Adaptive Modeling of MMIO Data Chunks for Firmware Fuzzing
University of Michigan(密歇根大学)
提出 ES-Fuzz,通过自适应建模 MMIO 数据块克服固件模糊测试中的覆盖瓶颈,在 Fuzzware 上实现最高 68% 的覆盖率提升并发现额外漏洞。
2026-07-02 cs.CR
FuzzRDUCC: Fuzzing with Reconstructed Def-Use Chain Coverage
针对纯二进制模糊测试因缺乏数据流洞察导致覆盖不足、难发现漏洞的问题,提出采用符号执行重建二进制def-use链的FuzzRDUCC框架,结合启发式算法选链控开销,在binutils基准上能发现现有先进工具未检出的独特崩溃,为漏洞检测提供新可行方案。
2025-09-05 cs.CR cs.SE
PowerFuzz: Power-Based Black-Box Firmware Fuzzing
University of Florida(佛罗里达大学)
提出PowerFuzz,一种利用功耗侧信道测量替代二进制插桩的黑盒模糊测试框架,通过滑动窗口和全迹相关方法识别分支并构建控制流图,在三个嵌入式平台上达到与灰盒模糊器相当的覆盖率(差距≤13.5%),并显著优于现有黑盒模糊器(提升达22%)。
2026-06-24 cs.CR
GreyConE: Greybox fuzzing+Concolic execution guided test generation for high level design
由于复杂的分支条件、循环结构和硬件设计固有的并发性,对高级设计进行详尽的测试是一个艰巨的挑战。测试工程师的目标是生成满足各种代码覆盖率指标的高质量测试用例,以确保设计中出现的错误最少。在测试SystemC设计之前的工作是时间效率低下的,这阻碍了在较短的时间跨度内实现所需的覆盖。我们交错灰盒模糊和concolic执行系统的方式,并生成质量测试用例加速测试覆盖率指标。我们的结果优于国家的最先进的方法在测试用例的数量和分支覆盖的一些基准,和运行时间为他们中的大多数。
2022-07-13 cs.CR cs.SE
Sydr-Fuzz: Continuous Hybrid Fuzzing and Dynamic Analysis for Security Development Lifecycle
为了保证软件的安全性,满足安全开发生命周期(SDL)的要求,目前对用于持续测试的自动化动态分析框架的需求很高。尖端混合模糊技术的安全漏洞搜索效率优于广泛使用的覆盖引导模糊。我们提出了一个增强的动态分析管道,以利用生产力的自动错误检测的基础上混合模糊。我们在连续模糊工具集Sydr-Fuzz中实现了所提出的管道,该工具集由混合模糊编排器提供支持,将我们的DSE工具Sydr与libFuzzer和AFL++集成在一起。Sydr-Fuzz还集成了安全谓词检查器、崩溃分类工具Casr以及用于语料库最小化和覆盖率收集的实用程序。我们的混合模糊器对替代国家的最先进的解决方案的基准测试表明,其优越性覆盖引导模糊器,同时保持在同一水平上与先进的混合模糊器。此外,我们通过在OSS-Sydr-Fuzz项目中发现85个新的真实世界软件缺陷来验证我们方法的相关性。最后,我们向社区开放Casr源代码,以方便检查现有的崩溃。
2023-03-23 cs.CR cs.SE
CovRL: Fuzzing JavaScript Engines with Coverage-Guided Reinforcement Learning for LLM-based Mutation
Yonsei University(延世大学);Suresofttech Inc.(Suresofttech公司)
本文提出CovRL技术,通过TF-IDF构建加权覆盖率图并结合强化学习将覆盖率反馈直接集成到LLM变异器中,显著提升了JavaScript引擎模糊测试的代码覆盖率与漏洞发现能力。
2024-02-19 cs.CL cs.CR cs.LG
Better Pay Attention Whilst Fuzzing
Fuzzing是漏洞检测的主流方法之一。然而,即使是最先进的模糊方法在一段时间后也变得无效,即,由于现有方法不能有效地将模糊注意力集中在覆盖难以触发的程序路径上,因此覆盖率几乎没有提高。换句话说,他们不能生成可以打破瓶颈的输入,因为在捕获测试输入和程序覆盖之间的复杂关系方面存在根本性的困难。特别地,现有的模糊器受到以下主要限制:1)缺乏对程序的总体分析以识别最“有回报”的种子,以及2)缺乏可以连续地选择和变异种子的更相关的“字节”的有效变异策略。在这项工作中,我们提出了一种称为ATTuzz的方法来系统地解决这两个问题。首先,我们提出了一个轻量级的动态分析技术,估计“奖励”覆盖每个基本块,并选择最有价值的种子。其次,我们根据神经网络模型对所选种子进行变异,该模型预测给定种子的某些字节上的某些变异是否会覆盖某个“奖励”块。该模型是一个配备了注意力机制的深度学习模型,该机制在模糊化的同时定期学习和更新。我们的评估表明,ATTuzz在实现更高的边缘覆盖率和发现新错误方面,在13个流行的现实世界程序上显着优于5个最先进的灰盒模糊器。特别是,ATTuzz在24小时运行中实现了2倍于AFL的边缘覆盖率和4倍于AFL的bug检测。此外,ATTuzz从长远来看持续改善边缘覆盖,即,在5天内实现比AFL多50%的覆盖率。
2021-12-14 cs.CR cs.SE
Facilitating Parallel Fuzzing with mutually-exclusive Task Distribution
模糊测试,或称模糊测试,已经成为软件工业中错误发现的事实标准技术之一。一般来说,模糊处理向目标程序提供各种输入,以发现未处理的异常和崩溃。在时间预算有限的业务部门,软件供应商通常并行启动许多模糊实例,作为增加代码覆盖率的常用方法。然而,大多数流行的模糊工具在并行模式下都是单纯地并发运行多个实例,而没有详细的工作负载分配。这可能导致不同的实例探索重叠的代码区域,最终减少并发的好处。在本文中,我们提出了一个通用的模型来描述并行模糊。该模型将互斥但权重相似的任务分配给不同的实例,促进了并发性和实例间的公平性。根据这个模型,我们开发了一个解决方案,称为AFL-EDGE,以改善AFL的并行模式,考虑一轮突变到一个唯一的种子作为一个任务,并采用边缘覆盖来定义一个种子的唯一性。我们已经在AFL之上实现了AFL-EDGE,并在9个广泛使用的基准程序上评估了AFL的实现情况。这表明AFL-EDGE可以提高AFL的边缘覆盖率。在24小时的测试中,根据实例数量的不同,AFL-EDGE给AFL带来的边缘覆盖率提升幅度在9.49%到10.20%之间。作为一个附带的好处,我们发现了14个以前未知的bug。
2021-09-17 cs.CR cs.SE
Optimizing seed inputs in fuzzing with machine learning
提出基于机器学习的框架,利用神经网络发现PDF文件与目标程序执行的相关性以生成新种子,显著提升了代码覆盖率与崩溃检测率。
2019-02-07 cs.CR
LLAMA: Multi-Feedback Smart Contract Fuzzing Framework with LLM-Guided Seed Generation
本文提出基于LLM的多反馈智能合约模糊测试框架LLAMA,结合分层提示生成种子、多反馈优化机制和进化模糊引擎,显著提升了代码覆盖率与漏洞检测能力。
2025-07-16 cs.CR cs.SE
Evolutionary Fuzzing of Android OS Vendor System Services
Android设备由100多家制造商合作伙伴以多种形式提供,这些合作伙伴通过新的系统服务扩展了Android“香草”操作系统,并修改了现有的系统服务。这些专有扩展会使Android设备面临可靠性和安全性问题。在本文中,我们提出了一个基于进化算法的覆盖率引导模糊平台(Chizpurfle)来测试专有的Android系统服务。该平台的一个关键特性是能够利用动态二进制重写技术,在实际的未修改的Android设备上分析覆盖率。我们在三款高端商用Android智能手机上应用了该解决方案。结果证实,进化模糊能够比盲目模糊更有效地测试Android OS系统服务。此外,我们评估了不同选择的适应度函数和选择算法的影响。
2019-06-03 cs.CR cs.SE
Coverage-Guided Multi-Agent Harness Generation for Java Library Fuzzing
University of Lübeck(吕贝克大学)
本文提出一种多智能体架构,通过 LLM 功能智能体自动化生成 Java 库的模糊 harnesses,提升模糊测试效率并发现漏洞。
2026-03-09 cs.CR cs.SE
PTrix: Efficient Hardware-Assisted Fuzzing for COTS Binary
尽管它在发现软件缺陷方面很有效,但最好的灰盒模糊器之一美国模糊Lop(AFL)在模糊测试源不可用程序时效率低下。AFL的二进制模糊模式,QEMU-AFL,通常比其源可用模糊模式慢2- 5倍。减速主要是由沉重的动态仪器造成的。最近的模糊技术使用英特尔处理器跟踪(PT),一个轻量级的跟踪功能,支持最新的英特尔CPU,以消除动态仪器的需要。然而,我们发现这些基于PT的模糊技术在模糊真实世界的程序时甚至比QEMU-AFL更慢,使得它们不如QEMU-AFL有效。这种低性能是由于从高度压缩的PT跟踪中提取代码覆盖率信息的速度很慢造成的。在这项工作中,我们提出了PTrix的设计和实现,充分释放PT模糊通过三种新技术的好处。首先,PTrix提出了一种PT跟踪和目标程序执行高度并行的方案。第二,直接将解码后的PT轨迹作为模糊化的反馈,避免了代价高昂的代码覆盖信息重构。第三,PTrix以比基于边缘的代码覆盖更强的反馈来维护新的反馈,这有助于达到AFL可能没有的新代码空间和缺陷。我们评估PTrix通过比较其性能与国家的最先进的模糊。我们的研究结果表明,在相同的时间内,PTrix实现了显着更高的模糊化速度,并达到其他模糊错过的代码区域。此外,PTrix在一组以前模糊化的二进制文件中确定了35个新的漏洞,显示了其补充现有模糊器的能力。
2019-05-25 cs.CR cs.SE
Prompt Fuzzing for Fuzz Driver Generation
提出PromptFuzz,一种覆盖率引导的提示模糊测试工具,通过迭代生成模糊驱动程序来探索未发现的库代码,在14个真实库上相比OSS-Fuzz和Hopper分别提升1.61倍和1.63倍分支覆盖率,并检测到33个真实新错误。
2024-05-29 cs.CR cs.SE
From Coverage to Causes: Data-Centric Fuzzing for JavaScript Engines
Department of Computer Science, North Carolina State University(北卡罗来纳州立大学计算机科学系)
本文提出基于大语言模型的数据导向模糊测试方法,通过学习历史漏洞自动识别高风险输入特征,提升漏洞发现效率。
2025-12-19 cs.CR cs.LG cs.SE
Superion: Grammar-Aware Greybox Fuzzing
近年来,基于覆盖率的灰盒模糊技术已被证明是在实践中发现安全漏洞的最有效的技术之一。特别是美国的Fuzzy Lop(简称AFL)算法,被认为在相对简单的测试输入的模糊化方面取得了巨大的成功。然而,当遇到XML和JavaScript等结构化测试输入时,AFL中的语法盲裁剪和变异策略阻碍了AFL的有效性和效率。为此,我们提出了一个基于覆盖率的模糊处理结构化输入的灰盒模糊方法。鉴于语法(这往往是公开的)的测试输入,我们引入了一个语法感知修剪策略修剪测试输入在树级使用的抽象语法树(AST)解析的测试输入。此外,我们引入了两种语法感知的突变策略(即,增强的基于字典的突变和基于树的突变)。具体来说,基于树的变异通过使用解析的测试输入的AST替换子树来工作。该方法具有语法感知能力,可以将模糊推理的探索扩展到广度和深度。我们实现了我们的方法作为一个扩展AFL,命名为Escapon;和评估Escapon在现实生活中的大型程序(XML引擎libplist和三个JavaScript引擎WebKit,Jerryscript和ChakraCore)的有效性。我们的研究结果表明,ESPON可以提高代码覆盖率(即,行和函数覆盖率分别为16.7%和8.8%)和缺陷发现能力(即,31个新漏洞,其中我们发现了21个新漏洞,分配了16个CVE,并通过AFL和jsfunfuzz获得了3.2K美元的漏洞奖励。我们还证明了我们…
2019-01-23 cs.CR cs.SE
Point Intervention: Improving ACVP Test Vector Generation Through Human Assisted Fuzzing
本研究提出一种人工辅助的混合模糊测试系统,可生成覆盖全面的ACVP格式加密测试向量,支持安全便捷地构建测试模块,已用于改进NSS库测试、检测漏洞并推动ACVP格式优化。
2024-07-11 cs.CR
Fuzzing Based on Function Importance by Interprocedural Control Flow Graph
基于覆盖的灰盒模糊器(CGF),如AFL,由于其易用性和缺陷发现能力,在漏洞检测方面取得了巨大的成功。由于某些代码片段(如内存分配)比其他代码片段更容易受到攻击,因此已经提出了各种改进技术,通过从被测程序或其执行中收集额外的信息来探索更容易受到攻击的区域。然而,这些改进仅考虑有限类型的信息源,并且忽略了要被模糊化的种子输入的优先级可能受其覆盖的所有代码影响的事实。基于上述观察,我们提出了一种基于函数重要性的模糊化方法。首先,设计了一种称为属性化过程间控制流图(AICFG)的数据结构来组合代码片段的不同特征。其次,基于改进的PageRank算法计算AICFG中每个节点的重要性,该算法还对连接节点之间的影响进行了建模。在模糊过程中,节点的重要性定期更新的传播算法。然后,种子输入的种子选择和能量调度由其执行轨迹的重要性决定。我们实现了这种方法的AFL顶部的一个工具,名为FunAFL,并进行了评估对AFL和它的两个改进的14个现实世界的计划。FunAFL的分支覆盖率平均比其他人高17%,发现了13个bug,其中3个在72小时后被CVE确认。
2021-02-27 cs.CR
FuzzBox: Blending Fuzzing into Emulation for Binary-Only Embedded Targets
Università degli Studi di Napoli Federico II(那不勒斯费德里科二世大学)
FuzzBox通过整合模拟与模糊测试,在虚拟化环境中动态注入模糊输入,实现故障检测和覆盖率分析,无需源代码重新编译和硬件依赖,适用于工业系统和物联网固件。
2025-09-06 cs.CR cs.SE
Dissecting Software Graphs: Structural Insights for Driver-Guided Fuzzing
Utah State University(杨百瑞州立大学);University of Michigan(密歇根大学);Zhejiang Gongshang University(浙江工商大学);University at Buffalo, SUNY(纽约州立大学布法罗分校)
该研究针对多驱动程序模糊测试下的软件结构开展实证研究,提出结构抽象方法,经27个OSS-Fuzz项目验证,多驱动程序模糊测试在相同预算下性能优于单驱动程序,可提升覆盖率并发现更多独特漏洞。
2026-08-14 cs.CR cs.SE
SAEFUZZ: Smart Contract Vulnerability Detection through Statically Guided Evolutionary Fuzzing
Hainan University(海南大学)
SAEFUZZ是一种基于静态引导进化模糊测试的智能合约漏洞检测方法,通过构建以太坊虚拟机控制流图等技术,在带标签合约检测中获98.50%准确率等指标,各关键组件均对性能有贡献。
2026-08-18 cs.CR
SimFuzz: Similarity-guided Block-level Mutation for RISC-V Processor Fuzzing
University of Chinese Academy of Sciences(中国科学院大学)
SimFuzz通过基于相似性的块级变异技术,有效发现RISC-V处理器中的功能漏洞,提升模糊测试效率和覆盖率。
2026-01-17 cs.AR cs.CR
Large Language Model assisted Hybrid Fuzzing
本文提出一种基于大型语言模型(LLM)的混合模糊测试器 HyLLfuzz,利用 LLM 作为求解器替代传统符号执行来生成修改输入以突破覆盖率障碍,相比 AFL、Intriguer 和 Qsym 展现出更优的覆盖率且执行速度提升 4-19 倍。
2024-12-20 cs.CR cs.SE
State-Aware Fuzzing of JavaScript Engines with LLM-Guided Instrumentation
Hong Kong University of Science and Technology(香港科技大学);VX Research Limited(VX研究有限公司);Singapore Management University(新加坡管理大学)
StateLens利用LLM引导的智能插桩选择,突破JavaScript引擎模糊测试的覆盖率平台期,通过双反馈机制探索深层内部状态,显著优于现有工具并发现68个新漏洞。
2026-09-22 cs.CR
MuFuzz: Sequence-Aware Mutation and Seed Mask Guidance for Blockchain Smart Contract Fuzzing
针对智能合约模糊测试难以生成有效交易序列和关键输入的问题,本文提出 MuFuzz,融合序列感知变异、掩码引导种子变异与动态自适应能量调整,在分支覆盖和漏洞检测上显著优于现有工具。
2023-12-10 cs.CR
SQLaser: Detecting DBMS Logic Bugs with Clause-Guided Fuzzing
SQLaser提出以SQL子句组合和易出错函数链为引导的定向模糊测试方法,在四种DBMS上检测逻辑缺陷,并将发现时间降低约60%。
2024-07-05 cs.CR
SyzTrust: State-aware Fuzzing on Trusted OS Designed for IoT Devices
针对物联网可信操作系统闭源、反馈难及有状态工作流复杂的问题,提出 SyzTrust 硬件辅助状态感知模糊测试框架,显著提升覆盖率并发现 70 个漏洞。
2023-09-26 cs.CR
DeFuzz: Deep Learning Guided Directed Fuzzing
Swinburne University Of Technology(斯威本科技大学);CSIRO & DATA61(英联邦科学与工业研究组织(CSIRO)& DATA61)
模糊技术是识别潜在软件漏洞的最有效的技术之一。大多数模糊器旨在提高代码覆盖率,并且缺乏直接性(例如,模糊软件中的指定路径)。本文提出了一种基于深度学习(DL)的定向模糊检测方法DeFuzz,用于软件漏洞检测。DeFuzz包括两个主要方案:(1)我们采用预训练的DL预测模型来识别潜在的脆弱函数和位置(即,易受攻击的地址)。准确地说,我们使用Bidirectional-LSTM(BiLSTM)来识别注意词,并且漏洞与函数中的这些注意词相关联。(2)然后,我们通过生成倾向于到达预测位置的输入,直接采用模糊化来模糊潜在的漏洞。为了评估所提出的DeFuzz技术的有效性和实用性,我们在真实世界的数据集上进行了实验。实验结果表明,我们的DeFuzz可以发现覆盖比AFL更多,更快。此外,DeFuzz在真实世界的应用程序中比AFL多暴露了43个错误。
2020-10-23 cs.CR cs.LG
Hunting CUDA Bugs at Scale with cuFuzz
NVIDIA(英伟达);Stanford University(斯坦福大学)
cuFuzz通过全程序模糊测试解决GPU模糊测试中的虚假阳性、缺乏设备端反馈和工具不兼容问题,发现43个新漏洞,包括非法内存访问和数据竞争。
2026-03-12 cs.CR cs.SE
Homo in Machina: Improving Fuzz Testing Coverage via Compartment Analysis
本文提出 HM-fuzzing 范式及隔间分析,结合全程序支配者与动态分析定位未覆盖程序区域以指导人工投入,在 OSS-Fuzz 七个项目上显著提升 AFL++ 覆盖率。
2022-12-21 cs.CR
LightEMU: Hardware Assisted Fuzzing of Trusted Applications
本文提出LightEMU,一种利用ARM CoreSight的硬件辅助模糊测试框架,通过将可信应用与TEE解耦实现高效反馈驱动测试,并在多个TEE上验证了其快速发现漏洞的能力和10倍加速效果。
2023-11-16 cs.CR
Coverage-Guided Tensor Compiler Fuzzing with Joint IR-Pass Mutation
University of Illinois at Urbana-Champaign(伊利诺伊大学厄巴纳-香槟分校);Tongji University(同济大学);Fudan University(复旦大学)
在过去的十年中,深度学习(DL)系统已被广泛部署在各个领域,以方便我们的日常生活。与此同时,确保DL系统的正确性(例如,由于其固有的不确定性),并且DL系统中的错误可能导致严重的后果,甚至可能威胁人类生命。在文献中,研究人员已经探索了各种技术来测试,分析和验证DL模型,因为它们的质量直接影响相应的系统行为。最近,研究人员还提出了用于测试底层操作符级DL库(如TensorFlow和PyTorch)的新技术,这些库为每个高级DL操作符提供了通用的二进制实现,以便在许多平台上运行各种DL模型。然而,针对新兴张量编译器的可靠性的工作仍然有限,这些编译器旨在直接将高级张量计算图编译为高性能二进制文件,以提高效率,可移植性和可扩展性。本文针对张量编译器测试这一重要问题,提出了一种实用的模糊测试技术Tzer,用于广泛使用的TVM张量编译器。由于高级中间表示(IR)的变异空间有限,Tzer专注于对TVM的低级IR进行变异。更具体地说,Tzer利用覆盖反馈指导的通用和张量编译器特定的变异器进行进化IR变异;此外,Tzer还与IR变异串联执行传递变异,以实现更有效的模糊化。我们的研究结果表明,Tzer在张量编译器测试方面大大优于现有的模糊技术,覆盖率比第二好的技术高75%,测试价值高50%。到目前为止,Tzer已经检测到49个TVM以前未知的bug,其中37个bug得到确认,25个bug得到修复(PR…
2022-02-21 cs.CR cs.LG cs.PL
Rare-Seed Generation for Fuzzing
从一个随机的初始种子开始,模糊器搜索触发错误或漏洞的输入。然而,模糊器往往无法生成输入的程序路径保护的限制性分支条件。在本文中,我们表明,通过首先识别程序中的稀有路径(即,具有不可能被随机输入生成满足的路径约束的程序路径),然后生成触发稀有路径的输入/种子,可以提高模糊工具的覆盖率。特别是,我们提出的技术1)使用定量符号分析来识别稀有路径,以及2)生成可以使用路径引导的concolic执行来探索这些稀有路径的输入。我们将这些输入作为初始种子集提供给三个最先进的模糊器。我们的一组程序(包含很多限制性分支条件)的实验评估表明,模糊实现更好的覆盖率与稀有路径为基础的种子集相比,随机初始种子。
2022-12-18 cs.CR cs.SE
Hybrid Approach to Directed Fuzzing
Ivannikov Institute for System Programming of the Russian Academy of Sciences(俄罗斯科学院伊万尼科夫系统编程研究所);Lomonosov Moscow State University(莫斯科国立大学)
本文提出了一种结合有向模糊测试和符号执行的混合方法,通过新型种子调度算法提升错误检测效率。
2026-01-30 cs.CR
PILOT: Command-line Interface Fuzzing via Path-Guided, Iterative Large Language Model Prompting
The University of Tokyo(东京大学);Johns Hopkins University(约翰斯·霍普金斯大学)
PILOT通过引导路径和迭代式大语言模型提示生成命令行参数和输入文件,提升模糊测试覆盖率并发现51个零日漏洞。
2026-03-13 cs.CR
FuCE: Fuzzing+Concolic Execution guided Trojan Detection in Synthesizable Hardware Designs
高级合成(HLS)是为机器学习、视频处理等应用设计复杂定制架构的下一个新兴趋势。它为硬件工程师提供了更高级别的抽象和自由,以执行硬件软件协同设计。然而,它为攻击者插入硬件木马打开了一个新的门户。与门级特洛伊木马相比,此类特洛伊木马在语义上更有意义,更隐蔽,因此很难使用最先进的门级特洛伊木马检测技术进行检测。虽然最近的工作提出了检测机制,发现这种隐形木马在高层次的综合(HLS)设计,这些技术要么是专门策划现有的木马基准或可能会遇到可扩展性问题的大型设计。在这项工作中,我们利用灰盒模糊与concolic执行相结合的力量来探索设计的更深层次,并发现隐形木马。实验结果表明,我们提出的框架是能够自动检测木马更快的测试用例,同时达到显着的分支覆盖率,没有任何手动预处理分析。
2021-11-01 cs.CR
Path Transitions Tell More:Optimizing Fuzzing Schedules via Runtime Program States
覆盖率引导的灰盒模糊搜索(CGF)是一种最成功和最广泛使用的错误搜索技术。采用两种主要方法来优化CGF:(i)通过推断输入字节和路径约束之间的关系来减少输入的搜索空间;(ii)制定模糊过程(例如,路径转换)并建立概率分布以优化功率调度,即,每个种子生成的输入数量。然而,前者是主观的推断结果,其中可能包括额外的字节的路径约束,从而限制了路径约束的决议,代码覆盖发现,和错误暴露的效率;后者的形式化,集中在功率调度单独的种子,是不注意的调度字节的种子。在本文中,我们提出了一个轻量级的模糊方法,Truzz,以优化现有的覆盖率指导灰盒模糊(CGF)。为了解决上述两个挑战,Truzz识别与验证检查相关的字节(即,检查保护错误处理代码),并保护这些字节不被频繁地改变,使得大多数生成的输入检查程序的功能,而不是被验证检查拒绝。字节式关系确定减轻了当模糊器推断字节约束关系时加载额外字节的问题。此外,Truzz中提出的路径转换可以有效地将种子优先级定为新路径,收获许多新边,并且新路径可能属于具有许多未发现代码行的代码区域。实验结果表明,平均而言,Truzz可以生成16.14%的输入流入函数代码,除了24.75%的新边缘比香草模糊。最后,我们的方法暴露了8个目标程序中的13个错误,其中6个错误还没有被香草模糊器识别出来。
2022-01-12 cs.CR cs.SE
PrescientFuzz: A more effective exploration approach for grey-box fuzzing
PrescientFuzz利用目标程序控制流图语义信息,通过输入语料库调度器优先选择接近未覆盖边的输入进行变异,在Google FuzzBench基准测试中实现了领先的平均代码覆盖率和排名。
2025-01-24 cs.CR cs.SE
Hybrid Fuzzing with LLM-Guided Input Mutation and Semantic Feedback
Independent Researcher(独立研究者)
本文提出一种结合LLM引导变异与语义反馈的混合模糊测试框架,在AFL++上实现,通过语义信号优先探索深层程序行为,在libpng等真实目标上取得更快的漏洞发现速度和更高的语义多样性。
2025-11-06 cs.AI cs.CR
DeepHunter: Hunting Deep Neural Network Defects via Coverage-Guided Fuzzing
Nanyang Technological University(南洋理工大学);Harbin Institute of Technology(哈尔滨工业大学);Carnegie Mellon University(卡内基梅隆大学);University of Illinois at Urbana–Champaign(伊利诺伊大学厄巴纳-香槟分校);Kyushu University(九州大学);NVIDIA AI Technology Center(英伟达人工智能技术中心)
随着过去十年的数据爆炸,基于深度神经网络(DNN)的软件经历了前所未有的飞跃,并正在成为许多新颖工业应用的关键驱动力,包括许多安全关键场景,如自动驾驶。尽管在各种人类智能任务中取得了巨大的成功,但与传统软件类似,DNN也可能表现出由隐藏缺陷引起的不正确行为,从而导致严重的事故和损失。在本文中,我们提出了DeepHunter,一个自动化的模糊测试框架,用于搜索通用DNN的潜在缺陷。DeepHunter执行变形突变以生成新的语义保留的测试,并利用多个可插入的覆盖标准作为反馈,从不同的角度指导测试生成。为了向实际规模的DNN扩展,DeepHunter批量维护多个测试,并根据主动反馈优先选择测试。DeepHunter的有效性在3个流行的数据集(MNIST,CIFAR-10,ImageNet)和7个具有不同复杂性的DNN上进行了广泛的研究,并在6个覆盖标准作为反馈。大规模实验表明,DeepHunter可以(1)通过指导显著提高覆盖率;(2)生成有用的测试来检测错误行为,并促进DNN模型质量评估;(3)在DNN量化过程中准确捕获潜在缺陷,用于平台迁移。
2018-11-16 cs.AI cs.CR cs.LG
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
R1-Fuzz: Specializing Language Models for Textual Fuzzing via Reinforcement Learning
The University of Hong Kong(香港大学)
R1-Fuzz提出首个利用强化学习专门化低成本语言模型进行文本模糊测试的框架,通过覆盖切片问题构建和距离奖励,使7B模型在覆盖率上超越先进模糊器75%并发现29个新漏洞。
2025-09-21 cs.AI cs.CR cs.PL