Burp extension that performs a passive scan to identify cloud buckets and then test them for publicly accessible vulnerabilities
The extension looks at all responses and will note:
- AWS S3 bucket URLs.
- Azure Storage container URLs.
- Google Storage container URLs.
The extension checks the following things as an anonymous user:
- Publicly accessible S3 buckets which will be enumerated by the extension.
- Publicly accessible ACLs on S3 buckets which will be enumerated by the extension.
- Publicly writable S3 buckets, to which a sample file will be written.
- Publicly writable ACLs on S3 buckets.
- Publicly accessible Google Storage containers which will be enumerated by the extension.
- Publicly accessible ACLs on Google Storage containers which will be enumerated by the extension.
- Publicly writable Google Storage containers, to which a sample file will be written.
- Publicly accessible Azure Storage containers which will be enumerated by the extension.
- Publicly accessible Firebase DBs and anonymous read/write access.
The extension checks the following things in AWS/Google as an authenticated AWS/Google user (though not a defined user for the bucket itself):
- Any authenticated AWS user accessible S3 buckets which will be enumerated by the extension.
- Any authenticated AWS user accessible ACLs on S3 buckets which will be enumerated by the extension.
- Any authenticated AWS user writable S3 buckets, to which a sample file will be written.
- Any authenticated AWS user writable ACLs on S3 buckets.
- Any authenticated Google user accessible Google Storage containers which will be enumerated by the extension.
- Any authenticated Google user accessible ACLs on Google Storage containers which will be enumerated by the extension.
- Any authenticated Google user writable Google Storage containers, to which a sample file will be written.
All you have to do is add the JAR as an extension in Burp, add the appropriate targets to scope, and run a scan against the targets. If you want to test for permissions issues that allow all authenticated AWS users, then add your personal AWS credentials.
Continue adding features to support identification and enumeration of other resources such as firebaseio.com