Tink-go 2.8.0 Keyset Validation Bypass via NewHandleWithNoSecrets
What fixes it
No source in this snapshot names a fixed version. The vendor advisories under References are the place to check.
Description
Tink-go (tink-crypto/tink-go) through 2.8.0 contains an input-validation vulnerability where keyset.NewHandleWithNoSecrets() and ReadWithNoSecrets() skip the structural Validate() step before constructing a keyset.Handle, allowing malformed public or no-secret keysets that violate Tink's keyset invariants to be accepted. Attackers can supply a malformed keyset, such as one with an enabled public key lacking a valid primary key or a DESTROYED key with no KeyData, causing inconsistent downstream validation where functions like jwt.JWKSetFromPublicKeysetHandle() process the invalid handle and produce a JWK set, potentially misleading applications that rely on successful handle construction as proof of keyset integrity.
Text from CVE List
Affected versions 1
- tink-goaffected: 2.0.0 through 2.8.0CVE List