Skip to content

Releases: prowler-cloud/prowler

Prowler 4.2.0 - 2 Minutes to Midnight

28 May 16:59
4.2.0
37e2c1f
Compare
Choose a tag to compare

The blind men shout,
"Let the creatures out! We'll show the unbelievers"

Here we have Prowler 4.2.0 - 2 Minutes to Midnight 🚀 bringing a new look for Prowler with this Iron Maiden song.

New features to highlight in this version

🥳 New Prowler logo
This version comes with a new look of Prowler thanks to the new logo:
Prowler_Black

💪🏼 55 New AWS checks
Prowler is improving its AWS coverage by including 55 new checks for Kafka, Lightsail, Storage Gateway, DynamoDB, Cognito, EC2, EventBridge, SNS and RDS.
Special thanks to our external contributors @madereddy, @rieck-srlabs and @Davidm4r for doing new checks 🙌
See all the new available checks with prowler aws --list-checks

📝 HTML output is back!
We have listened you and as our community is always first, we brought our HTML back 😄
Get it again with prowler <provider> -M/--output-formats html

✍️ Custom Checks Metadata
Now you can override the all the metadata fields from a check using the --custom-checks-metadata-file custom_checks_metadata.yaml flag.

See more in https://docs.prowler.cloud/en/latest/tutorials/custom-checks-metadata/

🔧 Other issues and bug fixes solved for all the cloud providers

Features

  • feat(aws): Add new kafka service by @puchy22 in #4001
  • feat(aws): Lightsail new service and checks by @puchy22 in #3919
  • feat(aws): New Storage Gateway FileShare KMS CMK Check by @madereddy in #4082
  • feat(aws): new dynamodb_table_cross_account_access check by @sergargar in #3932
  • feat(cognito): Add new checks related with cognito service by @pedrooot in #3898
  • feat(compliance): Update RBI compliance framework by @pedrooot in #4026
  • feat(custom-checks-metadata): add new fields by @pedrooot in #3976
  • feat(dashboard): add idgrupocontrol description in compliance page for ens by @pedrooot in #3910
  • feat(dashboard): add more fields to dashboard overview component by @pedrooot in #4084
  • feat(dashboard): Improve table overview by @pedrooot in #4015
  • feat(dashboard): Multiple changes in compliance page by @pedrooot in #4051
  • feat(ec2): Add 2 new checks + fixers related with EC2 service by @pedrooot in #3827
  • feat(ec2): add EC2 Security group check to verify if at least one port is opened by @sergargar in #3962
  • feat(ec2): New EC2 AWS check (#852) by @rieck-srlabs in #4076
  • feat(ec2): add checks for EC2 instances with exposed ports to the internet by @sergargar in #4029
  • feat(eventbridge): add EventBridge checks by @sergargar in #4020
  • feat(json-ocsf): Add new fields for py-ocsf 0.1.0 by @pedrooot in #3853
  • feat(Kafka): New Kafka AWS checks by @puchy22 in #4021
  • feat(kubernetes): Handle empty --kubeconfig-file by @pedrooot in #3980
  • feat(logo): add new Prowler logo! by @sergargar in #4090
  • feat(output): Add HTML outputs to Prowler by @pedrooot in #4005
  • feat(rds): Add AWS RDS clusters to transport encryption check by @madereddy in #4028
  • feat(rds): Add RDS certificate expiration check by @madereddy in #4002
  • feat(sns): sns topics no http subscriptions by @Davidm4r in #4095

Fixes

Chores

  • chore(aws): Add failed_checks to track by @kagahd in #4018
  • chore(aws): cleanup aws test cases and standardize checks by @madereddy in #4053
  • chore(aws): cleanup aws test cases by @madereddy in #4049
  • chore(check): global_provider is not needed here by @jfagoagas in #3828
  • chore(CLI): start working on CLI by @pedrooot in #4067
  • chore(compliance): change security group any port check by @sergargar in #4019
  • chore(docs): remove unnecessary line by @sergargar in #3933
  • chore(docs): solve some issues by @sergargar in #3868
  • chore(docs): update BridgeCrew links in metadata to our local docs link by @sergargar in #3858
  • chore(docs): add mapping of CSV headers with providers by @sergargar in #4118
  • chore(docs): Update docs related with the Prowler Dashboard by @pedrooot in #4113
  • chore(execute_checks): remove mutelist since it is within the provider by @jfagoagas in #4052
  • chore(gcp): handle list projects API call errors by @sergargar in #3849
  • chore(get_tagged_resources): Add return value type hint by @mlmerchant in #3860
  • chore(global_provider): Move methods to class as static by @jfagoagas in #3896
  • chore(IAM): Improve IAM checks for Azure by @puchy22 in #4061
  • chore(issue-template): Modify issue template to add logs by @pedrooot in #3924
  • chore(labeler): Add cli label by @jfagoagas in #4069
  • chore(logo): resize logo in README and update favicon and architecture by @sergargar in #4092
  • chore(logo-dashboard): update logo in dashboard by @pedrooot in #4088
  • chore(logo-html): update html logo by @pedrooot in #4089
  • chore(mitre azure): add mapping to mitre for azure provider by @n4ch04 in #3857
  • chore(mitre gcp): add mitre mapping for gcp by @n4ch04 in #3899
  • chore(mutelist): improve default AWS mutelist with ControlTower by @sergargar in #3904
  • ch...
Read more

Prowler 3.16.5 - Back in the Village

21 May 17:44
3.16.5
7a290e7
Compare
Choose a tag to compare

What's Changed

Chores

  • chore(backport): include latest changes of v4 in v3 by @sergargar in #4027
    • fix(rds): add ReadReplicaSourceDBInstanceIdentifier to db_instance (#3912)
    • feat(ec2): add EC2 Security group check to verify if at least one port is open (#3962)
    • chore(regions_update): Changes in regions for AWS services. (#3965)
    • chore(rds): support more AWS RDS DB Instance engines in encryption check (#3968)
    • chore(regions_update): Changes in regions for AWS services. (#3971)
    • chore(deps): remove mrestazure deprecated (#3974)
    • chore(regions_update): Changes in regions for AWS services. (#4009)
    • fix(elasticache): make previous comprobations for subnet (#4014)
    • chore(regions_update): Changes in regions for AWS services. (#4017)
    • chore(compliance): change security group any port check. (#4019)
    • chore(regions_update): Changes in regions for AWS services. (#4023)
  • chore(safety-v3): ignore pip vulnerability by @sergargar in #4008

Dependencies

Full Changelog: 3.16.4...3.16.5

Prowler 3.16.4 - Back in the Village

08 May 10:20
3.16.4
0f2dfd3
Compare
Choose a tag to compare

What's Changed

Chores

  • chore(v3): backport latest v4 changes by @sergargar in #3916

    • test(gcp): Add new services tests to GCP (#3796)
    • fix(aws): not show findings when AccessDenieds (#3803)
    • fix(metadata): remove semicolons from metadata texts (#3830)
    • chore(regions_update): Changes in regions for AWS services. (#3848)
    • chore(gcp): handle list projects API call errors (#3849)
    • chore(regions_update): Changes in regions for AWS services. (#3855)
    • fix(KeyError): handle CacheSubnetGroupName keyError (#3856)
    • chore(docs): update BridgeCrew links in metadata to our local docs li…
    • chore(regions_update): Changes in regions for AWS services. (#3862)
    • fix(efs): check all public conditions (#3872)
    • docs(unit-testing): Add GCP services documentation (#3901)
    • fix(vpc): solve subnet route key error (#3902)
    • fix(vpc): solve AWS principal key error (#3903)
    • fix(ec2): handle non-existing private ip (#3906)
    • chore(regions_update): Changes in regions for AWS services. (#3908)
    • test(gcp): Add Compute client the project_ids parameter (#3918)
    • chore(regions_update): Changes in regions for AWS services. (#3915)
    • fix(efs): change public EFS check metadata (#3917)
    • chore(regions_update): Changes in regions for AWS services. (#3929)
  • chore(backport): Add latest changes by @jfagoagas in #3960

    • chore(regions_update): Changes in regions for AWS services. (#3957)
    • fix(s3): Handle if regional client is present (#3959)

Fixes

  • fix(aws): Extend opensearch_service_domains_use_cognito_authentication_for_kibana with SAML by @kagahd in #3861
  • fix(html): Produce valid HTML output in Prowler v3 by @rieck-srlabs in #3863

Dependencies

Full Changelog: 3.16.3...3.16.4

Prowler 3.16.3 - Back in the Village

24 Apr 08:59
3.16.3
3521514
Compare
Choose a tag to compare

What's Changed

Fixes

Chores

Full Changelog: 3.16.2...3.16.3

Prowler 4.1.0 - Aces High

19 Apr 06:44
4.1.0
ebf9be3
Compare
Choose a tag to compare

There goes the siren that warns of the air raid
There comes the sound of the guns sending flak
Out for the scramble we've got to get airborne
Got to get up for the coming attack

Here we have Prowler 4.1.0 Aces High 🚀 ready to help you improve your Cloud security with this Iron Maiden song.

New features to highlight in this version

🖊️ GCP flags to list, exclude/include Project IDs

  • Now the --project-ids flag allows you to use *, as a prefix or suffix, to include the project ids you want to scan.
  • The --list-project-ids allows you to copy and paste values and know the accessible projects to be scanned with the provided crendentials.
  • The --excluded-project-ids flag allows you to exclude the projects to be scanned and it also accepts *.

🔨 13 new fixers (remediations) for AWS

  • We have included 13 new fixers for services like Access Analyzer, CloudTrail, GuardDuty, KMS, Security Hub and IAM. You can get all the available fixers with prowler aws --list-fixers then go per check to remediate the failed findings by prowler aws --check guardduty_is_enabled --fixer.
  • Some of those fixers are configurable using the fixer_config.yaml file present in the prowler/config folder. You can read more about the fixer and how to configure it here

📘 New fields for the OCSF Detection Finding

  • We have included the check_id, compliance and all the Prowler check's metadata within the OCSF Detection Finding that Prowler generates in the .ocsf.json output file. You can read more about this finding format here.

🔧 Other issues and bug fixes solved for all the cloud providers

Features

  • feat(gcp): improve Google Projects scan customization by @sergargar in #3741

Fixes

Chores

Dependencies

Documentation

  • docs(dashboard): Indicate how to change port by @jfagoagas in #3729
  • docs(dashboard): format list by @jfagoagas in #3732
  • docs: readme points to docs.prowler.com to learn everything by @jfagoagas in #3707
  • chore(docs): Support toggle light/dark mode by @puchy22 in #3744
  • docs(outputs): update docs for v4 outputs by @pedrooot in #3734
  • docs(threat-detection): Add threat-detection docs by @pedrooot in #3757
  • docs(compliance): Change images for compliance by @pedrooot in #3760
  • docs(devel-guide): Adding some improves and clarifications to developer guide by @puchy22 in #3749
  • docs(devel-guide): Add provider section and remove audit_info section by @puchy22 in #3756
  • docs(unit-testing): Update the unit testing section by @puchy22 in #3764
  • docs(developer guide): fix broken link by @mlmerchant in #3799
  • docs(ocsf): Add missing fields to the example by @jfagoagas in #3816

New Contributors

Full Changelog: 4.0.1...4.1.0

Prowler 3.16.2 - Back in the Village

15 Apr 08:10
3.16.2
51136fe
Compare
Choose a tag to compare

What's Changed

Fixes

  • fix(aws_lambda): Update obsolete lambda runtimes for v3 by @pedrooot in #3736
  • fix(wafv2): Handle WAFNonexistentItemException v3 by @pedrooot in #3762

Chores

Full Changelog: 3.16.1...3.16.2

Prowler 4.0.1 - The Trooper

09 Apr 10:27
4.0.1
5e52ed8
Compare
Choose a tag to compare

What's Changed

Fixes

Chores

Documentation

Dependencies

Full Changelog: 4.0.0...4.0.1

Prowler 3.16.1 - Back in the Village

09 Apr 10:37
3.16.1
5508043
Compare
Choose a tag to compare

What's Changed

Fixes

Chores

Docs

  • docs(poetry): Add poetry command to install doc dependencies by @puchy22 in #3664
  • docs(azure): test services in Azure added by @Hugo966 in #3649

Builds

  • build(deps): bump msgraph-sdk from 1.1.0 to 1.2.0 by @dependabot in #3605
  • chore(deps): bump google-api-python-client from 2.124.0 to 2.125.0 by @dependabot in #3695
  • chore(deps): bump pydantic from 1.10.14 to 1.10.15 by @dependabot in #3716
  • chore(deps): bump trufflesecurity/trufflehog from 3.71.2 to 3.72.0 by @dependabot in #3694
  • chore(deps-dev): bump moto from 5.0.4 to 5.0.5 by @dependabot in #3696

Full Changelog: 3.16.0...3.16.1

Prowler 4.0.0 - The Trooper

04 Apr 14:11
0659084
Compare
Choose a tag to compare

You'll take my life, but I'll take yours too
You'll fire your musket, but I'll run you through
So when you're waiting for the next attack
You'd better stand, there's no turning back

When I started Prowler almost eight years ago, I thought about calling it The Trooper (thetrooper as in the command line sounds good but I thought prowler was even better). I can say today, with no doubt that this version 4.0 of Prowler, The Trooper, is by far the software that I always wanted to release. Now, as a company, with a whole team dedicated to Prowler (Open Source and SaaS), this is even more exciting. With standard support for AWS, Azure, GCP and also Kubernetes, with all new features, this is the beginning of a new era where Open Cloud Security makes an step forward and we say: hey WE ARE HERE FOR REAL and when you're waiting for the next attack, you'd better stand, there's no turning back

Enjoy Prowler - The Trooooooooper! 🤘🏽🔥 song!

Screenshot 2024-04-04 at 13 00 24

Breaking Changes

  • Allowlist now is called Mutelist
  • Deprecate the AWS flag --sts-endpoint-region since we use AWS STS regional tokens.
  • The --quiet option has been deprecated, now use the --status flag to select the finding's status you want to get from PASS, FAIL or MANUAL.
  • To send only FAILS to AWS Security Hub, now use either --send-sh-only-fails or --security-hub --status FAIL
  • All INFO finding's status has changed MANUAL.

We have deprecated some of our outputs formats:

  • The HTML is replaced for the new Prowler Dashboard (prowler dashboard)
  • The JSON is replaced for the JSON OCSF v1.1.0

New features to highlight in this version

Dashboard

  • Prowler has local dashboard to play with gathered data easier. Run prowler dashboard and enjoy overview data and compliance.
    Screenshot 2024-04-02 at 20 14 04 (1)

🎛️ New Kubernetes provider

  • Prowler has a new Kubernetes provider to improve the security posture of your clusters! Try it now with prowler kubernetes --kubeconfig-file <kube.yaml>
  • CIS Benchmark 1.8 for K8s is included.

📄 Compliance

  • All compliance frameworks are executed by default and stored in a new location: output/compliance

AWS

  • The AWS provider execution by default does not scan unused services, you can enable it with --scan-unused-services.
  • 2 new checks to detect possible threads, try it now with prowler aws --category threat-detection for Enumeration and Privilege Escalation type of activities.

🗺️ Azure

  • All Azure findings includes the location!
  • CIS Benchmark for Azure 2.0 and 2.1 is included.

🔇 Mutelist

  • The renamed mutelist feature is available for all the providers.
  • In AWS a default allowlist is included in the execution.

🌐 Outputs

  • Prowler now the outputs in a common format for all the providers.
  • The only JSON output now follows the OCSF Schema v1.1.0

💻 Providers

  • We have unified the way of including new providers for easier development and to add new ones.

🔨 Fixer

  • We have included a new argument --fix to allow you to remediate findings. You can list all the available fixers with prowler aws --list-fixers

Features

  • feat(mute list): change allowlist to mute list by @sergargar in #3039
  • feat(CloudProvider): introduce global provider Azure&GCP by @n4ch04 in #3069
  • feat(compliance): execute all compliance by default by @sergargar in #3003
  • feat(kubernetes): add Kubernetes provider by @sergargar in #3226
  • feat(status): add --status flag by @sergargar in #3238
  • feat(AwsProvider): include new structure for AWS provider by @n4ch04 in #3252
  • feat(kubernetes): add etcd, controllermanager and rbac services by @sergargar in #3261
  • feat(apiserver): new 9 Kubernetes ApiServer checks by @sergargar in #3288
  • feat(apiserver): new 10 Kubernetes ApiServer checks by @sergargar in #3289
  • feat(apiserver): new 10 Kubernetes ApiServer checks by @sergargar in #3290
  • feat(controllermanager): add checks for Kubernetes Controller Manager by @sergargar in #3291
  • feat(etcd): add checks for Kubernetes etcd by @sergargar in #3294
  • feat(kubelet): add 10 checks of Kubernetes Kubelet service by @sergargar in #3302
  • feat(rbac): add 9 checks of Kubernetes RBAC service by @sergargar in #3314
  • feat(core): add 13 checks of Kubernetes Core service by @sergargar in #3315
  • feat(kubelet): add 6 checks of Kubelet configuration files on the worker nodes by @sergargar in #3335
  • feat(namespace): add --namespaces argument and solve bugs by @sergargar in #3431
  • feat(mutelist): add Mute List for all providers by @sergargar in #3548
  • feat(azure): locations added to Azure findings by @Hugo966 in #3596
  • feat(compliance): Add CIS 1.8 framework for Kubernetes by @pedrooot in #3600
  • feat(cloudtrail): add threat detection checks for AWS (enum and priv escalation) by @sergargar in #3602
  • feat(fixer): add Prowler Fixer feature! by @sergargar in #3634
  • feat(dashboards): add new Prowler dashboards by @pedrooot in #3575

Documentation

Fixes

  • fix(gcp): fix error in generating compliance by @sergargar in #3201
  • fix(kubernetes): improve in-cluster execution by @sergargar in #3397
  • fix(shodan): Make it available for all the providers by @jfagoagas in #3500
  • fix(azure): use subscriptions in get_locations by @jfagoagas in #3541
  • fix(compliance): fix csv output for framework Mitre Attack by @pedrooot in #3574
  • fix(quickinventory): Adapt for the new AWS provider class by @jfagoagas in #3569
  • fix(mapping): handle None attributes in data by @sergargar in #3588
  • fix(securityhub): Add validation and handle errors by @jfagoagas in #3590
  • fix(providers): import modules also from outside of directory by @sergargar in #3595

Chores

Read more

Prowler 3.16.0 - Back in the Village

04 Apr 08:51
3.16.0
fd912b2
Compare
Choose a tag to compare

Turn the spotlights on the people
Switch the dial and eat the worm
Take your chances, kill the engine
Drop your bombs and let it burn

Enjoy the last release of Prowler v3 🤘🏽🔥 with this Iron Maiden song!

New features to highlight in this version

💪🏼 17 New Azure checks

  • Prowler is improving its Azure coverage by including 17 new checks that appears in the CIS Benchmark v2.0.0 and v2.1.0.
    See all the new available checks with prowler azure --list-checks

🔒 Azure CIS v2.0 and v2.1 coverage

  • Prowler includes coverage for two new compliance frameworks for Azure CIS, v2.0.0 and v2.1.0. You can execute these new frameworks with prowler azure --compliance cis_2.1_azure

🔧 More fixes and updates for all the providers

Features

  • feat(azure): New check related with diagnostics settings in subscriptions by @Hugo966 in #3539
  • feat(azure): New check related with logging in Azure Key Vault by @Hugo966 in #3496
  • feat(azure):App check related with http logs by @Hugo966 in #3568
  • feat(entra): New 11 checks related with Microsoft Entra ID by @puchy22 in #3585
  • feat(azure): New check related with trusted launch in vm by @Hugo966 in #3616
  • feat(azure) New Microsoft Entra ID checks by @puchy22 in #3610
  • feat(entra): Manage 403 error for getting user authentication methods by @puchy22 in #3624
  • feat(azure): Check related with roles and vm access with mfa by @Hugo966 in #3638
  • feat(compliance): Add new CIS 2.0 / 2.1 compliance framework for Azure by @pedrooot in #3626

Fixes

  • fix(metadata): change ResourceType Type for AWS Inline Policy Check by @gabrielsoltz in #3599
  • fix(sts): handle China STS regions by @sergargar in #3613
  • fix(azure): fixed check vm_ensure_using_managed_disks metadata by @Hugo966 in #3617
  • fix(aws): break loop after FAIL in SQS and SNS checks by @kagahd in #3618
  • fix(azure): normalize tenant domain set in checks by @sergargar in #3641
  • fix(cis_2.0_azure): add remaining requirement with id 1.25 by @pedrooot in #3646
  • fix(azure): add DefaultValue to Azure CIS compliance by @pedrooot in #3652

Documentation

  • docs: Update number of Azure checks by @jfagoagas in #3639
  • docs(azure): Add new permissions necessary from Microsoft Entra ID by @puchy22 in #3648

Chores

Dependencies

  • build(deps): bump trufflesecurity/trufflehog from 3.70.2 to 3.71.0 by @dependabot in #3603
  • build(deps): bump crazy-max/ghaction-import-gpg from 4 to 6 by @dependabot in #3604
  • build(deps-dev): bump mkdocs-material from 9.5.14 to 9.5.15 by @dependabot in #3606
  • build(deps-dev): bump pytest-cov from 4.1.0 to 5.0.0 by @dependabot in #3607
  • build(deps): bump google-api-python-client from 2.122.0 to 2.123.0 by @dependabot in #3608
  • build(deps): bump tj-actions/changed-files from 43 to 44 by @dependabot in #3627
  • build(deps): bump trufflesecurity/trufflehog from 3.71.0 to 3.71.2 by @dependabot in #3628
  • build(deps): bump google-api-python-client from 2.123.0 to 2.124.0 by @dependabot in #3630
  • build(deps-dev): bump mkdocs-material from 9.5.15 to 9.5.17 by @dependabot in #3633
  • build(deps-dev): bump safety from 3.0.1 to 3.1.0 by @dependabot in #3632
  • build(deps-dev): bump moto from 5.0.3 to 5.0.4 by @dependabot in #3629

Full Changelog: 3.15.3...3.16.0