Skip to main content

Production-ready AWS CIS Controls compliance assessment framework with 199 unique rules across 40 CIS Controls v8.1 safeguards

Project description

AWS CIS Controls Compliance Assessment Framework

A security framework for evaluating AWS account configurations against CIS Controls Implementation Groups (IG1, IG2, IG3) using AWS Config rule specifications. 199 unique assessment rules across 40 CIS Controls v8.1 safeguards.

Production Status: This framework provides comprehensive point-in-time compliance assessments while we recommend AWS Config for ongoing continuous compliance monitoring and automated remediation.

๐ŸŽฏ Key Features

  • โœ… 199 Unique Assessment Rules: 122 IG1 + 75 IG2 + 13 IG3 rules (some shared across IGs) across 40 CIS Controls
  • โœ… Cumulative Coverage: IG1 24/56 (42.9%), IG2 27/74 (36.5%), IG3 30/153 (19.6%) safeguards
  • โœ… Dual Scoring System: Both weighted and AWS Config-style scoring methodologies
  • โœ… Enhanced HTML Reports: Sorted controls, hover tooltips, working search, improved remediation display
  • โœ… Enterprise Ready: Production-tested with enterprise-grade architecture
  • โœ… Performance Optimized: Handles large-scale assessments efficiently
  • โœ… Multi-Format Reports: JSON, HTML, and CSV with detailed remediation guidance
  • โœ… No AWS Config Required: Direct AWS API calls based on Config rule specifications
  • โœ… Comprehensive Remediation: Every rule includes CLI commands, console steps, best practices, and AWS documentation links

๐Ÿš€ Quick Start

Installation

# Install from PyPI (production-ready)
pip install aws-cis-controls-assessment

# Or install from source for development
git clone <repository-url>
cd aws-cis-controls-assessment
pip install -e .

Basic Usage

# Run complete assessment (all 199 rules) - defaults to us-east-1
aws-cis-assess assess --aws-profile my-aws-profile

# Assess multiple regions
aws-cis-assess assess --aws-profile my-aws-profile --regions us-east-1,us-west-2

# Assess specific Implementation Group using short flag (defaults to us-east-1)
aws-cis-assess assess -p my-aws-profile --implementation-groups IG1 --output-format json

# Generate comprehensive HTML report (defaults to us-east-1)
aws-cis-assess assess --aws-profile production --output-format html --output-file compliance-report.html

# Enterprise multi-region assessment with multiple formats
aws-cis-assess assess -p security-audit --implementation-groups IG1,IG2,IG3 --regions all --output-format html,json --output-dir ./reports/

# Quick assessment with default profile and default region (us-east-1)
aws-cis-assess assess --output-format json

Sample Output

๐Ÿ”ง Initializing assessment engine...
โœ… Validating configuration...
๐Ÿ“Š Assessment Summary:
   Implementation Groups: IG1, IG2, IG3
   Total Assessments: 199
   Regions: us-east-1
๐Ÿš€ Starting compliance assessment...
[โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆ] 100.0% - Complete

๐Ÿ“ˆ Assessment Results:
   Overall Compliance: 72.4%
   IG1 Compliance: 78.3%
   IG2 Compliance: 68.1%
   IG3 Compliance: 65.7%
   Total Resources: 1,247
   Assessment Duration: 12m 34s

๐Ÿ“„ Generating reports...
   โฑ๏ธ  Assessment Duration: 12m 34s
   โœ… JSON report: reports/cis_assessment_20260421_143022.json
   โœ… HTML report: reports/cis_assessment_20260421_143022.html
   ๐Ÿ“‹ Log file: reports/cis_assessment_20260421_143022.log
โœ… Assessment completed successfully!

๐ŸŽฏ Final Result: 72.4% overall compliance

A sample HTML report is available in examples/sample-report.html and a JSON report in examples/sample-report.json โ€” open the HTML in your browser to see the interactive report with filters and pagination.

๐Ÿ“Š Implementation Groups Coverage

Coverage Summary (Cumulative)

IG Safeguards Covered Total Safeguards Coverage Rules
IG1 24 56 42.9% 122
IG2 27 74 36.5% 75
IG3 30 153 19.6% 13
Unique Total 199

Coverage is cumulative: IG2 includes all IG1 safeguards, IG3 includes all IG1+IG2 safeguards. Rule counts per IG reflect unique registered assessments. Some rules are shared across IGs and counted once in the unique total.

IG1 - Essential Cyber Hygiene (122 Rules, 24 Controls)

Control ID Safeguard Name Rules
1.1 Establish and Maintain Detailed Enterprise Asset Inventory 12
1.5 Account Inventory 1
2.2 Ensure Authorized Software is Currently Supported 5
2.2.1 Software Inventory Process 1
3.3 Configure Data Access Control Lists 4
3.4 Enforce Data Retention 2
3.11 Encrypt Sensitive Data at Rest 8
4.1 Establish and Maintain a Secure Configuration Process 14
4.6 Securely Manage Enterprise Assets and Software 3
5.3 Disable Dormant Accounts 6
6.2 Establish an Access Revoking Process 1
6.5 Require MFA for Administrative Access 3
8.2 Collect Audit Logs 7
8.5 Collect Detailed Audit Logs 1
8.8 Audit Log Reviews 1
9.1 Ensure Only Fully Supported Browsers and Email Clients are Allowed 3
10.1 Deploy and Maintain Anti-Malware Software 2
11.1 Establish and Maintain a Data Recovery Process 6
11.2 Automated Backups 8
12.2 Network Infrastructure Management 5
13.1 Centralize Security Event Alerting 5
14.6 Train Workforce Members on Recognizing and Reporting Security Incidents 5
15.3 Classify Service Providers 3
16.11 Leverage Vetted Modules or Services for Application Security Components 23

IG2 - Enhanced Security (75 Rules, 12 Controls)

Control ID Safeguard Name Rules
3.10 Encrypt Sensitive Data in Transit 7
3.11 Encrypt Sensitive Data at Rest 8
4.5 Implement and Manage a Firewall on End-User Devices 5
4.6 Securely Manage Enterprise Assets and Software 5
5.2 Use Unique Passwords 3
6.3 Require MFA for Externally-Exposed Applications 5
6.4 Require MFA for Remote Network Access 5
8.2 Audit Log Management 7
8.5 Collect Detailed Audit Logs 7
11.4 Backup Restoration Testing 6
12.2 Network Infrastructure Management 11
16.11 Leverage Vetted Modules or Services for Application Security Components 13

IG3 - Advanced Security (13 Rules, 4 Controls)

Control ID Safeguard Name Rules
3.10 Encrypt Sensitive Data in Transit 1
10.5 Enable Anti-Exploitation Features 3
13.8 Deploy a Network Intrusion Prevention Solution 3
16.12 Implement Code-Level Security Checks 6

๐Ÿ—๏ธ Production Architecture

Core Components

  • Assessment Engine: Orchestrates compliance evaluations across all AWS regions
  • Control Assessments: 199 unique rule implementations with robust error handling
  • Scoring Engine: Calculates compliance scores and generates executive metrics
  • Reporting System: Multi-format output with detailed remediation guidance
  • Resource Management: Optimized for enterprise-scale deployments with memory management

Enterprise Features

  • Multi-threading: Parallel execution for improved performance
  • Error Recovery: Comprehensive error handling and retry mechanisms
  • Audit Trail: Complete compliance audit and logging capabilities
  • Resource Monitoring: Real-time performance and resource usage tracking
  • Scalable Architecture: Handles assessments across hundreds of AWS accounts

๐Ÿ“‹ Requirements

  • Python: 3.8+ (production tested on 3.8, 3.9, 3.10, 3.11)
  • AWS Credentials: Configured via AWS CLI, environment variables, or IAM roles
  • Permissions: Read-only access to AWS services being assessed
  • Memory: Minimum 2GB RAM for large-scale assessments
  • Network: Internet access for AWS API calls
  • Default Region: Assessments default to us-east-1 unless --regions is specified

๐Ÿ“ˆ Business Value

Immediate Benefits

  • Compliance Readiness: Instant CIS Controls compliance assessment
  • Risk Reduction: Identify and prioritize security vulnerabilities
  • Audit Support: Generate comprehensive compliance reports
  • Cost Optimization: Identify misconfigured and unused resources
  • Operational Efficiency: Automate manual compliance checking

Long-term Value

  • Continuous Improvement: Track compliance posture over time
  • Regulatory Compliance: Support for multiple compliance frameworks
  • Security Automation: Foundation for automated remediation
  • Enterprise Integration: Integrate with existing security tools
  • Future-Proof: Extensible architecture for evolving requirements

๐Ÿ›ก๏ธ Security & Compliance

Security Features

  • Read-Only Access: Framework requires only read permissions
  • No Data Storage: No sensitive data stored or transmitted
  • Audit Logging: Complete audit trail of all assessments
  • Error Handling: Secure error handling without data leakage

Compliance Support

  • CIS Controls: Coverage across Implementation Groups 1, 2, and 3 (199 unique rules, 40 safeguards)
  • AWS Well-Architected: Aligned with security pillar best practices
  • Industry Standards: Supports SOC 2, NIST, ISO 27001 mapping
  • Regulatory Requirements: HIPAA, PCI DSS, FedRAMP compatible
  • Custom Frameworks: Extensible for organization-specific requirements

๐Ÿ“š Documentation

Core Documentation

Technical Documentation

๐Ÿค Support & Community

Getting Help

  • Documentation: Comprehensive guides and API documentation
  • GitHub Issues: Bug reports and feature requests
  • Enterprise Support: Commercial support available for enterprise deployments

Contributing

  • Code Contributions: Pull requests welcome with comprehensive tests
  • Documentation: Help improve documentation and examples
  • Bug Reports: Detailed bug reports with reproduction steps
  • Feature Requests: Enhancement suggestions with business justification

๐Ÿ“„ License

MIT License - see LICENSE file for details.

๐Ÿ† Project Status

โœ… Production Ready: 199 unique rules across 40 CIS Controls v8.1 safeguards
โœ… Enterprise Deployed: Actively used in production environments
โœ… Continuously Maintained: Regular updates and security patches
โœ… Community Supported: Active development and community contributions
โœ… Future-Proof: Extensible architecture for evolving requirements


Framework Version: 1.2.4
CIS Controls v8.1 Coverage: 199 unique rules across 40 safeguards (IG1: 122, IG2: 75, IG3: 13)
Production Status: โœ… Ready for immediate enterprise deployment
Last Updated: April 2026

๐Ÿ†• What's New in Version 1.2.4

CIS Controls Overview Table

  • New dedicated section in HTML reports with a comprehensive, sortable, filterable table of all assessed CIS Controls v8.1 safeguards
  • Summary cards showing total controls, average compliance, fully compliant count, and attention-needed count
  • Filter bar with IG dropdown, Rules dropdown, and text search
  • Click on Control ID to jump to corresponding Resource Details section

Accuracy Fixes

  • Fixed flaky property test for control display name format
  • Updated CLI version assertion
  • Removed hardcoded resource evaluation count from HTML report footer
  • Corrected rule counts: 199 unique assessment rules (previously reported as 224 which double-counted cross-IG shared rules)

Previous Highlights (1.2.0โ€“1.2.3)

  • Dynamic coverage metrics from YAML configs with cumulative IG logic
  • HTML report controls sort numerically with hover tooltips
  • 50 new IG1 rules across security services, logging, encryption, inventory, configuration management, and backup
  • 14 IG2 access & configuration controls, 7 IG2 audit logging controls
  • Dual scoring system, enhanced HTML reports, resource deduplication fixes

See CHANGELOG.md for complete version history.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

aws_cis_controls_assessment-1.2.5.tar.gz (417.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

aws_cis_controls_assessment-1.2.5-py3-none-any.whl (500.8 kB view details)

Uploaded Python 3

File details

Details for the file aws_cis_controls_assessment-1.2.5.tar.gz.

File metadata

File hashes

Hashes for aws_cis_controls_assessment-1.2.5.tar.gz
Algorithm Hash digest
SHA256 07e28cb183118d5d5b87cc95790a8407c059f5e00808f3576b8cd82f77301b4c
MD5 ee4009a5d5087edc048930621097cefa
BLAKE2b-256 3b05713504cea683749cd755629b19b2f1ee4632572992292d31550aa1cf434b

See more details on using hashes here.

File details

Details for the file aws_cis_controls_assessment-1.2.5-py3-none-any.whl.

File metadata

File hashes

Hashes for aws_cis_controls_assessment-1.2.5-py3-none-any.whl
Algorithm Hash digest
SHA256 31935233410db87d90bbdbce6a7a5afd8968dd73abec663e090bdd95e7fa341d
MD5 28f1c32f1d6a58cf4890826906e21d1e
BLAKE2b-256 ddf439e3a218eabfbc6a9e84c8b201cff01f5b848e6f772f13c9e0e6df204720

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page