中文

APIRL:用于REST API模糊测试的深度强化学习

软件工程 2024-12-23 v1 人工智能 网络与互联网体系结构

摘要

REST API已成为Web服务的关键组件。然而,它们常常包含逻辑缺陷,导致服务器端错误或安全漏洞。HTTP请求用作测试用例,以发现并缓解此类问题。现有修改请求的方法,包括使用深度学习的方法,存在性能和精度有限的问题,依赖无向搜索或有限地使用上下文信息。在本文中,我们提出了APIRL,一个用于测试REST API的全自动深度强化学习工具。我们方法的关键新颖之处在于使用预训练于JSON结构数据的转换器模块提供的反馈,这类似于API响应中使用的反馈。这使APIRL能够学习与测试结果相关的细微差别,并泛化到未知的API端点。我们展示APIRL在发现实际世界REST API中的错误数量显著超过最先进的方法,同时最小化所需的测试用例数量。我们还研究了奖励函数以及其他关键设计选择如何影响学习到的策略进行了深入的消化研究。

关键词

引用

@article{arxiv.2412.15991,
  title  = {APIRL: Deep Reinforcement Learning for REST API Fuzzing},
  author = {Myles Foley and Sergio Maffeis},
  journal= {arXiv preprint arXiv:2412.15991},
  year   = {2024}
}

备注

Thirty-ninth Conference on Artificial Intelligence (AAAI 2025)