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-1unless--regionsis 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
- Installation Guide: Detailed installation instructions and requirements
- User Guide: Comprehensive user manual and best practices
- CLI Reference: Complete command-line interface documentation
- Dual Scoring Guide: Weighted vs AWS Config scoring methodologies
- Scoring Methodology: Detailed explanation of weighted scoring
- AWS Config Comparison: Comparison with AWS Config approach
- Troubleshooting Guide: Common issues and solutions
- Developer Guide: Development and contribution guidelines
Technical Documentation
- Assessment Logic: How compliance assessments work
- Config Rule Mappings: CIS Controls to AWS Config rule mappings
- HTML Report Improvements: Enhanced HTML report features and customization
๐ค 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
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file aws_cis_controls_assessment-1.2.5.tar.gz.
File metadata
- Download URL: aws_cis_controls_assessment-1.2.5.tar.gz
- Upload date:
- Size: 417.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
07e28cb183118d5d5b87cc95790a8407c059f5e00808f3576b8cd82f77301b4c
|
|
| MD5 |
ee4009a5d5087edc048930621097cefa
|
|
| BLAKE2b-256 |
3b05713504cea683749cd755629b19b2f1ee4632572992292d31550aa1cf434b
|
File details
Details for the file aws_cis_controls_assessment-1.2.5-py3-none-any.whl.
File metadata
- Download URL: aws_cis_controls_assessment-1.2.5-py3-none-any.whl
- Upload date:
- Size: 500.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
31935233410db87d90bbdbce6a7a5afd8968dd73abec663e090bdd95e7fa341d
|
|
| MD5 |
28f1c32f1d6a58cf4890826906e21d1e
|
|
| BLAKE2b-256 |
ddf439e3a218eabfbc6a9e84c8b201cff01f5b848e6f772f13c9e0e6df204720
|