Performing GCP Penetration Testing with GCPBucketBrute
Overview
This skill covers Google Cloud Platform security testing using GCPBucketBrute for storage bucket enumeration and access permission testing, combined with gcloud CLI IAM enumeration to identify privilege escalation paths. The approach tests for publicly accessible buckets, overly permissive IAM bindings, and service account key exposure.
Prerequisites
- Python 3.8+ with google-cloud-storage library
- GCPBucketBrute installed from RhinoSecurityLabs GitHub
- gcloud CLI authenticated with test credentials
- Authorized penetration testing scope for target GCP project
- google-api-python-client and google-auth libraries
Steps
-
Enumerate Storage Buckets — Use GCPBucketBrute with keyword permutations to discover accessible GCP storage buckets
-
Test Bucket Permissions — Call TestIamPermissions API on each discovered bucket to determine read/write/admin access levels
-
Audit IAM Bindings — Enumerate project-level IAM policies to identify overly permissive role bindings
-
Check Service Account Keys — Identify service accounts with user-managed keys and test for privilege escalation via impersonation
-
Test Privilege Escalation Paths — Check for iam.serviceAccounts.actAs, setIamPolicy, and other privilege escalation vectors
-
Generate Findings Report — Produce a structured security assessment with risk severity ratings
Expected Output
- JSON report of discovered buckets with permission levels
- IAM privilege escalation path analysis
- Service account security assessment
- Risk-scored findings with remediation recommendations