Advanced White-Box Heuristics for Search-Based Fuzzing of REST APIs
本文针对REST API自动化测试中黑盒模糊测试受规范不足模式限制的问题,提出一系列新颖的白盒启发式方法,处理API模式与SQL数据库中规范不足的约束,并作为EvoMaster扩展实现,实证表明在部分API上取得显著改善。
2023-09-15 cs.SE
White-Box Performance-Influence Models: A Profiling and Learning Approach
许多现代软件系统是高度可配置的,允许用户调整它们的性能等。当前的性能建模方法旨在通过以黑盒方式构建性能模型来找到性能最优的配置。虽然这些模型提供了准确的估计,但它们无法将观察到的性能行为的原因精确地定位到特定的代码区域。这不仅妨碍了对系统的理解,而且使跟踪配置选项对各个方法的影响变得复杂。我们提出了一个白盒方法,模型配置相关的性能行为在方法级别。这使我们能够预测配置决策对单个方法的影响,支持系统理解和性能调试。该方法包括两个步骤:首先,我们使用粗粒度的分析器,并学习所有方法的性能影响模型,可能会识别出一些对配置和性能高度敏感的方法,从而导致预测不准确。其次,我们使用细粒度的分析器重新测量这些方法,并以更高的成本学习更准确的模型。通过9个真实的Java软件系统,我们证明了我们的方法可以有效地识别配置相关的方法,并学习准确的性能影响模型。
2021-02-12 cs.SE
Effective grey-box testing with partial FSM models
对于部分的、不确定的、有限状态机,提出了一种新的一致性关系,称为强约简。它补充了其他现有的一致性关系的意义上说,新的关系是非常适合基于模型的测试系统的输入启用或禁用,这取决于实际的系统状态。这种系统的示例是图形用户界面和具有可以以机械方式启用或禁用的界面的系统。我们提出了一个新的测试生成算法产生完整的测试套件强约简。套件执行根据灰盒测试范例:它是假设,状态相关的启用输入集可以在测试执行过程中识别,而实现状态保持隐藏,在黑盒测试。它示出,这种灰盒信息被利用的生成算法在这样一种方式,所得到的最佳情况下的测试套件的大小仅是线性的状态空间大小的参考模型。此外,例子表明,这可能会导致显着减少测试套件的大小相比,真正的黑盒测试强减少。
2021-06-27 cs.SE
Fault Injection in OpenAPI Specifications for Evaluating Black-Box Testing Effectiveness
University of Helsinki(赫尔辛基大学)
研究针对OpenAPI规范常存在的问题,引入故障分类法,在不同严重级别注入故障,用三种测试工具在两个微服务基准上评估,通过多种指标衡量故障影响,揭示规范故障对黑盒测试有效性的作用及相关评估的不足。
2026-07-15 cs.SE
When and How Context Rot Appears in Coding Agents: A White-Box Study of Agent Skills in Code Auditing
CertiK
研究长上下文下代码审计中代理技能失效问题,通过改变上下文分类故障位置,对比不同条件下Codex等运行情况,发现长上下文影响大,不同任务表现有别,外部检查表效果好,编码代理支架有帮助,给出故障分类和实证案例。
2026-07-21 cs.SE
White-box Fuzzing RPC-based APIs with EvoMaster: An Industrial Case Study
远程过程调用(RPC)是一种通信协议,用于支持网络上服务之间的客户端-服务器交互。RPC广泛应用于构建大规模分布式系统,如微服务。现代RPC框架包括Thrift、gRPC、SOFARPC和Dubbo等。由于分布式系统的复杂性和系统可能采用的各种RPC框架,测试这样的系统非常具有挑战性。据我们所知,目前还没有任何工具或解决方案可以对现代基于RPC的服务进行自动化测试。为了填补这一空白,在本文中,我们提出了文献中的第一种方法,以及一个开源工具,用于通过搜索对现代基于RPC的API进行白盒模糊。为了评估我们的新方法,我们对我们的工业合作伙伴选择的两种人工和四种工业API进行了实证研究。该工具已被集成到一个实际的工业流水线,并可以应用于实际的工业开发过程中的模糊基于RPC的API。为了进一步证明其在工业环境中的有效性和应用,我们还报告了使用我们的工具对我们的工业合作伙伴在其测试过程中自主进行的另外50种工业API进行模糊处理的结果。结果表明,我们的新方法能够为基于RPC的工业API(即,两个人工和54个工业)。我们还比较了一个简单的灰盒技术和现有的手动编写的测试。我们的白盒解决方案在代码覆盖率方面实现了显著的改进。在故障检测方面,通过与我们的工业合作伙伴仔细审查我们在选定的四种工业API中采用新方法生成的测试,共识别出41个实际故障,现已修复。另有8,377个检测到的故障正在调查中。
2023-02-03 cs.SE
Secure and trusted white-box verification
验证是检查产品是否已按照其规定的规格实施的过程。我们研究的情况下,设计师(开发人员),需要验证其设计的第三方(验证),通过公开提供有限的信息量的设计,即不同的设计组件之间的互连图,但不是组件本身或组件之间传递的中间值。我们正式这个概念的有限信息使用表格表达式的描述方法的规格和设计。将验证作为一个类似于测试的过程,我们开发的协议,允许验证的设计上的一组输入生成的验证者,使用任何测试用例生成算法,可以利用这个额外的可用信息(部分白盒测试),而不会损害开发人员的秘密信息。我们的协议适用于可信和不可信的开发人员,并允许任何第三方随时检查验证过程本身的正确性。
2016-05-12 cs.CR cs.SE
Equivalence, Identity, and Unitarity Checking in Black-Box Testing of Quantum Programs
本文提出三种新算法,解决量子程序黑盒测试中的等价性、同一性和幺正性检查问题,并优化参数选择,实验验证其有效性。
2024-05-24 cs.SE quant-ph
WhiteFox: White-Box Compiler Fuzzing Empowered by Large Language Models
University of Illinois at Urbana-Champaign(伊利诺伊大学厄巴纳-香槟分校);Huazhong University of Science and Technology(华中科技大学)
WhiteFox 是首个利用大语言模型结合编译器源代码信息的白盒模糊测试器,通过多智能体框架分析优化源码并生成针对性测试,在三大深度学习编译器中触发深层优化的能力最高超出最先进方法 8 倍,并发现 101 个缺陷。
2024-09-04 cs.LG cs.PL cs.SE
Fine-grained Code Coverage Measurement in Automated Black-box Android Testing
今天,有数百万的第三方Android应用程序。这些应用程序中有一些是错误的,甚至是恶意的。为了识别这些应用程序,包括Google在内的Android社区正在开发用于自动化黑盒测试和动态分析的新框架。代码覆盖率是评估这些框架有效性的最常见指标之一。此外,代码覆盖率被用作指导进化和模糊测试技术的适应度函数。然而,在黑盒Android应用程序测试中,没有可靠的工具来测量细粒度的代码覆盖率。我们提出了Android代码覆盖工具,简称ACVTool,它可以检测Android应用程序,并在类,方法和指令粒度的黑盒设置中测量代码覆盖率。在我们的实验中,ACVTool已经成功检测了96.9%的应用程序。它引入了一个可以忽略不计的插装时间开销,并且它的运行时开销对于自动化测试工具来说是可以接受的。我们在一个大规模的实验与Sapienz,一个国家的最先进的测试工具,细粒度的预防级别的代码覆盖率ACVTool提供的帮助,发现了更大的故障比粗粒度的代码覆盖率指标。
2018-12-27 cs.CR cs.SE
Model-checking Driven Black-box Testing Algorithms for Systems with Unspecified Components
基于组件的软件开发对系统验证提出了严峻的挑战,因为外部获得的组件可能是系统故障的新来源。这个问题不能完全解决,无论是模型检验或传统的软件测试技术单独由于以下几个原因:1)外部获得的组件通常是未指定/部分指定; 2)它通常是很难建立一个充分的标准来测试一个组件; 3)组件可以用来动态升级系统。本文介绍了一种新的方法(称为{ \em模型检查驱动的黑盒测试}),它将模型检验与传统的黑盒软件测试相结合,以一种完整、可靠和自动的方式来解决这个问题。其思想是,相对于一些要求(表示在CTL或LTL)的系统,使用模型检验技术,以获得一个条件(表示在通信图)为一个未指定的组件,使系统满足的要求,如果该条件是由组件满足,并可以通过测试组件的测试用例生成的条件上的飞行。在本文中,我们提出模型检验驱动的黑盒测试算法来处理CTL和LTL的要求。我们还通过一些例子来说明这个想法。
2004-04-19 cs.LO cs.SE
Investigating White-Box Attacks for On-Device Models
Monash University(莫纳什大学);Beihang University(北京航空航天大学);Huawei Software Engineering Application Technology Lab(华为软件工程应用技术实验室)
针对端侧 TFLite 模型缺乏梯度支持、难以实施白盒攻击的问题,提出 REOM 框架将其逆向为可调试模型,并在 244 个模型上验证其攻击成功率更高、扰动小百倍。
2024-03-01 cs.AI cs.CR cs.SE
A Black-box Testing Framework for Oracle Quantum Programs
Institute of High Energy Physics, Chinese Academy of Science(中国科学院高能物理研究所);Kyushu University(九州大学)
本文提出一个黑盒测试框架,用于测试通用量子 oracle 程序,通过定义程序并建立理论基础,开发原型工具并进行实验验证,以提高量子软件的可靠性。
2026-03-17 cs.SE quant-ph
Automated Requirements-Based Testing of Black-Box Reactive Systems
我们提出了一种新的方法来一致性测试的黑盒反应式系统。我们认为系统规范的线性时序逻辑公式,以生成测试的输入/输出对序列:输入提取的Buchi自动机对应的规格,并通过馈送输入到系统的输出。通过将输入/输出序列与自动机跟踪进行比较来检测是否违反规范,从而检查是否符合规范。我们认为提取测试和停止生成的几个标准,我们比较实验使用的覆盖率和错误检测指标。结果表明,该方法可以生成具有良好的系统覆盖率和错误检测能力的测试集。
2020-05-14 cs.LO cs.SE
AI-NativeBench: An Open-Source White-Box Agentic Benchmark Suite for AI-Native Systems
Sun Yat-sen University(中山大学);The Chinese University of HongKong(香港中文大学)
AI-NativeBench 通过白盒代理基准测试揭示 AI-Native 系统中的关键工程现实,指导可靠系统构建。
2026-01-14 cs.DC cs.PF cs.SE