Using aws_list_all - SethBodine/audit-tools GitHub Wiki
Using aws_list_all
aws_list_all is a tool that enumerates all resources across all AWS services and regions for an account. It is useful for getting a complete picture of what is deployed, identifying forgotten or shadow infrastructure, and building a baseline for an assessment.
- Enumerates resources across all AWS services and all regions simultaneously
- Requires only read-only AWS credentials
- Outputs to JSON
- Useful for discovering forgotten or shadow infrastructure
Prepare the Environment
No setup required. Run from the shell.
Ensure AWS credentials are configured before running. See Cloud Authentication via CLI.
Gather Data
List All Resources (all services, all regions)
aws_list_all query --region all > /output/aws_list_all.json
List Resources for a Specific Region
aws_list_all query --region ap-southeast-2 > /output/aws_list_all_sydney.json
List Resources for a Specific Service
aws_list_all query --service s3
aws_list_all query --service iam
Show Available Services
aws_list_all list
Using a Specific Profile
AWS_PROFILE=<profile-name> aws_list_all query --region all
Known Issues
- Some AWS API calls require additional permissions beyond ReadOnlyAccess. Errors for individual services can be ignored if the majority of results are returned.
- Large accounts with many regions and services can take a significant amount of time to complete.