Skip to main content

pac4j-oidc CVE-2026-82462

| EUVDEUVD-2026-68119 MEDIUM
Insufficient Verification of Data Authenticity (CWE-345)
2026-08-29 VulnCheck GHSA-w9jq-4xjw-37gj
6.9
CVSS 4.0 · Vendor: VulnCheck
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Identify target application using pac4j OIDC
  2. Delivery
    Register or authenticate via any OAuth client on the same IdP
  3. Exploit
    Obtain valid access token for attacker-controlled client
  4. Execution
    Submit crafted OIDC callback with access token to target callback endpoint
  5. Persist
    Application bypasses issuer, audience, nonce, and subject validation
  6. Impact
    Authenticated session established without valid credentials

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A08:2025 - Software or Data Integrity Failures
ASVS 5.0
V15 - Secure Coding and Architecture Data authenticity verification
Exploitation Conditions

Exploitation targets any application using pac4j-oidc versions before 6.5.6 in an OIDC Authorization Code or hybrid flow configuration. The critical prerequisite is that the attacker must possess a valid access token issued by the same identity provider (IdP) that the target application trusts - this token may be for any registered OAuth client on that IdP, not necessarily the target application's own client_id. No prior authentication to the target application is required (CVSS PR:N/UI:N). Exploitation is meaningfully constrained in environments where the IdP enforces strict client isolation or where the target application is the only registered client; environments using major shared enterprise IdPs (Okta, Azure AD, Keycloak) with multiple registered clients present a wider attack surface because an attacker may legitimately hold tokens from any of those clients. OIDC deployments using only the implicit flow with mandatory ID token delivery, or where the callback endpoint is behind a WAF rejecting access-token-only requests, are not exploitable via this specific code path.

Impact

The CVSS 4.0 score of 6.9 (AV:N/AC:L/AT:N/PR:N/UI:N/VC:L/VI:L/VA:N) correctly reflects that the attack is remotely exploitable without privileges or user interaction, though the per-session impact metrics of Low confidentiality and Low integrity understate the systemic severity of a broken authentication boundary. The absence of a CISA KEV listing and no publicly identified POC or EPSS score in the available data means exploitation likelihood must be inferred from vulnerability class rather than observed activity - authentication bypass flaws in OIDC libraries targeting shared identity providers are attractive targets, particularly in multi-tenant enterprise SSO environments where multiple OAuth clients share a single IdP. The attack complexity is genuinely low: an attacker needs only to obtain a legitimately issued access token for any client registered with the same IdP, which can be accomplished by controlling or authenticating through any other application on that provider. Compensating controls exist (WAF callback filtering, strict IdP client registration policies) and reduce risk meaningfully. The vendor patch is confirmed and targeted - upgrade to 6.5.6 resolves the issue cleanly. Overall priority should be elevated above the raw numeric score for organizations running shared enterprise IdPs with multiple OIDC clients, where the trust boundary is wider and token acquisition is more feasible.

Exploit ScenarioDerived

An attacker authenticates through a separate, attacker-controlled OAuth client registered on the same identity provider trusted by the target pac4j application, obtaining a legitimately issued access token for their own client. They construct an OIDC callback HTTP request to the vulnerable application's callback endpoint, embedding the access token in place of an authorization code or ID token. Because pac4j-oidc before 6.5.6 does not validate issuer, audience, nonce, or subject on access-token-only callbacks, the application creates an authenticated session - potentially resolving to a victim's identity if the access token carries a matching subject claim.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
Patch available 0.1% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Aug 29, 2026

Authentication bypass in pac4j-oidc before 6.5.6 allows remote unauthenticated attackers to establish authenticated sessions by submitting OIDC callback requests carrying only a third-party access token, bypassing issuer, audience, nonce, and subject validation entirely. Applications built on the pac4j Java security framework that use OIDC for single sign-on are vulnerable to token substitution attacks from any attacker who holds a valid access token issued by the same identity provider for any other registered OAuth client. No public exploit code has been identified at time of analysis; vendor-released patch is available in version 6.5.6.

RemediationAI

Upgrade pac4j-oidc to version 6.5.6 or later, which enforces that OIDC callbacks must include an authorization code or ID token and performs proper issuer, audience, nonce, and subject validation. The fix is confirmed via upstream commit https://github.com/pac4j/pac4j/commit/2270c3ff70e93cc43831e75702acd5135531237e and the vendor security advisory at https://www.pac4j.org/blog/security-advisory-pac4j-core-oidc-saml.html. The same release also patches SAML unsigned LogoutRequest session destruction, an open redirect in logout handling, and a reversed profile type check in CheckProfileTypeAuthorizer - coordinated upgrade is recommended. If an immediate upgrade is blocked, a targeted compensating control is to configure a WAF or reverse-proxy rule on the OIDC callback endpoint to reject requests that contain an access_token parameter but lack a code or id_token parameter; however, this must be carefully validated against your specific OIDC flow configuration and may break legitimate implicit-flow clients. Restricting IdP client registration to minimize the number of OAuth clients that share the same IdP as the vulnerable application reduces the attacker's token-acquisition surface.

Affected VersionsENISA

pac4j 0 <6.5.6

Affected Packages

euvd pac4j fix: 6.5.6

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

pac4j is a Java security library (CPE: cpe:2.3:a:pac4j:pac4j:*:*:*:*:*:*:*:*) providing authentication and authorization adapters for frameworks including Spring Web MVC, Play, Shiro, and others. Its pac4j-oidc module implements OpenID Connect 1.0 on top of OAuth 2.0, and the OidcCredentialsExtractor.java class is responsible for parsing and validating credentials from the OIDC authorization callback. In a correctly implemented Authorization Code Flow, the callback must carry an authorization code (exchanged server-side for tokens) or an ID token, both of which are cryptographically bound to the original request through nonce, audience, and issuer claims. Access tokens are opaque bearer tokens not intended for identity assertion by a relying party - they carry no nonce binding and may be scoped to multiple audiences. The root cause is CWE-345 (Insufficient Verification of Data Authenticity): the extractor accepted callbacks with only an access token and performed no validation of issuer, audience, nonce, or subject, allowing tokens minted for unrelated clients to pass as valid authentication credentials. The fix commit confirms this directly in release notes: 'the OIDC callback no longer accepts an access token without an authorization code or an ID token,' and adds UserInfo subject-to-ID-token subject comparison.

Know when Pac4J gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (VulnCheck) PRIMARY 6.9 MEDIUM
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:L/VI:L/VA:N/SC:N/SI:N/SA:N
vuln.today AI 6.5 MEDIUM

OIDC callback is network-accessible with no authentication or interaction required; scope unchanged as impact is limited to unauthorized session creation in the target application.

3.1 AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:N
4.0 AV:N/AC:L/AT:N/PR:N/UI:N/VC:L/VI:L/VA:N/SC:N/SI:N/SA:N

Primary rating from Vendor (VulnCheck).

CVSS VectorVendor: VulnCheck

Attack Vector
Network
Attack Complexity
Low
Attack Requirements
None
Privileges Required
None
User Interaction
None
Vulnerable system: Confidentiality
Low
Vulnerable system: Integrity
Low
Vulnerable system: Availability
None
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

DescriptionCVE.org

pac4j-oidc before 6.5.6 accepts OIDC callbacks carrying only an access token without authorization code or ID token validation. Attackers can substitute access tokens minted for other clients to create authenticated sessions without proper issuer, audience, nonce, or subject verification.

Threat Intelligence Overview

EPSS Score
0.1%
Top 97% exploitable
Prevalence
Medium
Java security framework used in enterprise SSO and OIDC integrations
Data Quality
7 sources
Confidence: High
EUVD NVD CVE.org EPSS Vulnrichment GitHub VulDB

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity MEDIUM
CISA KEV No
Public POC No
EPSS 0.1%
Patch available Yes
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation
None
System Exposure· derived
Open
Automatable
Yes
Human Impact· derived
Medium
Technical Impact
Partial

Priority Score

34
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +34
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy