CVE-2021-32701 | Possible bypass of token claim validation when OAuth2 Introspection caching is enabled

ORY Oathkeeper is an Identity & Access Proxy (IAP) and Access Control Decision API that authorizes HTTP requests based on sets of Access Rules. When you make a request to an endpoint that requires the scope `foo` using an access token granted with that `foo` scope, introspection will be valid and that token will be cached. The problem comes when a second requests to an endpoint that requires the scope `bar` is made before the cache has expired. Whether the token is granted or not to the `bar` scope, introspection will be valid. A patch will be released with `v0.38.12-beta.1`. Per default, caching is disabled for the `oauth2_introspection` authenticator. When caching is disabled, this vulnerability does not exist. The cache is checked in [`func (a *AuthenticatorOAuth2Introspection) Authenticate(...)`](https://github.com/ory/oathkeeper/blob/6a31df1c3779425e05db1c2a381166b087cb29a4/pipeline/authn/authenticator_oauth2_introspection.go#L152). From [`tokenFromCache()`](https://github.com/ory/oathkeeper/blob/6a31df1c3779425e05db1c2a381166b087cb29a4/pipeline/authn/authenticator_oauth2_introspection.go#L97) it seems that it only validates the token expiration date, but ignores whether the token has or not the proper scopes. The vulnerability was introduced in PR #424. During review, we failed to require appropriate test coverage by the submitter which is the primary reason that the vulnerability passed the review process.

Published: 2021-06-22 Last update: 2026-06-16 Assigner: [email protected] Source: [email protected]

Conclusion & alert: CVE-2021-32701 is rated Moderate Risk (54.3/100): CVSS High severity, with medium exploitation likelihood (EPSS 1.30%). Mandatory action: Review affected assets and schedule remediation.

Risk is dynamic; we continuously reassess and refresh what is shown on this page as upstream context changes.

Exploit prediction scoring system (EPSS) score for CVE-2021-32701

EPSS lead: Daily EPSS estimates relative likelihood of exploitation; percentile ranks this CVE among scored vulnerabilities (higher = more severe relative rank).

# Date Old EPSS score New EPSS score Delta (New - Old)
1 2026-06-15 0.31% 1.30% +0.99%
2 2025-03-30 0.60% 0.31% -0.29%
3 2025-03-29 0.60%

Full EPSS history (9 records total)

Common vulnerability scoring system (CVSS) metrics for CVE-2021-32701

CVSS metrics for this CVE.

Base score Version Severity Vector Exploitability Impact Score source
7.5 3.1 HIGH
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N Click to expand
Attack vector (AV:N)
Could be attacked over the internet or any normal routed network—not just someone sitting at the machine.
Attack complexity (AC:L)
Once they can reach the bug, pulling it off is straightforward—no weird race conditions or rare setup.
Privileges required (PR:N)
No account or special rights needed—anonymous or random user is enough.
User interaction (UI:N)
Nobody has to click “OK” or open a trap file; it can work without a victim helping.
Scope (S:U)
Damage stays in the same “trust bubble” as the broken component—no big spill into unrelated systems.
Confidentiality (C:H)
Serious risk that confidential data gets exposed in a big way.
Integrity (I:N)
Data isn’t meaningfully altered or forged.
Availability (A:N)
Service keeps running; no real outage angle.
3.9 3.6 [email protected]
7.5 3.1 HIGH
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N Click to expand
Attack vector (AV:N)
Could be attacked over the internet or any normal routed network—not just someone sitting at the machine.
Attack complexity (AC:L)
Once they can reach the bug, pulling it off is straightforward—no weird race conditions or rare setup.
Privileges required (PR:N)
No account or special rights needed—anonymous or random user is enough.
User interaction (UI:N)
Nobody has to click “OK” or open a trap file; it can work without a victim helping.
Scope (S:U)
Damage stays in the same “trust bubble” as the broken component—no big spill into unrelated systems.
Confidentiality (C:H)
Serious risk that confidential data gets exposed in a big way.
Integrity (I:N)
Data isn’t meaningfully altered or forged.
Availability (A:N)
Service keeps running; no real outage angle.
3.9 3.6 [email protected]
4.3 2.0 MEDIUM
AV:N/AC:M/Au:N/C:P/I:N/A:N Click to expand
Access vector (AV:N)
Can be exploited remotely over network reachability.
Access complexity (AC:M)
Exploitation needs some favorable conditions, but not exceptional ones.
Authentication (AU:N)
No authentication is required.
Confidentiality impact (C:P)
Partial confidentiality impact.
Integrity impact (I:N)
No integrity impact.
Availability impact (A:N)
No availability impact.
8.6 2.9 [email protected]

Weakness enumeration for CVE-2021-32701

GitHub Security Advisory for CVE-2021-32701

GHSA-vfvf-6gx5-mqv6 · Severity: high · Ecosystem: go — Incorrect Authorization in ORY Oathkeeper

Affected software / configurations for CVE-2021-32701

Vendor Product Version Raw CPE
ory oathkeeper 0.38.0 cpe:2.3:a:ory:oathkeeper:0.38.0:beta2:*:*:*:*:*:*
ory oathkeeper 0.38.1 cpe:2.3:a:ory:oathkeeper:0.38.1:beta2:*:*:*:*:*:*
ory oathkeeper 0.38.2 cpe:2.3:a:ory:oathkeeper:0.38.2:beta1:*:*:*:*:*:*
ory oathkeeper 0.38.3 cpe:2.3:a:ory:oathkeeper:0.38.3:beta1:*:*:*:*:*:*
ory oathkeeper 0.38.4 cpe:2.3:a:ory:oathkeeper:0.38.4:beta1:*:*:*:*:*:*
ory oathkeeper 0.38.5 cpe:2.3:a:ory:oathkeeper:0.38.5:beta1:*:*:*:*:*:*
ory oathkeeper 0.38.6 cpe:2.3:a:ory:oathkeeper:0.38.6:beta1:*:*:*:*:*:*
ory oathkeeper 0.38.7 cpe:2.3:a:ory:oathkeeper:0.38.7:beta1:*:*:*:*:*:*
ory oathkeeper 0.38.8 cpe:2.3:a:ory:oathkeeper:0.38.8:beta1:*:*:*:*:*:*
ory oathkeeper 0.38.9 cpe:2.3:a:ory:oathkeeper:0.38.9:beta1:*:*:*:*:*:*
ory oathkeeper 0.38.10 cpe:2.3:a:ory:oathkeeper:0.38.10:beta2:*:*:*:*:*:*
ory oathkeeper 0.38.11 cpe:2.3:a:ory:oathkeeper:0.38.11:beta1:*:*:*:*:*:*

References for CVE-2021-32701

cvelogic Threat Intelligence