CVE-2026-59151
Full vulnerability record from the local CVENow database.
Description
Prowler is a cloud security platform. Prior to 5.30.3, Prowler's SAML authentication flow trusted the email domain asserted in a SAMLResponse when deciding which tenant should receive the final token, and the ACS finish logic in api/src/backend/api/v1/views.py recalculated the tenant from user.email instead of binding token issuance to the validated SAML configuration. An authenticated attacker with a controlled SAML IdP could complete a valid SAML flow for an attacker-controlled domain while asserting an email address from another configured domain, causing a SAMLToken and tenant-scoped JWT to be issued for the wrong tenant and enabling cross-tenant account takeover. This issue is fixed in version 5.30.3.
View original CVE JSON
{
"id": "CVE-2026-59151",
"sourceIdentifier": "[email protected]",
"published": "2026-07-10T19:17:26.780",
"lastModified": "2026-10-25T15:10:00.147",
"vulnStatus": "Analyzed",
"cveTags": [],
"descriptions": [
{
"lang": "en",
"value": "Prowler is a cloud security platform. Prior to 5.30.3, Prowler's SAML authentication flow trusted the email domain asserted in a SAMLResponse when deciding which tenant should receive the final token, and the ACS finish logic in api/src/backend/api/v1/views.py recalculated the tenant from user.email instead of binding token issuance to the validated SAML configuration. An authenticated attacker with a controlled SAML IdP could complete a valid SAML flow for an attacker-controlled domain while asserting an email address from another configured domain, causing a SAMLToken and tenant-scoped JWT to be issued for the wrong tenant and enabling cross-tenant account takeover. This issue is fixed in version 5.30.3."
},
{
"lang": "es",
"value": "Prowler es una plataforma de seguridad en la nube. Antes de la versión 5.30.3, el flujo de autenticación SAML de Prowler confiaba en el dominio de correo electrónico afirmado en una SAMLResponse al decidir qué inquilino debería recibir el token final, y la lógica de finalización de ACS en api/src/backend/api/v1/views.py recalculaba el inquilino a partir de user.email en lugar de vincular la emisión del token a la configuración SAML validada. Un atacante autenticado con un IdP SAML controlado podría completar un flujo SAML válido para un dominio controlado por el atacante mientras afirmaba una dirección de correo electrónico de otro dominio configurado, lo que provocaría que se emitiera un SAMLToken y un JWT con alcance de inquilino para el inquilino incorrecto y permitiría la toma de control de cuentas entre inquilinos. Este problema está solucionado en la versión 5.30.3."
}
],
"affected": [
{
"source": "[email protected]",
"affectedData": [
{
"vendor": "prowler-cloud",
"product": "prowler",
"versions": [
{
"version": "< 5.30.3",
"status": "affected"
}
]
}
]
}
],
"metrics": {
"cvssMetricV31": [
{
"source": "[email protected]",
"type": "Secondary",
"cvssData": {
"version": "3.1",
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:N",
"baseScore": 9.6,
"baseSeverity": "CRITICAL",
"attackVector": "NETWORK",
"attackComplexity": "LOW",
"privilegesRequired": "LOW",
"userInteraction": "NONE",
"scope": "CHANGED",
"confidentialityImpact": "HIGH",
"integrityImpact": "HIGH",
"availabilityImpact": "NONE"
},
"exploitabilityScore": 3.1,
"impactScore": 5.8
}
],
"ssvcV203": [
{
"source": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
"ssvcData": {
"timestamp": "2026-07-13T18:02:53.136588Z",
"id": "CVE-2026-59151",
"options": [
{
"exploitation": "poc"
},
{
"automatable": "no"
},
{
"technicalImpact": "partial"
}
],
"role": "CISA Coordinator",
"version": "2.0.3"
}
}
]
},
"weaknesses": [
{
"source": "[email protected]",
"type": "Secondary",
"description": [
{
"lang": "en",
"value": "CWE-287"
}
]
}
],
"configurations": [
{
"nodes": [
{
"operator": "OR",
"negate": false,
"cpeMatch": [
{
"vulnerable": true,
"criteria": "cpe:2.3:a:prowler:prowler:*:*:*:*:*:*:*:*",
"versionEndExcluding": "5.30.3",
"matchCriteriaId": "FDDA7D72-36D3-4733-BBF2-7522179611EF"
}
]
}
]
}
],
"references": [
{
"url": "https://github.com/prowler-cloud/prowler/commit/bf3b5c2ba713e533014927141b64948c82c8f32e",
"source": "[email protected]",
"tags": [
"Patch"
]
},
{
"url": "https://github.com/prowler-cloud/prowler/commit/f5ff30ad175bd2edf02cd28872653c1cda5867b7",
"source": "[email protected]",
"tags": [
"Patch"
]
},
{
"url": "https://github.com/prowler-cloud/prowler/pull/11650",
"source": "[email protected]",
"tags": [
"Issue Tracking"
]
},
{
"url": "https://github.com/prowler-cloud/prowler/releases/tag/5.30.3",
"source": "[email protected]",
"tags": [
"Release Notes"
]
},
{
"url": "https://github.com/prowler-cloud/prowler/security/advisories/GHSA-h8m9-jgf8-vwvp",
"source": "[email protected]",
"tags": [
"Exploit",
"Vendor Advisory"
]
},
{
"url": "https://github.com/prowler-cloud/prowler/security/advisories/GHSA-h8m9-jgf8-vwvp",
"source": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
"tags": [
"Exploit",
"Vendor Advisory"
]
}
]
}