8.1
HIGH
CVE-2020-15222
OrY Fosite OAuth2 & OpenID Connect Unchecked JWT Token Uniqueness
Description

In ORY Fosite (the security first OAuth2 & OpenID Connect framework for Go) before version 0.31.0, when using "private_key_jwt" authentication the uniqueness of the `jti` value is not checked. When using client authentication method "private_key_jwt", OpenId specification says the following about assertion `jti`: "A unique identifier for the token, which can be used to prevent reuse of the token. These tokens MUST only be used once, unless conditions for reuse were negotiated between the parties". Hydra does not seem to check the uniqueness of this `jti` value. This problem is fixed in version 0.31.0.

INFO

Published Date :

Sept. 24, 2020, 5:15 p.m.

Last Modified :

Nov. 18, 2021, 5:51 p.m.

Remotely Exploitable :

Yes !

Impact Score :

5.2

Exploitability Score :

2.8
Affected Products

The following products are affected by CVE-2020-15222 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.

ID Vendor Product Action
1 Ory fosite
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-2020-15222.

URL Resource
https://github.com/ory/fosite/commit/0c9e0f6d654913ad57c507dd9a36631e1858a3e9 Patch Third Party Advisory
https://github.com/ory/fosite/security/advisories/GHSA-v3q9-2p3m-7g43 Exploit Third Party Advisory
https://openid.net/specs/openid-connect-core-1_0.html#ClientAuthentication Third Party Advisory

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-2020-15222 vulnerability anywhere in the article.

The following table lists the changes that have been made to the CVE-2020-15222 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 Modified by [email protected]

    May. 14, 2024

    Action Type Old Value New Value
  • Reanalysis by [email protected]

    Nov. 18, 2021

    Action Type Old Value New Value
    Removed CWE NIST CWE-287
    Added CWE NIST CWE-345
  • Initial Analysis by [email protected]

    Oct. 05, 2020

    Action Type Old Value New Value
    Added CVSS V2 Metadata Victim must voluntarily interact with attack mechanism
    Added CVSS V2 NIST (AV:N/AC:M/Au:N/C:P/I:P/A:N)
    Added CVSS V3.1 NIST AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:N
    Changed Reference Type https://github.com/ory/fosite/commit/0c9e0f6d654913ad57c507dd9a36631e1858a3e9 No Types Assigned https://github.com/ory/fosite/commit/0c9e0f6d654913ad57c507dd9a36631e1858a3e9 Patch, Third Party Advisory
    Changed Reference Type https://github.com/ory/fosite/security/advisories/GHSA-v3q9-2p3m-7g43 No Types Assigned https://github.com/ory/fosite/security/advisories/GHSA-v3q9-2p3m-7g43 Exploit, Third Party Advisory
    Changed Reference Type https://openid.net/specs/openid-connect-core-1_0.html#ClientAuthentication No Types Assigned https://openid.net/specs/openid-connect-core-1_0.html#ClientAuthentication Third Party Advisory
    Added CWE NIST CWE-287
    Added CPE Configuration OR *cpe:2.3:a:ory:fosite:*:*:*:*:*:*:*:* versions up to (excluding) 0.31.0
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.
CWE - Common Weakness Enumeration

While CVE identifies specific instances of vulnerabilities, CWE categorizes the common flaws or weaknesses that can lead to vulnerabilities. CVE-2020-15222 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-2020-15222 weaknesses.

CAPEC-22: Exploiting Trust in Client Exploiting Trust in Client CAPEC-57: Utilizing REST's Trust in the System Resource to Obtain Sensitive Data Utilizing REST's Trust in the System Resource to Obtain Sensitive Data CAPEC-94: Adversary in the Middle (AiTM) Adversary in the Middle (AiTM) CAPEC-114: Authentication Abuse Authentication Abuse CAPEC-115: Authentication Bypass Authentication Bypass CAPEC-151: Identity Spoofing Identity Spoofing CAPEC-194: Fake the Source of Data Fake the Source of Data CAPEC-593: Session Hijacking Session Hijacking CAPEC-633: Token Impersonation Token Impersonation CAPEC-650: Upload a Web Shell to a Web Server Upload a Web Shell to a Web Server CAPEC-111: JSON Hijacking (aka JavaScript Hijacking) JSON Hijacking (aka JavaScript Hijacking) CAPEC-141: Cache Poisoning Cache Poisoning CAPEC-142: DNS Cache Poisoning DNS Cache Poisoning CAPEC-148: Content Spoofing Content Spoofing CAPEC-218: Spoofing of UDDI/ebXML Messages Spoofing of UDDI/ebXML Messages CAPEC-384: Application API Message Manipulation via Man-in-the-Middle Application API Message Manipulation via Man-in-the-Middle CAPEC-385: Transaction or Event Tampering via Application API Manipulation Transaction or Event Tampering via Application API Manipulation CAPEC-386: Application API Navigation Remapping Application API Navigation Remapping CAPEC-387: Navigation Remapping To Propagate Malicious Content Navigation Remapping To Propagate Malicious Content CAPEC-388: Application API Button Hijacking Application API Button Hijacking CAPEC-665: Exploitation of Thunderbolt Protection Flaws Exploitation of Thunderbolt Protection Flaws CAPEC-701: Browser in the Middle (BiTM) Browser in the Middle (BiTM)
Exploit Prediction

EPSS is a daily estimate of the probability of exploitation activity being observed over the next 30 days.

0.23 }} 0.04%

score

0.61503

percentile

CVSS31 - Vulnerability Scoring System
Attack Vector
Attack Complexity
Privileges Required
User Interaction
Scope
Confidentiality
Integrity
Availability