Introduction


The Ceph RADOS Gateway (RGW) provides an Amazon S3–compatible RESTful interface for object storage, allowing clients and applications to interact with Ceph clusters using familiar S3 APIs. While this compatibility greatly enhances usability and integration, it also exposes a large and complex attack surface typical of REST-based storage services. Ensuring the robustness and security of the RGW’s S3 interface is therefore essential.

In this project, we aim to evaluate the security and resilience of the RGW by applying stateful REST API fuzzing techniques. Specifically, we explore the use of RESTler, a powerful REST API fuzzing framework developed by Microsoft Research. RESTler automatically analyzes an API specification—such as an OpenAPI or Swagger definition—to infer request dependencies, generate test sequences, and systematically explore potential failure scenarios.

Project

In this section, we describe how RESTler was integrated into the Ceph project, how S3 authentication support was added, and the concrete bugs and issues discovered during fuzzing of RADOS Gateway (RGW).

Integration of RESTler into Ceph

Enabling S3 Authentication + Proxy Logic in RESTler

Bugs & Issues Discovered via RESTler Fuzzing of RGW

Using the above integrated setup, the fuzzing campaign uncovered real defects in RADOS Gateway. Two especially notable issues: