CVE-2020-15222
vulnerability analysis and mitigation

Overview

CVE-2020-15222 affects ORY Fosite (OAuth2 & OpenID Connect framework for Go) versions before 0.31.0. The vulnerability is related to the 'private_key_jwt' authentication method where the uniqueness of the 'jti' (JWT ID) value is not checked, allowing potential token reuse. The issue was discovered and disclosed in September 2020 (GitHub Advisory).

Technical details

When using the 'private_key_jwt' client authentication method, the OpenID specification requires that the 'jti' claim in the JWT assertion must be unique and used only once. However, in versions before 0.31.0, ORY Fosite did not implement this check, allowing the same JWT assertion to be reused multiple times to obtain different access tokens. The vulnerability has a CVSS v3.1 base score of 8.1 HIGH (Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:N) (NVD).

Impact

The vulnerability allows an attacker to replay the same client assertion token multiple times, potentially obtaining multiple valid access tokens. This violates the OpenID Connect specification's requirement that JWT assertions should only be used once, which could lead to unauthorized access and security token reuse (GitHub Advisory).

Mitigation and workarounds

The issue was fixed in version 0.31.0 by implementing JTI claim validation. As a workaround for affected versions, users are advised to not allow clients to use private_key_jwt authentication method. The fix involves checking the uniqueness of the JTI value and maintaining a blacklist of used JTIs (GitHub Advisory, Fosite Patch).

Additional resources


SourceThis report was generated using AI

Free Vulnerability Assessment

Benchmark your Cloud Security Posture

Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.

Request assessment

Get a personalized demo

Ready to see Wiz in action?

"Best User Experience I have ever seen, provides full visibility to cloud workloads."
David EstlickCISO
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
Adam FletcherChief Security Officer
"We know that if Wiz identifies something as critical, it actually is."
Greg PoniatowskiHead of Threat and Vulnerability Management