CVE-2025-22149: JWK Set's HTTP client only overwrites and appends JWK to local cache during refresh

2.1 CVSS

Description

JWK Set (JSON Web Key Set) is a JWK and JWK Set Go implementation. Prior to 0.6.0, the project's provided HTTP client's local JWK Set cache should do a full replacement when the goroutine refreshes the remote JWK Set. The current behavior is to overwrite or append. This is a security issue for use cases that utilize the provided auto-caching HTTP client and where key removal from a JWK Set is equivalent to revocation. The affected auto-caching HTTP client was added in version v0.5.0 and fixed in v0.6.0. The only workaround would be to remove the provided auto-caching HTTP client and replace it with a custom implementation. This involves setting the HTTPClientStorageOptions.RefreshInterval to zero (or not specifying the value).

Classification

CVE ID: CVE-2025-22149

CVSS Base Severity: LOW

CVSS Base Score: 2.1

Affected Products

Vendor: MicahParks

Product: jwkset

Exploit Prediction Scoring System (EPSS)

EPSS Score: 0.05% (probability of being exploited)

EPSS Percentile: 17.82% (scored less or equal to compared to others)

EPSS Date: 2025-02-07 (when was this score calculated)

References

https://github.com/MicahParks/jwkset/security/advisories/GHSA-675f-rq2r-jw82
https://github.com/MicahParks/jwkset/issues/40
https://github.com/MicahParks/jwkset/commit/01db49a90f7f20c7fb39a699a2f19a7a5f379ed3

Timeline