This release includes 3 security fixes for security teams reviewing exposed deployments.
Topics
+12 more
Affected surfaces
ReleasePort's take
Light signalVersionβ―5.28.0 adds Okta authentication support across UI, API, and SDK while fixing several containerβimage entrypoint bugs.
Why it matters: The release introduces OAuthβ―2.0 privateβkey JWT credential forms for the Prowler App UI, extending provider coverage to developers and SREs managing multiβcloud security posture.
Summary
AI summaryBroad release touches π Added, π Security Updates, π Fixed, and AWS.
Changes in this release
| Type | Severity | Summary | CVE |
|---|---|---|---|
| Security | Medium |
Upgrades MCP Server `fastmcp` from 2.14.0 to 3.2.4, addressing GHSA-5h2m-4q8j-pqpj, GHSA-rww4-4w9c-7733, and GHSA-vv7q-7jx5-f767 vulnerabilities and dropping vulnerable `lupa`/`urllib3` dependencies. Upgrades MCP Server `fastmcp` from 2.14.0 to 3.2.4, addressing GHSA-5h2m-4q8j-pqpj, GHSA-rww4-4w9c-7733, and GHSA-vv7q-7jx5-f767 vulnerabilities and dropping vulnerable `lupa`/`urllib3` dependencies. Source: llm_adapter@2026-05-22 Confidence: low |
β |
| Feature | Medium |
Adds Okta provider support with OAuth 2.0 private-key JWT credentials form in Prowler App. Adds Okta provider support with OAuth 2.0 private-key JWT credentials form in Prowler App. Source: llm_adapter@2026-05-22 Confidence: high |
β |
| Feature | Medium |
Adds "Resource Metadata / Evidence" tab to finding detail drawer, exposing raw resource attributes via `/api/v1/findings?include=resources`. Adds "Resource Metadata / Evidence" tab to finding detail drawer, exposing raw resource attributes via `/api/v1/findings?include=resources`. Source: llm_adapter@2026-05-22 Confidence: high |
β |
| Feature | Medium |
Adds Prowler for Claude Code plugin and marketplace integration. Adds Prowler for Claude Code plugin and marketplace integration. Source: llm_adapter@2026-05-22 Confidence: high |
β |
| Feature | Medium |
Adds four new Google Workspace services (Sites, Additional Services, Marketplace, Groups) with six related checks via Cloud Identity Policy API. Adds four new Google Workspace services (Sites, Additional Services, Marketplace, Groups) with six related checks via Cloud Identity Policy API. Source: llm_adapter@2026-05-22 Confidence: high |
β |
| Feature | Medium |
Adds AWS check `ses_identity_dkim_enabled` to verify DKIM signing on SES identities. Adds AWS check `ses_identity_dkim_enabled` to verify DKIM signing on SES identities. Source: llm_adapter@2026-05-22 Confidence: high |
β |
| Feature | Medium |
Adds AWS check `sagemaker_models_registry_in_use` to enforce ML governance via SageMaker Model Registry. Adds AWS check `sagemaker_models_registry_in_use` to enforce ML governance via SageMaker Model Registry. Source: llm_adapter@2026-05-22 Confidence: high |
β |
| Feature | Medium |
Adds M365 check `entra_app_registration_client_secret_unused` to flag unused Entra ID app registration client secrets. Adds M365 check `entra_app_registration_client_secret_unused` to flag unused Entra ID app registration client secrets. Source: llm_adapter@2026-05-22 Confidence: high |
β |
| Feature | Medium |
Adds GCP check `cloudsql_instance_cmek_encryption_enabled` to require customerβmanaged encryption keys on Cloud SQL instances. Adds GCP check `cloudsql_instance_cmek_encryption_enabled` to require customerβmanaged encryption keys on Cloud SQL instances. Source: llm_adapter@2026-05-22 Confidence: high |
β |
| Feature | Medium |
Adds four Okta provider checks (`signon_global_session_lifetime_18h`, `signon_global_session_cookies_not_persistent`, `signon_global_session_policy_network_zone_enforced`, `signon_dod_warning_banner_configured`). Adds four Okta provider checks (`signon_global_session_lifetime_18h`, `signon_global_session_cookies_not_persistent`, `signon_global_session_policy_network_zone_enforced`, `signon_dod_warning_banner_configured`). Source: llm_adapter@2026-05-22 Confidence: high |
β |
| Feature | Medium |
Adds `okta` provider support to API (`/api/v1/providers/...`). Adds `okta` provider support to API (`/api/v1/providers/...`). Source: llm_adapter@2026-05-22 Confidence: high |
β |
| Feature | Medium |
Adds `resource.metadata` attribute to API response `/api/v1/findings?include=resources`. Adds `resource.metadata` attribute to API response `/api/v1/findings?include=resources`. Source: llm_adapter@2026-05-22 Confidence: high |
β |
| Feature | Medium |
Adds SDK support for Google Workspace Sites, Additional Services, Marketplace, and Groups checks via Cloud Identity Policy API. Adds SDK support for Google Workspace Sites, Additional Services, Marketplace, and Groups checks via Cloud Identity Policy API. Source: llm_adapter@2026-05-22 Confidence: high |
β |
| Feature | Medium |
Adds SDK check `entra_app_registration_client_secret_unused` for M365 provider. Adds SDK check `entra_app_registration_client_secret_unused` for M365 provider. Source: llm_adapter@2026-05-22 Confidence: high |
β |
| Feature | Medium |
Adds SDK check `cloudsql_instance_cmek_encryption_enabled` for GCP provider. Adds SDK check `cloudsql_instance_cmek_encryption_enabled` for GCP provider. Source: llm_adapter@2026-05-22 Confidence: high |
β |
| Feature | Medium |
Adds SDK Google Workspace Groups service with three new checks. Adds SDK Google Workspace Groups service with three new checks. Source: llm_adapter@2026-05-22 Confidence: high |
β |
| Feature | Medium |
Adds SDK check `ses_identity_dkim_enabled` for AWS provider. Adds SDK check `ses_identity_dkim_enabled` for AWS provider. Source: llm_adapter@2026-05-22 Confidence: high |
β |
| Feature | Medium |
Adds SDK check `sagemaker_models_registry_in_use` for AWS provider. Adds SDK check `sagemaker_models_registry_in_use` for AWS provider. Source: llm_adapter@2026-05-22 Confidence: high |
β |
| Feature | Medium |
Adds SDK Okta checks `signon_dod_warning_banner_configured`, `signon_global_session_lifetime_18h`, `signon_global_session_cookies_not_persistent`, and `signon_global_session_policy_network_zone_enforced`. Adds SDK Okta checks `signon_dod_warning_banner_configured`, `signon_global_session_lifetime_18h`, `signon_global_session_cookies_not_persistent`, and `signon_global_session_policy_network_zone_enforced`. Source: llm_adapter@2026-05-22 Confidence: high |
β |
| Bugfix | Medium |
Fixes OCI Audit service configuration lookup when region differs from tenancy home region. Fixes OCI Audit service configuration lookup when region differs from tenancy home region. Source: llm_adapter@2026-05-22 Confidence: high |
β |
| Bugfix | Medium |
Fixes container image entrypoint to be absolute, resolving GitHub Action and Docker `--workdir` breakage. Fixes container image entrypoint to be absolute, resolving GitHub Action and Docker `--workdir` breakage. Source: llm_adapter@2026-05-22 Confidence: high |
β |
| Bugfix | Medium |
Fixes UI issues: metadata editor scrolling, tab label truncation with tooltips, and moves "View in AWS Console" to resource actions menu. Fixes UI issues: metadata editor scrolling, tab label truncation with tooltips, and moves "View in AWS Console" to resource actions menu. Source: llm_adapter@2026-05-22 Confidence: high |
β |
| Refactor | Medium |
Changes `OktaProvider.test_connection` to accept optional `provider_id` and raise `OktaInvalidProviderIdError` when mismatched. Changes `OktaProvider.test_connection` to accept optional `provider_id` and raise `OktaInvalidProviderIdError` when mismatched. Source: llm_adapter@2026-05-22 Confidence: high |
β |
| Refactor | Medium |
Updates M365 provider PowerShell sessions to use singleβquoted strings for credential variables per best practices. Updates M365 provider PowerShell sessions to use singleβquoted strings for credential variables per best practices. Source: llm_adapter@2026-05-22 Confidence: high |
β |
Full changelog
β¨ New features to highlight in this version
Enjoy them all now for free at https://cloud.prowler.com
π Okta - Prowler App
Okta lands in Prowler App.
Authenticate with read-only OAuth credentials and scan your Okta tenant from the App in minutes.
The signon service also grows from 1 to 5 checks. Four new medium-severity checks cover the rest of the DISA STIG Okta IDaaS V1R2 Global Session Policy and sign-in banner controls:
signon_global_session_lifetime_18hβ V-273203 / OKTA-APP-001665. Global session maximum lifetime must be 18 hours or less.signon_global_session_cookies_not_persistentβ V-273206 / OKTA-APP-001710. Global session cookies must not be persistent across browser restarts.signon_global_session_policy_network_zone_enforcedβ V-279691 / OKTA-APP-003242. Global Session Policy rules must enforce a network zone constraint.signon_dod_warning_banner_configuredβ V-273192 / OKTA-APP-000200. The customized sign-in page must display the DoD-mandated warning banner.
[!NOTE]
The banner check requires reading Okta brands and customized sign-in pages, sookta.brands.readis now part ofDEFAULT_SCOPES. Existing Okta service apps must grant it before upgrading.
Read more in our Okta provider documentation.
Explore all Okta checks at Prowler Hub.
π§Ύ Finding Evidence
The finding detail drawer in the Prowler App now exposes a dedicated "Resource Metadata / Evidence" tab, backed by a new resource.metadata attribute on /api/v1/findings?include=resources.
The tab surfaces the raw resource attributes Prowler captured at scan time, the evidence behind every PASS / FAIL, in one click from the finding. No more jumping out to the source-of-truth console just to confirm what the scanner saw.
π€ Prowler for Claude Code
Prowler ships a Claude Code plugin and marketplace so Claude can drive end-to-end cloud security and compliance assessments through the Prowler MCP server, against a Prowler Cloud-connected account.
Install it from inside Claude Code:
/plugin marketplace add prowler-cloud/prowler
/plugin install prowler@prowler-plugins
From there, Claude can walk an provider through a chosen security or industry framework and remediate findings until the framework is compliant.
[!NOTE]
The plugin is in preview and under active development. Please report issues on GitHub or join the Slack community for feedback.
Read more in our Prowler for Claude Code documentation.
π§ Google Workspace β Sites, Marketplace, Additional services, Groups
The Google Workspace provider gains four new services and six new checks through the Cloud Identity Policy API:
- Sites β
sites_service_disabled: verifies legacy Google Sites is disabled for the organization so users cannot publish unmanaged Sites pages. - Additional services β
additionalservices_external_groups_disabled: verifies the Additional Google services > Google Groups toggle is disabled, blocking users from accessing external groups from their corporate account. - Marketplace β
marketplace_apps_access_restricted: verifies third-party Marketplace apps are restricted (admin-approved only or fully blocked) instead of letting any user install arbitrary apps. - Groups β 3 new checks for Google Groups for Business:
Β -groups_creation_restrictedβ verifies group creation is restricted to admins, preventing user-created groups that bypass access reviews.
Β -groups_external_access_restrictedβ verifies groups cannot be made accessible to users outside the organization.
Β -groups_view_conversations_restrictedβ verifies non-members cannot view group conversations.
Read more in our Google Workspace provider documentation.
Explore all Google Workspace checks at Prowler Hub.
π New Checks
AWS
ses_identity_dkim_enabledβ verifies DKIM signing is enabled on every SES identity (domain or email) so outbound email is cryptographically signed and resistant to spoofing. Thanks to @mohamedsolaiman!sagemaker_models_registry_in_useβ verifies at least one SageMaker Model Package Group has an approved model package, enforcing ML governance workflows through the SageMaker Model Registry. Thanks to @cascioli!
M365
entra_app_registration_client_secret_unusedβ flags Entra ID app registration client secrets that have never been used or have not been used for a configurable amount of days, so dormant credentials can be revoked before they leak. Thanks to @AlexanderSanin and @PrettyFox0!
GCP
cloudsql_instance_cmek_encryption_enabledβ verifies Cloud SQL instances are encrypted with a customer-managed encryption key (CMEK) instead of Google-managed defaults. Thanks to @s1ns3nz0!
π Security Updates
- MCP Server β
fastmcp2.14.0 β 3.2.4 for GHSA-5h2m-4q8j-pqpj, GHSA-rww4-4w9c-7733 and GHSA-vv7q-7jx5-f767. The bump also pulls fixedjaraco.context,python-multipartandstarlette, and drops the vulnerablelupaandurllib3transitive dependencies.
π External Contributors
Thank you to our community contributors for this release!
- @mohamedsolaiman β Add
ses_identity_dkim_enabledcheck for AWS provider in #10923 - @cascioli β Add
sagemaker_models_registry_in_usecheck for AWS provider in #11196 - @s1ns3nz0 β Add
cloudsql_instance_cmek_encryption_enabledcheck for GCP provider in #11023 - @Ker102 β Fix OCI Audit service configuration lookup to use the tenancy home region in #10347
- @sandiyochristan β Use PowerShell best practices for quoting credential variables in the M365 provider in #9997
- @AlexanderSanin and @PrettyFox0 β Add
entra_app_registration_client_secret_unusedcheck for M365 provider in #11232
UI
π Added
oktaprovider support with OAuth 2.0 private-key JWT credentials form (client ID + PEM private key) (#11213)- "Resource Metadata / Evidence" tab in the finding detail drawer (#11187)
π Fixed
- Resource detail panels: metadata editor now scrolls internally with the minimal scrollbar across the finding drawer and
/resources/:id, tab labels truncate with tooltips on narrow widths, and "View in AWS Console" moved from the resource UID row to the resource actions menu (#11325)
API
π Added
oktaprovider support (#11184)resource.metadataattribute included in/api/v1/findings?include=resources(#11187)
SDK
π Added
- Sites, Additional Google services, and Marketplace checks for Google Workspace provider using the Cloud Identity Policy API (#11281)
entra_app_registration_client_secret_unusedcheck for M365 provider (#11232)cloudsql_instance_cmek_encryption_enabledcheck for GCP provider (#11023)- Google Workspace Groups service with 3 new checks (#11186)
ses_identity_dkim_enabledcheck for AWS provider (#10923)sagemaker_models_registry_in_usecheck for AWS provider, verifying that at least one SageMaker Model Package Group has an approved model package to enforce ML governance workflows (#11196)signon_dod_warning_banner_configured,signon_global_session_lifetime_18h,signon_global_session_cookies_not_persistentandsignon_global_session_policy_network_zone_enforcedchecks for Okta provider (#11224)
π Changed
OktaProvider.test_connectionaccepts an optionalprovider_id(org domain) and raisesOktaInvalidProviderIdError(14007) when it doesn't match the authenticated org β guards against stored UID drifting from the credentials' org (#11184)- Use single-quoted strings for credential variables in the M365 provider PowerShell session, following PowerShell best practices for literal values (#9997)
π Fixed
- OCI Audit service configuration lookup when the configured region differs from the tenancy home region (#10347)
- Container image now uses an absolute
ENTRYPOINT(/home/prowler/.venv/bin/prowler) so it works under any runtime--workdir. The relative entrypoint was breaking the official GitHub Action (prowler-cloud/[email protected]) and anydocker runwith a custom-w(#11313)
MCP
π Security
fastmcpfrom 2.14.0 to 3.2.4 for GHSA-5h2m-4q8j-pqpj, GHSA-rww4-4w9c-7733, and GHSA-vv7q-7jx5-f767, which also pulls fixedjaraco.context,python-multipart,starlette, and drops the vulnerablelupa/urllib3transitive deps (#11284)
Security Fixes
- dep: GHSA-5h2m-4q8j-pqpj
- dep: GHSA-rww4-4w9c-7733
- dep: GHSA-vv7q-7jx5-f767
Weekly OSS security release digest.
The CVE patches and breaking changes that affected production tools this week. One email, every Sunday.
No spam, unsubscribe anytime.
Share this release
About Prowler
Tool based on AWS-CLI commands for Amazon Web Services account security assessment and hardening.
Related context
Related tools
Beta — feedback welcome: [email protected]