Advisory Database
  • Advisories
  • Dependency Scanning
  1. golang
  2. ›
  3. github.com/MicahParks/jwkset
  4. ›
  5. CVE-2025-22149

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

January 9, 2025 (updated October 31, 2025)

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.

Example attack scenario:

  1. An attacker has stolen the private key for a key published in JWK Set.
  2. The publishers of that JWK Set remove that key from the JWK Set.
  3. Enough time has passed that the program using the auto-caching HTTP client found in github.com/MicahParks/jwkset v0.5.0-v0.5.21 has elapsed its HTTPClientStorageOptions.RefreshInterval duration, causing a refresh of the remote JWK Set.
  4. The attacker is signing content (such as JWTs) with the stolen private key and the system has no other forms of revocation.

References

  • github.com/MicahParks/jwkset
  • github.com/MicahParks/jwkset/commit/01db49a90f7f20c7fb39a699a2f19a7a5f379ed3
  • github.com/MicahParks/jwkset/issues/40
  • github.com/MicahParks/jwkset/pull/41
  • github.com/MicahParks/jwkset/security/advisories/GHSA-675f-rq2r-jw82
  • github.com/advisories/GHSA-675f-rq2r-jw82
  • nvd.nist.gov/vuln/detail/CVE-2025-22149

Code Behaviors & Features

Detect and mitigate CVE-2025-22149 with GitLab Dependency Scanning

Secure your software supply chain by verifying that all open source dependencies used in your projects contain no disclosed vulnerabilities. Learn more about Dependency Scanning →

Affected versions

All versions starting from 0.5.0 before 0.6.0

Fixed versions

  • 0.6.0

Solution

Upgrade to version 0.6.0 or above.

Impact 2.2 LOW

CVSS:3.1/AV:N/AC:H/PR:H/UI:N/S:U/C:N/I:L/A:N

Learn more about CVSS

Weakness

  • CWE-672: Operation on a Resource after Expiration or Release

Source file

go/github.com/MicahParks/jwkset/CVE-2025-22149.yml

Spotted a mistake? Edit the file on GitLab.

  • Site Repo
  • About GitLab
  • Terms
  • Privacy Statement
  • Contact

Page generated Sat, 06 Dec 2025 12:18:50 +0000.