Firebase
Overview
Common Misconfigurations
Insecure Realtime Database
# Test for open database (no authentication required)
curl https://PROJECT-ID.firebaseio.com/.json
# If returns data = VULNERABLE
# If returns "Permission Denied" = properly configured
# Test for write access
curl -X PUT -d '{"test": "data"}' https://PROJECT-ID.firebaseio.com/test.json
# Test with shallow query (list keys only)
curl "https://PROJECT-ID.firebaseio.com/.json?shallow=true"Insecure Cloud Firestore
Insecure Storage Buckets
Enumeration
Finding Firebase Projects
API Key Extraction
Exploitation
Database Data Exfiltration
Authentication Bypass
Write Access Exploitation
Cloud Functions Exploitation
Tools
Python Connector
Security Rules Analysis
Reporting Findings
Resources
Last updated
Was this helpful?