VulnSea

github.com/ThalesGroup/gose vulnerabilities

CVEs whose affected-version data names the github.com/ThalesGroup/gose package. Each record lists the affected and patched versions; check a specific version with the dependency checker or POST /api/sbom.

9 CVEsRSS

CVE-2026-89312Medium· 6.9
today

AesGcmCryptor.Open passes attacker-controlled nonce to cipher.AEAD.Open without length check, causing panic on wrong-size IV

`AesGcmCryptor.Open` passed a caller-supplied nonce straight to `cipher.AEAD.Open` without checking its length. The Go standard library **panics** rather than returning an error when a GCM nonce is not exactly `NonceSize()` bytes, so a J…

▾ SunlitEclipse Foundation · github.com/ThalesGroup/gosevia CVEORG
CVE-2026-89314Medium· 6.9
today

Quadratic-time key_ops duplicate check lets a sub-1 MB JWKS body pin a CPU core for ~15 s

`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 b…

▾ SunlitEclipse Foundation · github.com/ThalesGroup/gosevia CVEORG
CVE-2026-89313Medium· 6.3
today

JwksTrustStore.Get returns the last fetched JWKS key (err=nil) when the requested kid is absent, instead of nil

`JwksTrustStore.Get` assigned each parsed key to the function's **named return value** while refreshing the JWKS cache. When the requested `kid` was not present, the trailing naked `return` handed the caller the last key in the JWKS docu…

▾ SunlitEclipse Foundation · github.com/ThalesGroup/gosevia CVEORG
CVE-2026-89316Medium· 6.3
today

LoadPublicKey panics on kty/alg mismatch (kty=EC with a non-EC alg) via unchecked *ECDSAOptions type assertion

`LoadPublicKey` resolved an EC key's curve with an unchecked type assertion, `algToOptsMap[alg].(*ECDSAOptions)`. A JWK declaring `"kty":"EC"` together with a non-EC `"alg"` — which RFC 7517 §4.4 permits — reaches that assertion and **pa…

▾ SunlitEclipse Foundation · github.com/ThalesGroup/gosevia CVEORG
CVE-2026-89319Medium· 6.3
today

JweDirectDecryptorBlock.Decrypt: unchecked _thales_aad length header reachable with forged tag → index-out-of-range / slice-bounds panic and unbounded allocation

`JweDirectDecryptorBlock.Decrypt` read a 64-bit plaintext length from the `_thales_aad` protected-header field and used it without any validation. A truncated field panics `binary.BigEndian.Uint64`, an oversized value drives an unbounded…

▾ SunlitEclipse Foundation · github.com/ThalesGroup/gosevia CVEORG
CVE-2026-89318Medium· 6.9
today

JweRsaKeyEncryptionDecryptorImpl.Decrypt panics on attacker-chosen IV length (stdlib GCM.Open reached without nonce-size check)

`JweRsaKeyEncryptionDecryptorImpl.Decrypt` passed the JWE's initialization vector to `cipher.AEAD.Open` without checking its length. The Go standard library **panics** rather than returning an error when a GCM nonce is not exactly `Nonce…

▾ SunlitEclipse Foundation · github.com/ThalesGroup/gosevia CVEORG
CVE-2026-89317Medium· 6.3
today

JwtVerifierImpl.Verify does not enforce the JWS `crit` header (RFC 7515 §4.1.11)

gose parsed the JWS `crit` header into `JwsHeader.Crit` and then never read it. RFC 7515 §4.1.11 requires a recipient to reject a JWS whose listed critical extension parameters it does not understand. gose implements no header extensions…

▾ SunlitEclipse Foundation · github.com/ThalesGroup/gosevia CVEORG
CVE-2026-89320High· 8.8
today

HmacShaCryptor.Hash never hashes its input — returns constant HMAC_K("") for all inputs, voiding CBC-HMAC JWE integrity

`HmacShaCryptor.Hash` never hashed its input. For any input it returned `HMAC_K("")` — the MAC of the empty message under the key. Every AES-CBC-HMAC JWE produced or verified by gose therefore carried an authentication tag that is consta…

▾ TwilightEclipse Foundation · github.com/ThalesGroup/gosevia CVEORG
CVE-2026-89315Medium· 6.9
today

JwtClaims.MarshalJSON panics via reflect.StructOf when any untyped claim key is not a valid Go identifier suffix

`JwtClaims.MarshalJSON` built a Go struct at runtime with `reflect.StructOf`, synthesising a field named `"A" + claimName` for each untyped claim. `reflect.StructOf` **panics** when a field name is not a valid Go identifier, or when it d…

▾ SunlitEclipse Foundation · github.com/ThalesGroup/gosevia CVEORG
github.com/ThalesGroup/gose vulnerabilities (CVEs) · VulnSea