Skip to main content

aws-s3-risk-footprint

A CLI tool to analyze AWS S3 regional distribution and security risk.

aws-s3-risk-footprint provides fast, read-only visibility into where your S3 data lives, how it is distributed across AWS regions, and whether any buckets present elevated security risk — all directly from the terminal.

Designed for cloud security engineers, GRC teams, and AWS practitioners who need lightweight visibility without relying on the AWS Console.


Features

  • Regional footprint view of S3 buckets across AWS regions
  • Bucket counts by region (data locality & sprawl)
  • Expandable inventory of individual bucket names
  • Security risk analysis (e.g. public bucket exposure)
  • Optional object count inspection
  • AWS identity awareness (whoami)
  • Uses existing AWS credentials (no secrets stored)

Installation

pip install aws-s3-risk-footprint

After installation, the CLI command is:

aws-s3-risk

Usage

Show regional distribution

aws-s3-risk map

Displays a regional summary of S3 buckets to help assess data residency and bucket sprawl.

Example output:

Total S3 Buckets: 29

AWS S3 REGIONAL DISTRIBUTION
------------------------------
ap-south-1      █                    1
eu-central-1    █                    1
us-east-1       ████████████████████ 15
us-west-1       ████████████████     12

WEST (Americas)
---------------
us-west-1       [████████████████] 12

EAST (Americas)
---------------
us-east-1       [████████████████████] 15

EUROPE
------
eu-central-1    [█] 1

APAC
----
ap-south-1      [█] 1

Expand bucket inventory

aws-s3-risk expand

Example output:

Total S3 Buckets: 29

AWS S3 BUCKET FOOTPRINT
==================================================

us-east-1 (15)
--------------
• analytics-query-results-us-east-1
• cloudtrail-logs-central
• infrastructure-templates-us-east-1
• data-lake-athena-results
• vpc-flow-logs-primary
• app-artifacts-prod
• application-backups
• security-audit-logs
• config-recorder-storage
• ssm-inventory-data
• elasticbeanstalk-assets
• monitoring-metrics-store
• global-app-assets-us-east-1
• billing-reports-bucket
• public-site-content

us-west-1 (12)
--------------
• media-assets-prod
• backup-archive-west
• application-logs-west
• replication-target-west
• analytics-stage-west
• app-artifacts-dev
• monitoring-snapshots
• lambda-deployments
• terraform-state-west
• ci-cd-artifacts
• image-processing-input
• image-processing-output

eu-central-1 (1)
----------------
• eu-customer-exports

ap-south-1 (1)
--------------
• apac-ingestion-bucket

Filter by region:

aws-s3-risk expand --region us-east-1

Analyze security risk

aws-s3-risk risk

Buckets are classified into LOW / MEDIUM / HIGH risk based on observable exposure signals such as public access configuration, bucket policy status, and object-level accessibility.

Example output:

AWS S3 RISK SUMMARY
========================================
HIGH RISK   : 2 buckets
MEDIUM RISK : 5 buckets
LOW RISK    : 22 buckets

High-Risk Buckets
----------------------------------------
- marketing-assets-prod (us-east-1)
- legacy-logs-2019 (us-west-1)

Include object counts (may incur additional API calls):

aws-s3-risk risk --objects

Example output:

Total S3 Buckets: 29

AWS S3 RISK SUMMARY
========================================
HIGH RISK   : 8 buckets
MEDIUM RISK : 0 buckets
LOW RISK    : 21 buckets

High-Risk Buckets
----------------------------------------
• public-web-assets (us-east-1) — 1 object
• elasticbeanstalk-app-assets (us-east-1) — 1 object
• marketing-site-content (us-east-1) — 1 object
• dev-artifacts-storage (us-west-1) — 1 object
• application-backups-dev (us-west-1) — 3 objects
• prod-artifacts-legacy (us-west-1) — 1 object
• prod-logs-unrestricted (us-west-1) — 1 object
• apac-ingestion-endpoint (ap-south-1) — 1 object

Show AWS execution context

aws-s3-risk whoami

Displays the AWS identity (user or role) used to execute the tool.

Example output:

AWS Identity
==============================
Account ID : 123456789010
ARN        : arn:aws:iam::123456789010:user/cli-user

Use a specific AWS profile

aws-s3-risk risk --profile production

Use Cases

  • Cloud security posture reviews
  • Data residency & compliance (e.g. GDPR, CCPA)
  • Identifying publicly exposed S3 buckets
  • AWS account hygiene and inventory audits
  • Pre-migration or architecture assessments

Permissions Required

This tool is read-only and requires the following AWS IAM permissions:

  • s3:ListAllMyBuckets
  • s3:GetBucketLocation
  • s3:GetBucketPolicyStatus
  • s3:GetBucketPublicAccessBlock
  • s3:GetBucketAcl
  • s3:ListBucket (optional, for object counts)

No write actions are performed.


Authentication

Uses standard AWS credential resolution via boto3:

  • AWS CLI credentials (~/.aws/credentials)
  • Environment variables (AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY)
  • IAM roles
  • AWS SSO sessions

No credentials are stored or transmitted by this tool.


Requirements

  • Python 3.7+
  • boto3 >= 1.26.0

Disclaimer

This tool does not modify AWS resources and is not a substitute for a full security audit.


License

MIT License


Release files for aws-s3-risk-footprint 0.1.8

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for aws-s3-risk-footprint 0.1.8
File Size Uploaded
aws_s3_risk_footprint-0.1.8.tar.gz 6.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for aws-s3-risk-footprint 0.1.8
File Interpreter ABI Platform
aws_s3_risk_footprint-0.1.8-py3-none-any.whl Python 3 none any Details

Total release size: 13.8 kB

Release files / aws_s3_risk_footprint-0.1.8.tar.gz

Download URL aws_s3_risk_footprint-0.1.8.tar.gz
Size 6.2 kB
Tags Source
SHA-256 checksum
How to use checksums
102210036006279722f032993ad35d66fc5a53af23d9e5dfc97bb1646f128294
BLAKE2b-256 checksum
How to use checksums
5cd36da440cb1aa8640de2806daa1e37af062ddb1fc36015d5dedbf6a2ad87e9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.5

Release files / aws_s3_risk_footprint-0.1.8-py3-none-any.whl

Download URL aws_s3_risk_footprint-0.1.8-py3-none-any.whl
Size 7.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
521bc30c13db759594b828c7719d47d1194fad09606d47e48ab91aa37f7525a3
BLAKE2b-256 checksum
How to use checksums
fbd077a161ff7adf1b85aa14cbff9aaf43bd4b0a748fa3f2c59f56a1563f55d8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.5

Release history Release notifications | RSS feed

This release

0.1.8 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page