Description
Improper Authentication in the social account linking path of the Prowler API in Prowler from 5.4.0 before 5.35.0 allows a remote unauthenticated attacker to obtain persistent access to the account of a user who has not yet registered, because ProwlerSocialAccountAdapter.pre_social_login() in api/src/backend/api/adapters.py links a Google or GitHub login to any existing local account that has the same email address as the one returned by the provider, without requiring that the address has been verified by the provider or on the existing account, and without any other check that both accounts belong to the same person. Self registration is open and the new account is usable at once, because UserViewSet.get_permissions() in api/src/backend/api/v1/views.py grants AllowAny to the create action, ACCOUNT_EMAIL_VERIFICATION is set to none in api/src/backend/config/settings/social_login.py, and the Django ModelBackend checks only the password and is_active, not the django-allauth EmailAddress record. An attacker who registers an email address before its owner keeps the password set at registration after the link is made, because sociallogin.connect() does not reset the password and does not disable the existing account, and the owner who later signs in with Google or GitHub is logged into the attacker's account. django-allauth makes the same email based link on its own, because SOCIALACCOUNT_EMAIL_AUTHENTICATION and SOCIALACCOUNT_EMAIL_AUTHENTICATION_AUTO_CONNECT are both set to True in the same settings module. This gives the attacker the cloud provider credentials, scan findings and tenant memberships held in the account.
Published: 2026-10-14
Score: 7.6 High
EPSS: < 1% Very Low
KEV: No
Impact: Unauthenticated account takeover via email‑unverified social linking
Action: Immediate Patch
AI Analysis

Impact

The vulnerability arises from improper authentication in Prowler’s social account linking, allowing an unauthenticated attacker to associate a Google or GitHub login with any local account that shares the same email address without verifying ownership. This grants the attacker persistent access to the victim’s account, including cloud provider credentials, scan findings, and tenant memberships. The flaw is a classic CWE‑287 improper authentication issue, leading to remote account takeover.

Affected Systems

Affected vendor is Prowler, product Prowler. Any installation running version 5.4.0 up to but not including 5.35.0 is vulnerable. Versions before 5.4.0 are unaffected, and 5.35.0 and newer incorporate the fix.

Risk and Exploitability

The CVSS score of 7.6 indicates high severity, and the EPSS score of <1% suggests a very low probability of exploitation, although it is not zero. The vulnerability is not listed in the CISA KEV catalog. Exploitation requires an attacker to register an email address that matches a future victim’s address or identify an existing local account with that email, then use the social login path to link it, bypassing verification. Once linked, the attacker can log in and gain full account capabilities. Given the remote nature and lack of prerequisites beyond access to the social provider, the risk remains significant for environments where self‑registration is enabled without email verification.

Generated by OpenCVE AI on October 15, 2026 at 18:35 UTC.

Remediation

Vendor Solution

Upgrade to Prowler 5.35.0 or later. Affected versions have no environment variable or setting to disable self registration or to require email verification.


OpenCVE Recommended Actions

  • Upgrade to Prowler 5.35.0 or newer to apply the fix.
  • Disable self‑registration or enforce email verification for new accounts in the configuration.
  • Enable multi‑factor authentication for all user accounts to reduce risk if an account is compromised.
  • Monitor logs for unauthorized social login activities and anomalous account linking.

Generated by OpenCVE AI on October 15, 2026 at 18:35 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Sat, 17 Oct 2026 13:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'none', 'Technical Impact': 'total'}, 'version': '2.0.3'}


Wed, 14 Oct 2026 16:15:00 +0000

Type Values Removed Values Added
Description Improper Authentication in the social account linking path of the Prowler API in Prowler from 5.4.0 before 5.35.0 allows a remote unauthenticated attacker to obtain persistent access to the account of a user who has not yet registered, because ProwlerSocialAccountAdapter.pre_social_login() in api/src/backend/api/adapters.py links a Google or GitHub login to any existing local account that has the same email address as the one returned by the provider, without requiring that the address has been verified by the provider or on the existing account, and without any other check that both accounts belong to the same person. Self registration is open and the new account is usable at once, because UserViewSet.get_permissions() in api/src/backend/api/v1/views.py grants AllowAny to the create action, ACCOUNT_EMAIL_VERIFICATION is set to none in api/src/backend/config/settings/social_login.py, and the Django ModelBackend checks only the password and is_active, not the django-allauth EmailAddress record. An attacker who registers an email address before its owner keeps the password set at registration after the link is made, because sociallogin.connect() does not reset the password and does not disable the existing account, and the owner who later signs in with Google or GitHub is logged into the attacker's account. django-allauth makes the same email based link on its own, because SOCIALACCOUNT_EMAIL_AUTHENTICATION and SOCIALACCOUNT_EMAIL_AUTHENTICATION_AUTO_CONNECT are both set to True in the same settings module. This gives the attacker the cloud provider credentials, scan findings and tenant memberships held in the account.
Title Account pre-hijacking in the Prowler API through email based social account linking without verification
First Time appeared Prowler
Prowler prowler
Weaknesses CWE-287
CPEs cpe:2.3:a:prowler:prowler:*:*:*:*:*:*:*:*
Vendors & Products Prowler
Prowler prowler
References
Metrics cvssV4_0

{'score': 7.6, 'vector': 'CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:P/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N'}


cve-icon MITRE

Status: PUBLISHED

Assigner: Secur0

Published:

Updated: 2026-10-16T15:31:52.042Z

Reserved: 2026-09-25T13:10:49.476Z

Link: CVE-2026-100169

cve-icon Vulnrichment

Updated: 2026-10-16T15:29:32.483Z

cve-icon NVD

Status : Deferred

Published: 2026-10-14T16:17:28.350

Modified: 2026-10-16T19:56:15.773

Link: CVE-2026-100169

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-10-16T23:15:14Z

Weaknesses