# Prowler — Cloud Security Assessment for AWS, Azure and GCP > Prowler is an open-source security tool that audits your cloud infrastructure against hundreds of compliance checks for AWS, Azure, GCP, and Kubernetes, generating actionable reports. ## Install Save as a script file and run: # Prowler — Cloud Security Assessment for AWS, Azure and GCP ## Quick Use ```bash # Install via pip pip install prowler # Run a full AWS scan with default credentials prowler aws # Scan specific checks prowler aws --checks s3_bucket_public_access ec2_security_group_open # Output as HTML report prowler aws -M html ``` ## Introduction Prowler is an open-source cloud security tool that performs automated security assessments across AWS, Azure, GCP, and Kubernetes. It runs hundreds of checks mapped to compliance frameworks like CIS Benchmarks, PCI-DSS, HIPAA, GDPR, and SOC2. Security teams use Prowler to continuously audit their cloud posture, identify misconfigurations, and generate compliance-ready reports without expensive commercial tools. ## What Prowler Does - Scans AWS, Azure, and GCP accounts against 300+ security and compliance checks - Maps findings to industry frameworks including CIS, PCI-DSS, HIPAA, NIST 800-53, and SOC2 - Generates reports in HTML, CSV, JSON, and OCSF format for dashboards and SIEM integration - Supports multi-account and multi-cloud scanning from a single CLI invocation - Provides auto-remediation scripts for common misconfigurations ## Architecture Overview Prowler is written in Python and uses a modular provider-based architecture. Each cloud provider (AWS, Azure, GCP) has a set of services, and each service contains individual checks. When invoked, Prowler authenticates with the cloud API using your configured credentials, executes the selected checks in parallel, collects findings, scores them by severity, and renders the output in your chosen format. The check library is extensible so teams can add custom checks specific to their organization. ## Self-Hosting & Configuration - Install via pip install prowler or run the official Docker image for CI environments - Configure AWS credentials via environment variables, profiles, or IAM roles for cross-account access - Use --compliance to restrict scanning to a specific framework like cis_2.0_aws - Set up prowler as a scheduled job in CI/CD or AWS Lambda for continuous monitoring - Export results to AWS Security Hub, S3, or a SIEM for centralized visibility ## Key Features - 300+ checks covering IAM, networking, encryption, logging, storage, and compute across three clouds - Built-in compliance mapping to CIS, PCI-DSS, HIPAA, GDPR, SOC2, NIST, and more - Parallel execution with threaded scanning for fast assessments of large accounts - Allowlist and denylist support to suppress known exceptions and focus on new findings - OCSF output format for seamless integration with Amazon Security Lake ## Comparison with Similar Tools - **ScoutSuite (NCC Group)** — multi-cloud auditor but less actively maintained and fewer checks - **Steampipe** — SQL-based cloud querying but requires writing custom queries for compliance - **Checkov (Bridgecrew)** — focuses on IaC scanning (Terraform, CloudFormation) rather than live cloud state - **AWS Security Hub** — native AWS service but limited to AWS, no Azure or GCP coverage - **CloudSploit** — open-source cloud scanner but smaller check library and slower development pace ## FAQ **Q: Can Prowler scan multiple AWS accounts at once?** A: Yes. Configure cross-account IAM roles and use --role to assume into each account. Prowler can iterate over an AWS Organization automatically. **Q: Does Prowler modify any cloud resources?** A: No. Prowler is read-only by default. It only calls describe and list APIs. Auto-remediation scripts are provided separately and must be run explicitly. **Q: How long does a full AWS scan take?** A: A typical AWS account with moderate resources completes in 5-15 minutes. Large enterprise accounts may take 30-60 minutes depending on the number of regions and services. **Q: Can I write custom checks?** A: Yes. Prowler's modular architecture lets you add Python-based checks following the existing check template. Custom checks integrate with the same compliance mapping and reporting system. ## Sources - https://github.com/prowler-cloud/prowler - https://docs.prowler.com --- Source: https://tokrepo.com/en/workflows/201d9fd1-3987-11f1-9bc6-00163e2b0d79 Author: Script Depot