Summary
CVE-2026-29000 is a critical vulnerability in the pac4j-jwt library that allows authentication bypass when handling encrypted JWTs due to skipped signature verification in the JwtAuthenticator component. Attackers with access to the server’s RSA public key can forge tokens with arbitrary user and role claims, enabling them to authenticate as any user without credentials. The issue affects versions prior to 4.5.9, 5.7.9, and 6.3.3, and requires immediate patching due to its high impact and ease of exploitation.
Urgent Actions Required
- Upgrade pac4j-jwt to versions 4.5.9, 5.7.9, or 6.3.3 or later immediately
- Review authentication logs for any suspicious or abnormal activity related to token usage
Which Systems Are Vulnerable to CVE-2026-21262?
Technical Overview
-
Vulnerability Type:
Authentication Bypass due to Improper Signature Verification (CWE-347) -
Affected Software/Versions:
- pac4j-jwt versions < 4.5.9
- pac4j-jwt versions < 5.7.9
- pac4j-jwt versions < 6.3.3
-
CVSS Vector: v3.1
- Attack Vector: Network
- Attack Complexity: Low
- Privileges Required: None
- User Interaction: None
- Scope: Unchanged
- Confidentiality Impact: High
- Integrity Impact: High
- Availability Impact: None
-
Patch Availability: Yes, available
Security advisory for pac4j-jwt (JwtAuthenticator) | pac4j
How Does the CVE-2026-29000 Exploit Work?
The attack typically follows these steps:
What Causes CVE-2026-29000?
Vulnerability Root Cause:
This vulnerability arises from improper verification of cryptographic signatures in the pac4j-jwt JwtAuthenticator component. When processing encrypted JWTs (JWE), the application may fail to enforce signature validation if the inner token is unsigned. As a result, the system proceeds to accept the token’s claims without confirming their authenticity. This flaw allows attacker-controlled tokens to be treated as valid identities, leading to authentication bypass without requiring legitimate credentials.
How Can You Mitigate CVE-2026-29000?
If immediate patching is delayed or not possible:
- Review JWT configuration and avoid accepting encrypted JWTs (JWE) if not required.
- Ensure the application explicitly rejects unsigned tokens during validation.
- Enforce strict signature verification for all incoming JWTs.
- Audit authentication flows to confirm tokens are validated before use.
- Monitor logs for unusual or suspicious authentication activity.
Which Assets and Systems Are at Risk?
-
Asset Types Affected:
- Applications using pac4j-jwt - Systems relying on the library for JWT-based authentication
- Java-based services - Applications integrating pac4j for authentication and authorization
- Authentication systems - Implementations using JwtAuthenticator with encrypted JWT (JWE) processing
-
Business-Critical Systems at Risk:
- Applications using JWT authentication - Risk of unauthorized access due to forged tokens
- Systems with role-based access - Potential privilege escalation through manipulated claims
- Environments using centralized authentication (e.g., pac4j-based setups) - Risk of broader access if trust is established from forged identities
-
Exposure Level:
- Network-accessible applications - Vulnerable to remote exploitation without authentication
- Systems exposing RSA public keys - Increased risk if key material is accessible to attackers
- Deployments using encrypted JWTs (JWE) with pac4j-jwt - Specifically exposed under affected configurations
How Can You Detect CVE-2026-29000 Exploitation?
Exploitation Signatures:
Look for authentication attempts using encrypted JWTs (JWE) that may contain unsigned inner tokens or unusual claim values (e.g., elevated roles without proper validation).
Indicators of Compromise (IOCs/IOAs):
- Tokens with unexpected or unauthorized role/subject claims
- Authentication events where access is granted without proper credential validation
- Use of forged or abnormal JWTs during login or API access
Behavioral Indicators:
- Authentication succeeds even when token signatures are not properly verified
- Access to restricted resources using manipulated token claims
- Identity or role information accepted without confirmed signature validation
Alerting Strategy:
- Priority: High
-
Trigger alerts for:
- Suspicious JWT-based authentication events with unusual claims
- Successful logins or access attempts without valid signature verification
- Unexpected privilege elevation linked to token-based authentication
Remediation & Response
-
Remediation Timeline:
- Immediate: Upgrade pac4j-jwt to patched versions (4.5.9, 5.7.9, or 6.3.3).
- Ongoing: Audit systems to ensure no vulnerable versions remain in use.
-
Incident Response Considerations:
- Review authentication logs for suspicious or abnormal token usage
- Identify any unauthorized access or privilege escalation events
- Monitor systems for misuse of forged JWTs
- Strengthen validation controls to ensure all tokens are properly verified
Compliance & Governance Notes
-
Audit Trail Requirement:
- Review and retain authentication logs for suspicious JWT usage
- Track abnormal login or access events linked to token-based authentication
- Record patch deployment details, including upgraded pac4j-jwt versions
-
Policy Alignment:
- Update JWT validation policies to enforce strict signature verification
- Ensure unsigned tokens are explicitly rejected in authentication workflows
- Strengthen key management practices, including secure handling of RSA keys
Explore Fidelis Network Deception Appliance capabilities
- Key specs for CommandPost, Collectors, Sandboxes, and Controllers
- Core details on CPU, memory, storage, and networking
- Insights for deployment and performance planning
Keep Exploring
Detailed insights into critical and emerging CVEs
Explore the full CVE database for broader vulnerability coverage and context.
CVSS Breakdown Table
| Metric | Value | Description |
|---|---|---|
| Base Score | 9.1 | Critical severity indicating significant impact and ease of exploitation |
| Attack Vector | Network | Can be exploited remotely without local access |
| Attack Complexity | Low | Does not require complex conditions to execute |
| Privileges Required | None | No prior authentication needed |
| User Interaction | None | Exploitation does not depend on user actions |
| Scope | Unchanged | Impact remains within the affected component |
| Confidentiality Impact | High | Unauthorized access to sensitive data is possible |
| Integrity Impact | High | Attackers can manipulate identity and role claims |
| Availability Impact | High | No direct impact on system availability |
References: