Description
The Azure Active Directory (AAD) authentication implementation contained multiple weaknesses in its OAuth 2.0 authorization flow that could allow attackers to bypass important security guarantees provided by the protocol.


The application used the PHP session identifier (session_id()) as the OAuth state parameter. Because session identifiers are long-lived authentication credentials, exposing them in OAuth redirect URLs could leak valid session tokens through browser history, HTTP Referer headers, reverse proxies, access logs, or third-party infrastructure involved in the authentication flow. If obtained by an attacker, the leaked session identifier could potentially be used for session hijacking.


Additionally, the implementation did not regenerate the session identifier after successful authentication, leaving authenticated sessions susceptible to session fixation attacks where an attacker forces a victim to use a known session identifier before login and later reuses that identifier after authentication.


The OAuth state value was also not implemented as a dedicated, single-use nonce. This weakened CSRF protections and increased the risk of replay attacks against the OAuth callback process.


The authentication flow further failed to enforce HTTPS for the configured OAuth redirect URI. If a non-HTTPS redirect URI was used, OAuth authorization codes and access tokens could traverse the network in plaintext, exposing sensitive credentials to network attackers.


Finally, OAuth error responses containing attacker-controlled GET parameters were logged verbatim. An attacker could inject control characters or crafted log content, leading to log forging, log injection, or corruption of audit records.


The fix introduces:



*
A dedicated cryptographically random OAuth state value.


*
Single-use state validation and invalidation.


*
Constant-time state comparison using hash_equals().


*
Session identifier rotation after successful authentication.


*
Enforcement of HTTPS-only redirect URIs.


*
Sanitized and length-limited logging of OAuth error parameters.


AAD Authentication Plugin (OAuth 2.0 / Azure Active Directory integration)
Published: 2026-06-22
Score: 9.3 Critical
EPSS: n/a
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

The Azure Active Directory authentication plugin in MISP misuses the PHP session identifier as the OAuth state parameter, exposing long‑lived session credentials in redirect URLs. This leakage occurs through browser history, HTTP Referer headers, reverse proxies, and application logs, allowing attackers to hijack sessions. In addition, the plugin does not rotate the session identifier after successful login, leaving authenticated sessions vulnerable to session fixation. The state value is also not treated as a dedicated single‑use nonce, weakening CSRF protections and creating a replay attack vector. The implementation permits non‑HTTPS redirect URIs, so authorization codes and access tokens can be transmitted over the network in cleartext, exposing credentials to network attackers. Finally, attacker‑controlled error parameters are logged verbatim, enabling log injection and corruption of application logs. Collectively, these weaknesses let an attacker fully compromise a victim’s authenticated session and tamper with application logs.

Affected Systems

The vulnerability affects the MISP platform’s Azure Active Directory authentication plugin. No specific version information is provided in the advisory.

Risk and Exploitability

The CVSS base score of 9.3 indicates critical severity, and the EPSS score is not available. The vulnerability is not listed in CISA KEV. The likely attack vector is external remote exploitation via the OAuth redirect flow: an attacker can craft or intercept a malicious redirect URI to obtain a session identifier or authorization code, bypass CSRF defenses by reusing the state value, or capture credentials if the redirect URI is not HTTPS. Network attackers could also sniff plaintext tokens if HTTPS enforcement is missing, and log injection is possible through crafted error parameters.

Generated by OpenCVE AI on June 22, 2026 at 15:07 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Apply the latest patched version of the MISP AAD authentication plugin that implements a cryptographically random, single‑use OAuth state, constant‑time state comparison, session rotation after authentication, HTTPS‑only redirect enforcement, and sanitized logging of error parameters.
  • Configure the OAuth redirect URI in MISP to require HTTPS and prevent acceptance of non‑HTTPS URIs from external input.
  • Ensure that session identifiers are regenerated immediately after authentication to mitigate session fixation attacks.

Generated by OpenCVE AI on June 22, 2026 at 15:07 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Mon, 22 Jun 2026 13:45:00 +0000

Type Values Removed Values Added
Description The Azure Active Directory (AAD) authentication implementation contained multiple weaknesses in its OAuth 2.0 authorization flow that could allow attackers to bypass important security guarantees provided by the protocol. The application used the PHP session identifier (session_id()) as the OAuth state parameter. Because session identifiers are long-lived authentication credentials, exposing them in OAuth redirect URLs could leak valid session tokens through browser history, HTTP Referer headers, reverse proxies, access logs, or third-party infrastructure involved in the authentication flow. If obtained by an attacker, the leaked session identifier could potentially be used for session hijacking. Additionally, the implementation did not regenerate the session identifier after successful authentication, leaving authenticated sessions susceptible to session fixation attacks where an attacker forces a victim to use a known session identifier before login and later reuses that identifier after authentication. The OAuth state value was also not implemented as a dedicated, single-use nonce. This weakened CSRF protections and increased the risk of replay attacks against the OAuth callback process. The authentication flow further failed to enforce HTTPS for the configured OAuth redirect URI. If a non-HTTPS redirect URI was used, OAuth authorization codes and access tokens could traverse the network in plaintext, exposing sensitive credentials to network attackers. Finally, OAuth error responses containing attacker-controlled GET parameters were logged verbatim. An attacker could inject control characters or crafted log content, leading to log forging, log injection, or corruption of audit records. The fix introduces: * A dedicated cryptographically random OAuth state value. * Single-use state validation and invalidation. * Constant-time state comparison using hash_equals(). * Session identifier rotation after successful authentication. * Enforcement of HTTPS-only redirect URIs. * Sanitized and length-limited logging of OAuth error parameters. AAD Authentication Plugin (OAuth 2.0 / Azure Active Directory integration)
Title MISP AAD authentication plugin - Improper OAuth State Handling, Missing Session Rotation, Insecure Redirect URI Validation, and Log Injection
Weaknesses CWE-384
References
Metrics cvssV4_0

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


Subscriptions

No data.

cve-icon MITRE

Status: PUBLISHED

Assigner: CIRCL

Published:

Updated: 2026-06-22T12:25:00.416Z

Reserved: 2026-06-22T12:22:04.058Z

Link: CVE-2026-56425

cve-icon Vulnrichment

No data.

cve-icon NVD

No data.

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-06-22T15:15:03Z

Weaknesses