A collection of tools that simulate cloud REST API vulnerabilities. The tools provide training for practical skill development based on real-world vulnerabilities in authorization, XSS, and SQL injection. Coverage includes OpenStack, Salesforce, and Google Cloud.
Based on instructor lead workshop materials in https://github.com/rbeede/pen-testing-cloud-apis
This material includes a self-guided walkthrough of how to setup the tools and complete some of the basic lab exercises. Additional exercises are left for practice by the reader.
- Working knowledge of OWASP Top 10 fundamentals
- Basic skill with Linux CLI
- Skill with HTTP MitM tools such as Burp Suite
- For Salesforce exercises a Salesforce Developer Edition account
- A Linux platform
- A VM desktop guest is fine for this
- This guide will use WSL2 (Hyper-V), but other hypervisors that can run a Linux VM can also be used
- Ubuntu 24.04 (both x86_64 and ARM) have been tested to work
- A VM desktop guest is fine for this
- An HTTP MitM proxy
- No specific software requirement, but this guide uses Burp Suite
- Obtain copies of the following Git repos
- Install required dependency software
- gCloud CLI
⚠️ ⚠️ Do not use the snap or docker versions as it forces a read only file system that breaks the simulation tools
- Python 3.12.3 (should come with Ubuntu 24.04)
- Later versions are okay, but may require some manual workarounds
- Salesforce CLI
- OpenStack Swift server & client (install instructions given later)
- gCloud CLI
Recommend opening in a new tab so you can return to this guide.
-
Why Pentest Cloud APIs
- Juniper Support Portal Exposed Customer Device Info; 2024
- Salesforce Community Cloud data leaks shine light on misconfigurations; 2023
- Salesforce Security Alert: API Error Exposed Marketing Data; 2018
- A critical vulnerability was found in Google Security Operations SOAR; GCP-2025-049; 2025
- A path traversal vulnerability in the NPM package installation process of Google Cloud Dataform; CVE-2025-9118; GCP-2025-045; 2025
- OSSA-2019-006: Credentials API allows listing and retrieving of all users credentials; 2019
