APIRL: Deep Reinforcement Learning for REST API Fuzzing

Myles Foley, Sergio Maffeis
12/20/2024
cs.SEcs.AIcs.NI

No confident code implementation found for this paper.

Abstract

REST APIs have become key components of web services. However, they often contain logic flaws resulting in server side errors or security vulnerabilities. HTTP requests are used as test cases to find and mitigate such issues. Existing methods to modify requests, including those using deep learning, suffer from limited performance and precision, relying on undirected search or making limited usage of the contextual information. In this paper we propose APIRL, a fully automated deep reinforcement learning tool for testing REST APIs. A key novelty of our approach is the use of feedback from a transformer module pre-trained on JSON-structured data, akin to that used in API responses. This allows APIRL to learn the subtleties relating to test outcomes, and generalise to unseen API endpoints. We show APIRL can find significantly more bugs than the state-of-the-art in real world REST APIs while minimising the number of required test cases. We also study how reward functions, and other key design choices, affect learnt policies in a thorough ablation study.

View on arXivView PDF

Code Implementations

No confident code match yet

We couldn't find an author-owned or strongly-evidenced community implementation for this paper. Any repos shown below are weak matches — verify before relying on them.

No code implementations found yet.

Know of an implementation? Let us know in the comments below!

Similar Papers

Cite this paper

@article{foley2024apirl,
  title  = {APIRL: Deep Reinforcement Learning for REST API Fuzzing},
  author = {Myles Foley and Sergio Maffeis},
  year   = {2024},
  eprint = {2412.15991},
  archivePrefix = {arXiv},
  url    = {http://arxiv.org/abs/2412.15991v1}
}

Add a badge to your README

Shows whether official code is linked for this paper.

Code of Paper badge
[![Code of Paper](https://codeofpaper.com/badge/2412.15991.svg)](https://codeofpaper.com/paper/2412.15991)

Discussion