Medium severity · published Oct 23, 2026
CVE-2026-89314
Quadratic-time key_ops duplicate check lets a sub-1 MB JWKS body pin a CPU core for ~15 s
New
6.9
CVSS
0.3%
EPSS
No
On KEV
Description
`jwkFields.CheckConsistency` detected duplicate `key_ops` entries with a pairwise nested loop, making validation cost grow with the **square** of the entry count. Because the check runs on every JWK and JWKS unmarshal, a modestly sized but hostile JWKS document could occupy a CPU core for many seconds.
Exploitation
Is it being used?
Exploit prediction (EPSS)0.3% · higher than 17% of CVEs
Exploited in the wildNo evidence yet
CISA KEVNot listed
Ransomware campaign useNot known
Affected products
Which versions
EK
Eclipse KeyPont - GOSE · Eclipse Foundation
0.7.3 through 0.13.0-rc1; before 1.0.0-rc4 · source: vendor
References
NVD
https://nvd.nist.gov/vuln/detail/CVE-2026-89314
CVE.org
https://www.cve.org/CVERecord?id=CVE-2026-89314
github.com
https://github.com/eclipse-keypont/gose/security/advisories/GHSA-r56w-f43c-828p
More from Eclipse KeyPont - GOSE
8.8
CVE-2026-89320
HmacShaCryptor.Hash never hashes its input — returns constant HMAC_K("") for all inputs, voiding CBC-HMAC JWE integrity
6.9
CVE-2026-89318
JweRsaKeyEncryptionDecryptorImpl.Decrypt panics on attacker-chosen IV length (stdlib GCM.Open reached without nonce-size check)
6.9
CVE-2026-89315
JwtClaims.MarshalJSON panics via reflect.StructOf when any untyped claim key is not a valid Go identifier suffix
6.9
CVE-2026-89312
AesGcmCryptor.Open passes attacker-controlled nonce to cipher.AEAD.Open without length check, causing panic on wrong-size IV
6.3
CVE-2026-89319
JweDirectDecryptorBlock.Decrypt: unchecked _thales_aad length header reachable with forged tag → index-out-of-range / slice-bounds panic and unbounded allocation
