深度强化模糊测试
本研究旨在提出一种新型的 fuzzing 方法,它从程序当前状态信息入手,利用强化学习优化变异算子,以达到更全面的覆盖率,并使程序监视器与深度神经网络相连接,能够同时利用强化学习以及 fuzzing 的优势来优化测试用例。
Jul, 2018
我们提出了一种新颖的方法,首次将经过训练的测试案例生成器深度学习模型与双重深度 Q 网络(DDQN)相结合,通过代码覆盖信号引导测试案例的创建,提高了基于生成模型的代码覆盖性能。
Jul, 2023
现代计算系统在硬件作为信任根基上依赖较重。然而,不断增加的复杂性导致了跨层攻击可以利用的安全关键弱点。我们提出了一种新颖的基于 ML 的硬件模糊测试工具 ChatFuzz,它利用类似 ChatGPT 的 LLMs 来理解处理器语言,并通过代码覆盖度度量指标引导输入生成,以此解决现有工具在实际时间范围内无法全面覆盖复杂硬件设计的问题。在测试中,与最先进的模糊测试工具相比,ChatFuzz 在仅 52 分钟内达到了 75% 的条件覆盖率,而后者需要 30 个小时的时间窗口才能达到类似的覆盖率。此外,我们的工具在 130 个小时的时间范围内,仅提供有限的 10 个模拟实例 / 许可证情况下即可达到 80% 的覆盖率。在此期间,共进行了 19.9 万个测试用例,其中 6 千个测试用例与处理器的黄金模型产生了差异。我们的分析发现了 10 多个独特的不匹配之处,包括 RocketCore 中的两个新 bug 和与 RISC-V ISA 模拟器的差异。
Apr, 2024
研究开发了基于搜索的深度强化学习测试框架,用于评估深度强化学习代理的性能和安全性,其中包括利用搜索算法进行参考跟踪的安全测试和创建多样化的跟踪以评估代理的总体性能。
May, 2022
本文提出了 DLFuzz, 第一个可引导 DL 系统暴露错误行为的差分模糊测试框架,相比于 DeepXplore 具有更高的神经元覆盖率、更高效的寻找故障输入、更小的干扰等优势。
Aug, 2018
本文提出了一种称为 CovRL(基于覆盖引导强化学习)的新技术,通过将大型语言模型(LLMs)与来自覆盖反馈的强化学习相结合,将覆盖引导直接集成到语言模型中,以改进漏洞检测效果,并在 V8 JavaScript 引擎中发现了 48 个真实世界相关安全漏洞。
Feb, 2024
本研究提出了一种基于 BERT 和强化学习 (Reinforcement Learning) 的 fuzzer 工具 'BertRLFuzzer',旨在查找安全漏洞。BertRLFuzzer 通过使用半监督学习和强化学习两个机器学习概念,可以自动搜索攻击向量的空间,并可以自适应地扩展到各种受害应用和攻击向量。实验结果表明,BERT 模型和 RL-based learning 的结合使 BertRLFuzzer 成为一种有效、自适应、易于使用、自动和可扩展的 fuzzer。
May, 2023
本文提出了一种方法,并使用它来学习应用程序并获得反例,使用 Minimally Adequate Teacher 框架,该方法结合了一致性测试和基于变异的 Fuzzing 方法,并应用于 Rigorous Exampination of Reactive Systems (RERS) 挑战中有限状态机模型的学习中。结果表明,这种方法适合于学习 LTL 的问题,而对于可达问题,还需要其他的学习方法。
Nov, 2016
本研究提出了一种名为 FairFuzz 的模糊测试工具,通过优化输入的变异方式和优先选择罕见程序部分的输入数据,提高了对程序的覆盖率,并在实际测试中表现出比现有工具更好的标准。
Sep, 2017