CVE-2026-40458
Description
PAC4J is vulnerable to Cross-Site Request Forgery (CSRF). A malicious attacker can craft a specially designed website which, when visited by a user, will automatically submit a forged cross-site request with a token whose hash collides with the victim's legitimate CSRF token. Importantly, the attacker does not need to know the victim’s CSRF token or its hash prior to the attack. Collisions in the deterministic String.hashCode() function can be computed directly, reducing the effective token's security space to 32 bits. This bypasses CSRF protection, allowing profile updates, password changes, account linking, and any other state-changing operations to be performed without the victim's consent. This issue was fixed in PAC4J versions 5.7.10 and 6.4.1
How to fix
- pac4j pac4j5.7.10, 6.4.1 or later
- org.pac4j:pac4j-core5.7.10, 6.4.1 or later
Affected products
| Product | Affected versions | Fixed in |
|---|---|---|
| pac4j pac4j | 5.0.0 ≤ v < 5.7.10, 6.0.0 < v < 6.4.1 | 5.7.10, 6.4.1 |
| org.pac4j:pac4j-coreMaven | v < 5.7.10, 6.0.0-RC1 ≤ v < 6.4.1 | 5.7.10, 6.4.1 |
Check your version
Choose the product and enter the version you run to see whether it falls in the affected range.
Attack Surface Management
See the assets tied to your domains, the technologies they run and known vulnerabilities in one list.