PT-2026-63495 · Cpan · Oidc::Lite
CVE-2026-13089
·
Published
2026-07-22
·
Updated
2026-07-27
CVSS v3.1
7.5
High
| Vector | AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N |
Name of the Vulnerable Software and Affected Versions
OIDC::Lite versions through 0.12.1
Description
An issue exists where ID Token signature verification can be bypassed due to a token-controlled algorithm allowlist in the
verify() function. When a caller does not specify a pinned algorithm, the OIDC::Lite::Model::IDToken::verify function sets the algorithm based on the token's own header and passes this untrusted allowlist to decode jwt(). This allows an attacker to use alg=none to bypass signature checks entirely or use alg=HS256 to force the system to verify the token using the Relying Party's RSA public key as an HMAC secret, a technique known as RS to HS confusion. Consequently, an attacker can forge tokens with arbitrary claims, such as sub, to authenticate as any user. This occurs when verifying tokens through the unpinned load(token)->verify path or load(token, key) with only the key pinned.Recommendations
Update OIDC::Lite to a version later than 0.12.1.
As a temporary mitigation, pass an explicit algorithm to ensure
$self->alg is set, bypassing the header-derived allowlist.Exploit
Fix
Improper Verification of Cryptographic Signature
Found an issue in the description? Have something to add? Feel free to write us 👾
Weakness Enumeration
Related Identifiers
Affected Products
Oidc::Lite