7.5
HIGH CVSS 3.1
CVE-2026-13089
OIDC::Lite versions through 0.12.1 for Perl allow ID Token signature verification bypass via a token-controlled algorithm allowlist in verify
Description

OIDC::Lite versions through 0.12.1 for Perl allow ID Token signature verification bypass via a token-controlled algorithm allowlist in verify. When the caller does not pin an algorithm, OIDC::Lite::Model::IDToken::verify sets $self->alg($self->header->{alg}) from the token's own header and then calls decode_jwt(token, key, 1, [$self->alg]), handing JSON::WebToken an accepted-algorithm allowlist taken from the untrusted token. A token with alg=none yields ['none'], so decode_jwt returns the claims with no signature check, and a token with alg=HS256 is verified with the RP's RSA public key as the HMAC secret (RS to HS confusion). The ID Token is the OpenID Connect authentication assertion delivered to the Relying Party. Any caller that verifies an ID Token through the unpinned load(token)->verify path, or load(token, key) with only the key pinned, accepts a forged token carrying attacker-chosen claims such as sub and is authenticated as any user. Passing an explicit algorithm so $self->alg is already set bypasses the header-derived allowlist and is not affected. Note that the latest version uploaded to CPAN is 0.10. Later versions are available in the git repository.

INFO

Published Date :

July 22, 2026, 9:17 p.m.

Last Modified :

Oct. 24, 2026, 1:10 p.m.

Remotely Exploit :

Yes !

Source :

9b29abf9-4ab0-4765-b253-1875cd9b441e
Affected Products

The following products are affected by CVE-2026-13089 vulnerability. Even if cvefeed.io is aware of the exact versions of the products that are affected, the information is not represented in the table below.

No affected product recoded yet

CVSS Scores
The Common Vulnerability Scoring System is a standardized framework for assessing the severity of vulnerabilities in software and systems. We collect and displays CVSS scores from various sources for each CVE.
Score Version Severity Vector Exploitability Score Impact Score Source
CVSS 134c704f-9b21-4f2e-91b3-4a467353bcc0
CVSS 3.1 HIGH 134c704f-9b21-4f2e-91b3-4a467353bcc0
Solution
Update OIDC::Lite to prevent ID Token signature verification bypass and ensure secure authentication.
  • Update OIDC::Lite to a version that fixes the signature verification bypass.
  • Ensure explicit algorithms are used for ID token verification.
  • Pin algorithms for ID token verification to prevent bypass.
  • Review and validate all security configurations.
References to Advisories, Solutions, and Tools

Here, you will find a curated list of external links that provide in-depth information, practical solutions, and valuable tools related to CVE-2026-13089.

URL Resource
https://datatracker.ietf.org/doc/html/rfc8725#section-3.1
https://github.com/ritou/p5-oidc-lite/pull/31
https://security.metacpan.org/patches/O/OIDC-Lite/0.10/CVE-2026-13089-r1.patch
http://www.openwall.com/lists/oss-security/2026/07/22/17
CWE - Common Weakness Enumeration

While CVE identifies specific instances of vulnerabilities, CWE categorizes the common flaws or weaknesses that can lead to vulnerabilities. CVE-2026-13089 is associated with the following CWEs:

Common Attack Pattern Enumeration and Classification (CAPEC)

Common Attack Pattern Enumeration and Classification (CAPEC) stores attack patterns, which are descriptions of the common attributes and approaches employed by adversaries to exploit the CVE-2026-13089 weaknesses.

We scan GitHub repositories to detect new proof-of-concept exploits. Following list is a collection of public exploits and proof-of-concepts, which have been published on GitHub (sorted by the most recently updated).

Results are limited to the first 15 repositories due to potential performance issues.

The following list is the news that have been mention CVE-2026-13089 vulnerability anywhere in the article.

The following table lists the changes that have been made to the CVE-2026-13089 vulnerability over time.

Vulnerability history details can be useful for understanding the evolution of a vulnerability, and for identifying the most recent changes that may impact the vulnerability's severity, exploitability, or other characteristics.

  • CVE Translated by [email protected]

    Oct. 24, 2026

    Action Type Old Value New Value
    Added Translation Title: OIDC::Lite de RITOU, Description: Las versiones de OIDC::Lite hasta la 0.12.1 para Perl permiten eludir la verificación de la firma del ID Token mediante una lista blanca de algoritmos controlada por el token en verify. Cuando el llamador no fija un algoritmo, OIDC::Lite::Model::IDToken::verify establece $self -> alg($self -> header -> {alg}) desde la propia cabecera del token y luego llama a decode_jwt(token, key, 1, [$self -> alg]), entregando a JSON::WebToken una lista blanca de algoritmos aceptados tomada del token no confiable. Un token con alg=none produce [’none’], por lo que decode_jwt devuelve las ’claims’ sin verificación de firma, y un token con alg=HS256 se verifica con la clave pública RSA del RP como secreto HMAC (confusión de RS a HS). El ID Token es la aserción de autenticación de OpenID Connect entregada a la parte confiable. Cualquier llamador que verifique un ID Token a través de la ruta no fijada load(token) -> verify, o load(token, key) con solo la clave fijada, acepta un token falsificado que contiene ’claims’ elegidas por el atacante, como ’sub’, y es autenticado como cualquier usuario. Pasar un algoritmo explícito de modo que $self -> alg ya esté establecido elude la lista blanca derivada de la cabecera y no se ve afectado. Tenga en cuenta que la última versión subida a CPAN es la 0.10. Las versiones posteriores están disponibles en el repositorio git.
  • CVE Modified by 134c704f-9b21-4f2e-91b3-4a467353bcc0

    Jul. 27, 2026

    Action Type Old Value New Value
    Added CVSS V3.1 AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N
    Added SSVC {'id': 'CVE-2026-13089', 'role': 'CISA Coordinator', 'options': [{'exploitation': 'none'}, {'automatable': 'yes'}, {'technicalImpact': 'partial'}], 'version': '2.0.3', 'timestamp': '2026-07-27T17:32:56.996183Z'}
  • CVE Modified by af854a3a-2127-422b-91ae-364da2661108

    Jul. 22, 2026

    Action Type Old Value New Value
    Added Reference http://www.openwall.com/lists/oss-security/2026/07/22/17
  • New CVE Received by 9b29abf9-4ab0-4765-b253-1875cd9b441e

    Jul. 22, 2026

    Action Type Old Value New Value
    Added Affected [{'repo': 'https://github.com/ritou/p5-oidc-lite', 'vendor': 'RITOU', 'product': 'OIDC::Lite', 'versions': [{'status': 'affected', 'version': '0', 'versionType': 'custom', 'lessThanOrEqual': '0.12.1'}], 'packageName': 'OIDC-Lite', 'programFiles': ['lib/OIDC/Lite/Model/IDToken.pm'], 'collectionURL': 'https://cpan.org/modules', 'defaultStatus': 'unaffected', 'programRoutines': [{'name': 'OIDC::Lite::Model::IDToken::verify'}]}]
    Added Description OIDC::Lite versions through 0.12.1 for Perl allow ID Token signature verification bypass via a token-controlled algorithm allowlist in verify. When the caller does not pin an algorithm, OIDC::Lite::Model::IDToken::verify sets $self->alg($self->header->{alg}) from the token's own header and then calls decode_jwt(token, key, 1, [$self->alg]), handing JSON::WebToken an accepted-algorithm allowlist taken from the untrusted token. A token with alg=none yields ['none'], so decode_jwt returns the claims with no signature check, and a token with alg=HS256 is verified with the RP's RSA public key as the HMAC secret (RS to HS confusion). The ID Token is the OpenID Connect authentication assertion delivered to the Relying Party. Any caller that verifies an ID Token through the unpinned load(token)->verify path, or load(token, key) with only the key pinned, accepts a forged token carrying attacker-chosen claims such as sub and is authenticated as any user. Passing an explicit algorithm so $self->alg is already set bypasses the header-derived allowlist and is not affected. Note that the latest version uploaded to CPAN is 0.10. Later versions are available in the git repository.
    Added CWE CWE-347
    Added Reference https://datatracker.ietf.org/doc/html/rfc8725#section-3.1
    Added Reference https://github.com/ritou/p5-oidc-lite/pull/31
    Added Reference https://security.metacpan.org/patches/O/OIDC-Lite/0.10/CVE-2026-13089-r1.patch
EPSS is a daily estimate of the probability of exploitation activity being observed over the next 30 days. Following chart shows the EPSS score history of the vulnerability.