Skip to content

Releases: prowler-cloud/prowler

Prowler 3.3.2 - Sun and Steel [HOTFIX]

30 Mar 08:17
Compare
Choose a tag to compare

Fixes

Full Changelog: 3.3.1...3.3.2

Prowler 3.3.1 - Sun and Steel

30 Mar 07:48
Compare
Choose a tag to compare

Fixes

  • fix(output bucket): solve IsADirectoryError using compliance flag by @sergargar in #2121
  • fix(quickinventory): AttributError when creating inventory table by @bnugent in #2122
  • fix(aws_provider): Fix assessment session name by @jfagoagas in #2132
  • fix(brew): move brew formula action to the bottom by @sergargar in #2135
  • fix(s3): handle if ignore_public_acls is None by @jfagoagas in #2128
  • fix(defender service): retrieving key dicts with get by @n4ch04 in #2129
  • fix(resource_not_found): Handle error by @jfagoagas in #2136
  • fix(readme): add GCP provider to README introduction by @sergargar in #2143
  • fix(azure output): change default values of audit identity metadata by @n4ch04 in #2144
  • fix(delete check): delete check ec2.._in_use_without_ingrgess_filtering by @n4ch04 in #2148
  • fix(audit_info): azure subscriptions parsing error by @n4ch04 in #2147
  • fix(ssm): Handle ValidationException when retrieving documents by @jfagoagas in #2146
  • chore(regions_update): Changes in regions for AWS services. by @sergargar in #2149

Chores

  • chore(regions_update): Changes in regions for AWS services. by @sergargar in #2104
  • chore(version): check latest version by @sergargar in #2106

Docs

  • docs: Remove list severities by @jfagoagas in #2116
  • docs(developer-guide): added phase 1 of dev guide by @toniblyx in #1904
  • docs: improve quick inventory section by @sergargar in #2117
  • docs: improve reporting documentation by @sergargar in #2119
  • docs: Developer Guide - how to create a new check by @sergargar in #2137

Dependencies

New Contributors

Full Changelog: 3.3.0...3.3.1

Prowler 3.3.0 - Sun and Steel

16 Mar 17:31
Compare
Choose a tag to compare

Through earth and water, fire and wind
You came at last, nothing was the end...

As this series of Prowler versions, Sun and Steel is a song part of Piece of Mind album of Iron Maiden. In this side of the world (north hemisphere), spring is about to start and this song is about Sun (and Steel) so here you go! 🤘🏽See below the amazing new features we have added to Prowler 3.3.0 🔥Sun and Steel🔥

New features to highlight in this version:

🏷️ Resource Tags everywhere:

  • Now all findings outputs like HTML, CSV and JSON for AWS provider contains every resource tags.
    Screenshot 2023-03-16 at 18 17 13

⚖️ Compliance everywhere:

  • Now all findings in outputs like HTML, CSV and JSON contains any security framework related to the finding.
    Screenshot 2023-03-16 at 18 17 23

🛡️ Security Hub integration with compliance from Prowler:

  • All findings sent to Security Hub include their compliance information and all frameworks that they belongs to. This allow user to filter by Compliance Associated Standards ID and others and take advantage of all new supported frameworks in Prowler:
    Screenshot 2023-03-16 at 18 25 37

📊 New inventory output include regions:

  • When running Prowler Quick Inventory (prowler -i) the output is as nice as this one:

Screenshot 2023-03-16 at 18 25 07

3 new checks:

  • s3_bucket_level_public_access_block
  • rds_instance_transport_encrypted - this is valid so far only for Postgresql and MS SQL Server
  • cloudwatch_log_group_no_secrets_in_logs

What's Changed:

  • feat(templates): New versions of issues and fr templates by @n4ch04 in #2072
  • feat(tags): add resource tags by @sergargar in #2020
  • feat(s3_bucket_level_public_access_block): new check by @sergargar in #1953
  • feat(rds_instance_transport_encrypted): add new check by @sergargar in #1963
  • feat(quick_inventory): add regions to inventory table by @sergargar in #2026
  • feat(new_check): cloudwatch_log_group_no_secrets_in_logs by @Fennerr in #1980
  • feat(lambda_cloudtrail check): improved logic and status extended by @n4ch04 in #2092
  • feat(inventory): add tags to quick inventory by @sergargar in #2051
  • feat(encryption): add new encryption category by @sergargar in #1999
  • feat(dispatch): add tag info to dispatch by @n4ch04 in #2002
  • feat(compliance): add compliance field to HTML, CSV and JSON outputs including frameworks and reqs by @sergargar in #2060
  • feat(SecurityHub): add compliance details to Security Hub findings by @sergargar in #2100

Fixes:

  • fix(windows-path): --list-services bad split by @garym-krrv in #2028
  • fix(ulimit): handle low ulimit OSError by @sergargar in #2042
  • fix(ulimit check): test only when platform is not windows by @n4ch04 in #2094
  • fix(quick inventory): add non-tagged s3 buckets to inventory by @sergargar in #2041
  • fix(providers): Move provider's logic outside main by @jfagoagas in #2043
  • fix(iam): pydantic migration and reformat logic service by @n4ch04 in #2010
  • fix(head): Pass head commit to dispatch action by @n4ch04 in #2022
  • fix(emr): solve emr_cluster_publicly_accesible error by @sergargar in #2086
  • fix(emr): KeyError EmrManagedSlaveSecurityGroup by @jfagoagas in #2000
  • fix(ec2_securitygroup_allow_wide_open_public_ipv4): correct check title by @sergargar in #2101
  • fix(ec2): avoid terminated instances by @sergargar in #2063
  • fix(compliance): add check to 2.1.5 CIS by @sergargar in #2077
  • fix(cloudwatch): solve inexistent filterPattern error by @sergargar in #2087
  • fix(cloudtrail): list tags only in owned trails by @sergargar in #2025
  • fix(check): change cloudformation_outputs_find_secrets name by @sergargar in #2027
  • fix(bug_report): typo in bug reporting template by @jfagoagas in #2078
  • fix(bug_report): Update wording by @jfagoagas in #2074
  • fix(awslambdacloudtrail): include advanced event and all lambdas in check by @n4ch04 in #1994
  • fix(actions): fixed dispatch commit message by @n4ch04 in #2023
  • fix(actions): Typo push should be true by @jfagoagas in #2019
  • fix(actions): Stop using github storage by @jfagoagas in #2016

Documentation and other updates

  • chore(docs): update readme with new ECR alias by @toniblyx in #2079
  • chore(docs): Corrected spelling mistake in multiacount by @alexnelsone in #2056
  • chore(docs): Add brew and github installation to quick start by @toniblyx in #1991
  • chore(release): update Prowler Version to 3.2.4 by @sergargar in #1988
  • chore(regions_update): Changes in regions for AWS services. by @sergargar in #2095
  • chore(poetry): add poetry checks to pre-commit by @sergargar in #2040
  • chore(metadata): remove tags from metadata by @sergargar in #1998
  • chore(iam): update prowler permissions by @sergargar in #2050
  • chore(dependabot): Change to weekly by @jfagoagas in #2057
  • chore(brew): bump new version to brew by @sergargar in #1990
  • chore(actions): Use GHA cache by @jfagoagas in #2066
  • chore(actions): Missing cache in the PR by @jfagoagas in #2067
  • build(deps-dev): bump pytest-xdist from 3.2.0 to 3.2.1 by @dependabot in #2084
  • build(deps-dev): bump pytest from 7.2.1 to 7.2.2 by @dependabot in #2046
  • build(deps-dev): bump pylint from 2.16.4 to 2.17.0 by @dependabot in #2062
  • build(deps-dev): bump moto from 4.1.3 to 4.1.4 by @dependabot in #2045
  • build(deps-dev): bump freezegun from 1.2.1 to 1.2.2 by @dependabot in #2033
  • build(deps-dev): bump flake8 from 5.0.4 to 6.0.0 by @dependabot in #2012
  • build(deps-dev): bump docker from 6.0.0 to 6.0.1 by @dependabot in #2030
  • build(deps-dev): bump coverage from 7.1.0 to 7.2.1 by @dependabot in #2032
  • build(deps-dev): bump black from 22.10.0 to 22.12.0 by @dependabot in #2013
  • build(deps-dev): bump bandit from 1.7.4 to 1.7.5 by @dependabot in #2082
  • build(deps): bump pydantic from 1.10.5 to 1.10.6 by @dependabot in #2081
  • build(deps): bump mkdocs-material from 9.1.1 to 9.1.2 by @dependabot in #2080
  • build(deps): bump botocore from 1.29.86 to 1.29.90 by @dependabot in #2083
  • build(deps): bump boto3 from 1.26.85 to 1.26.86 by @dependabot in #2061

New Contributors

Full Changelog: 3.2.4...3.3.0

Prowler 3.2.4 - Quest for Fire [HOTFIX]

27 Feb 13:17
Compare
Choose a tag to compare

Fixes

  • fix(compliance): solve AWS compliance directory path by @sergargar in #1987
  • fix(pypi-release.yml): create PR before replicating by @sergargar in #1986

Full Changelog: 3.2.3...3.2.4

Prowler 3.2.3 - Quest for Fire

27 Feb 12:44
Compare
Choose a tag to compare

Dependencies

Fixes

  • fix(toml): add toml dependency to pypi release action by @sergargar in #1960
  • fix(kms): handle if describe_keys returns no value by @n4ch04 in #1961
  • fix(cloudfront): handle empty objects in checks by @n4ch04 in #1962
  • fix(directoryservice): tzinfo without _ by @jfagoagas in #1971
  • fix(acm): Fix issues with list-certificates by @jfagoagas in #1970
  • fix(service errors): solve EMR, VPC and ELBv2 service errors by @sergargar in #1974
  • fix(action): Use PathContext to get version changes by @jfagoagas in #1983

Chores

  • chore(regions_update): Changes in regions for AWS services. by @sergargar in #1972
  • chore(compliance): implements dynamic handling of available compliance frameworks by @pedromarting3 in #1977
  • chore(readme): add brew stats by @sergargar in #1982
  • chore(codeowners): Update team to OSS by @jfagoagas in #1984

Full Changelog: 3.2.2...3.2.3

Prowler 3.2.2 - Quest for Fire

23 Feb 12:33
Compare
Choose a tag to compare

Chores

  • chore(poetry): make python-poetry as packaging and dependency manager by @sergargar in #1935
  • chore(resource-based scan): execute only applicable checks by @sergargar in #1934

Fixes

  • fix(actions): add README to docker action and filter steps for releases by @sergargar in #1955
  • fix(cloudtrail): Handle when the CloudTrail bucket is in another account by @n4ch04 in #1956
  • fix(key errors): solver EMR and IAM errrors by @sergargar in #1957
  • fix(metadata): remove us-east-1 in remediation by @sergargar in #1958

Builds

Full Changelog: 3.2.1...3.2.2

Prowler 3.2.1 - Quest for Fire

21 Feb 16:20
Compare
Choose a tag to compare

Chores

  • chore(Security Hub): add --skip-sh-update by @sergargar in #1911
  • chore(Security Hub): add status extended to Security Hub by @sergargar in #1921
  • chore(secrets): Improve the status_extended with more information by @Fennerr in #1937
  • chore(iam_disable_N_days_credentials): improve checks logic by @sergargar in #1923

Fixes

  • fix(cloudtrail_logs_s3_bucket_access_logging_enabled): cloudtrail s3 bucket logging by @n4ch04 in #1902
  • fix(codebuild): Handle endTime in builds by @jfagoagas in #1900
  • fix(iam-credentials-expiration): IAM password policy expires passwords fix by @congon4tor in #1903
  • fix(compliance): Set Version as optional and fix list by @jfagoagas in #1899
  • fix(ecs_task_definitions_no_environment_secrets): dump_env_vars is reintialised by @Fennerr in #1922
  • fix(quick_inventory): handle ApiGateway resources by @Fennerr in #1924
  • fix(iam_rotate_access_key_90_days): check only active access keys by @Fennerr in #1929
  • fix(services): solve errors in EMR, RDS, S3 and VPC services by @sergargar in #1913
  • fix(regions): add unique branch name by @sergargar in #1941
  • fix(errors): handle errors when S3 buckets or EC2 instances are deleted by @sergargar in #1942
  • fix(cloudwatch): allow " in regex patterns by @sergargar in #1943

Dependencies

Full Changelog: 3.2.0...3.2.1

Prowler 3.2.0 - Quest for Fire

13 Feb 14:44
9c484f6
Compare
Choose a tag to compare

Drawn by quest for fire
They searched all through the land
Drawn by quest for fire
Discovery of man.

Quest for Fire is a song part of Piece of Mind album of Iron Maiden. This new version is the result of our quest for your security issues and our quest to help you to improve your cloud security posture. See below the amazing new features we have added to Prowler 3.2.0 🔥Quest for Fire🔥

New features to highlight in this version:

🏷️ Tag-based scan: now you can scan only resources with specific tags across your entire account with the following command:

🎯 Resource-based scan: now you can scan only a specific resources by the ARN

  • prowler aws --resource-arn arn:aws:iam::012345678910:user/test arn:aws:ec2:us-east-1:123456789012:vpc/vpc-12345678
  • That command will run all IAM user related checks to test and all VPC related checks to VPC vpc-12345678
  • This is very helpful for new found resources or even pipelines! More information here: https://docs.prowler.cloud/en/latest/tutorials/aws/resource-arn-based-scan/

⚖️ 17 New Security Compliance Frameworks: we added 17 new security frameworks for AWS.

  • In addition to CIS 1.4, CIS 1.5 and Spanish ENS (that comes with more enhancements) we have added the following security frameworks for the AWS provider.
    • CISA Cyber Essentials
    • FedRAMP Low Revision 4
    • FedRAMP Moderate Revision 4
    • Federal Financial Institutions Examination Council (FFIEC)
    • AWS Foundational Security Best Practices
    • General Data Protection Regulation (GDPR)
    • GxP 21 CFR Part 11
    • GxP EU Annex 11
    • HIPAA
    • NIST 800-171 Revision 2
    • NIST 800-53 Revision 4
    • NIST 800-53 Revision 5
    • NIST Cybersecurity Framework (CSF) v1.1
    • PCI v3.2.1
    • RBI Cyber Security Framework
    • SOC 2
  • These can be considered test mode at this point, we are open for feedback and updates.
  • More information about how to use them with Prowler and compliance here: https://docs.prowler.cloud/en/latest/tutorials/compliance/.
  • We want to thank @pedromarting3 for his contribution, AWS and their public documentation and also steampipe.io mod page https://hub.steampipe.io/mods/turbot/aws_compliance because they were pretty helpful for us. 🙏🏼 🤜🏼🤛🏼

New check:

  • Check if IAM Access Analyzer is enabled (in addition of the existing one that looks for issues as well)

📺Handler for output code:

  • Like in v2, now you can handle what output code to get when Prowler gets failed findings. (-z)

📄Allow list feature now supports Lambda to manage it:

What's Changed:

  • feat(compliance): Add 17 new security compliance frameworks for AWS by @pedromarting3 in #1824
  • feat(new check): add accessanalyzer_enabled check by @sergargar in #1864
  • feat(boto3-config): Use standard retrier by @jfagoagas in #1868
  • feat(allowlist): AWS Lambda function support by @pplu in #1793
  • feat(scan-type): AWS Resource ARNs based scan by @sergargar in #1807
  • feat(exit_code 3): add -z option by @sergargar in #1848
  • feat(scanner): Tag-based scan by @sergargar in #1751

Fixes:

  • fix(elbv2): handle service for GWLB resources by @daftkid in #1860
  • fix(checks): added validation for non-existing VPC endpoint policy by @daftkid in #1859
  • fix(action): do not trigger action when editing release by @sergargar in #1865
  • fix(key_errors): handle Key Errors in Lambda and EMR by @sergargar in #1871
  • fix(permissive role assumption): actions list handling by @n4ch04 in #1869
  • fix(key_errors): handle Key Errors in Lambda and EMR by @sergargar in #1871
  • fix(hardware mfa): changed hardware mfa description by @n4ch04 in #1873
  • fix(metadata): typo in appstream_fleet_session_disconnect_timeout.metadata.json by @sergargar in #1875
  • fix(compliance): ENS RD2022 Spanish security framework updates by @alexr3y in #1809
  • fix(errors): solve several services errors (AccessAnalyzer, AppStream, KMS, S3, SQS, R53, IAM, CodeArtifact and EC2) by @sergargar in #1879
  • fix(cloudtrail_multi_region_enabled): reformat check by @n4ch04 in #1880
  • chore(compliance): add manual checks to compliance CSV by @sergargar in #1872
  • fix(service errors): solve errors in IAM, S3, Lambda, DS, Cloudfront services by @sergargar in #1882
  • chore(Dockerfile): Remove build files by @jfagoagas in #1886
  • fix(list_checks): filter checks after audit_info set by @n4ch04 in #1887
  • fix(Azure_Audit_Info): Added audited_resources field by @n4ch04 in #1891

Documentation

New Contributors

  • @pedromarting3 made their first contribution in #1824
  • @pplu made their first contribution in #1792

Full Changelog: 3.1.4...3.2.0

Prowler 3.1.4 - Revelations

07 Feb 16:55
8e8a490
Compare
Choose a tag to compare

Chores

  • chore(regions_update): Changes in regions for AWS services. by @github-actions in #1812
  • chore(issues): update bug_report.md by @toniblyx in #1844
  • chore(security hub): improve securityhub_enabled check logic by @sergargar in #1851
  • build(deps-dev): bump moto from 4.1.1 to 4.1.2 by @dependabot in #1845
  • build(deps-dev): bump sure from 2.0.0 to 2.0.1 by @dependabot in #1847
  • build(deps-dev): bump openapi-spec-validator from 0.5.4 to 0.5.5 by @dependabot in #1846
  • build(deps-dev): bump pylint from 2.16.0 to 2.16.1 by @dependabot in #1823

Fixes

  • fix(readme): correct PyPi download link by @sergargar in #1836
  • fix(lambda-runtime): Init value must be empty string by @jfagoagas in #1837
  • fix(errors): solve CloudWatch, KMS, EMR and OpenSearch service errors by @sergargar in #1843
  • fix(kms): call GetKeyRotationStatus only for Customer Keys by @sergargar in #1842
  • fix(checks): solve different errors in EFS, S3 and VPC by @sergargar in #1841
  • fix(exit_code): change sys exit code to 1 in Critical Errors by @sergargar in #1853
  • fix(iam): change prowler additional policy json due errors in creation by @theist in #1852

New Contributors

Full Changelog: 3.1.3...3.1.4

Prowler 3.1.3 - Revelations

03 Feb 14:13
Compare
Choose a tag to compare

Chores

  • chore(readme): add prowler PyPi stats by @sergargar in #1798
  • chore(regions): Change feat to chore by @jfagoagas in #1805
  • chore(regions_update): Changes in regions for AWS services. by @github-actions in #1812
  • chore(logs): improve check error logs by @sergargar in #1818
  • chore(audit metadata): retrieve audit metadata from execution by @n4ch04 in #1803
  • build(deps-dev): bump pylint from 2.15.10 to 2.16.0 by @dependabot in #1815
  • build(deps-dev): bump openapi-spec-validator from 0.5.2 to 0.5.4 by @dependabot in #1821

Fixes

  • fix(kms): add symmetric condition to kms_cmk_rotation_enabled check by @sergargar in #1788
  • fix(partition): add dynamic partition in CloudTrail S3 DataEvents checks by @sergargar in #1787
  • fix(metadata): use docs.aws.amazon.com like other aws checks, not docs.amazonaws.cn by @ifduyue in #1790
  • fix(allowlist): validate allowlist for any database format (file, dynamo, s3, etc) by @pplu in #1792
  • fix(accessanalyzer_enabled_without_findings): fixed status findings by @n4ch04 in #1799
  • fix(iam_policy_no_administrative_privileges): check only : permissions by @sergargar in #1802
  • fix(iam_avoid_root_usage): correct date logic by @sergargar in #1801
  • fix(ec2_securitygroup_not_used): ignore default security groups by @sergargar in #1800
  • fix(accessanalyzer): no analyzers using pydantic by @n4ch04 in #1806
  • fix(cloudtrail): improve cloudtrail_cloudwatch_logging_enabled status extended by @sergargar in #1813
  • fix(KeyError): handle service key errors by @sergargar in #1819
  • fix(metadata) fixed typo in title for awslambda_function_not_publicly… by @daftkid in #1826
  • fix(KeyError): handle service key errors by @sergargar in #1831
  • fix(cloudtrail): included advanced data events selectors by @n4ch04 in #1814
  • fix(shub): update link to Security Hub documentation by @sergargar in #1830
  • fix(awslambda_function_no_secrets_in_code): Retrieve Code if set by @jfagoagas in #1833
  • fix(action): Build from release branch by @jfagoagas in #1834
  • fix(errors): solve different errors in KMS, EFS and Lambda by @sergargar in #1835

New Contributors

Full Changelog: 3.1.2...3.1.3