CVE-2022-35961Improper Validation of Integrity Check Value in Contracts

Severity
7.5HIGHNVD
NVD6.5GHSA6.5OSV6.5
EPSS
0.2%
top 62.67%
CISA KEV
Not in KEV
Exploit
No known exploits
Timeline
PublishedAug 15
Latest updateMar 27

Description

OpenZeppelin Contracts is a library for secure smart contract development. The functions `ECDSA.recover` and `ECDSA.tryRecover` are vulnerable to a kind of signature malleability due to accepting EIP-2098 compact signatures in addition to the traditional 65 byte signature format. This is only an issue for the functions that take a single `bytes` argument, and not the functions that take `r, v, s` or `r, vs` as separate arguments. The potentially affected contracts are those that implement signat

CVSS vector

CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:NExploitability: 2.8 | Impact: 3.6

Affected Packages5 packages

NVDopenzeppelin/contracts4.1.04.7.3
npmopenzeppelin/contracts4.1.04.7.3
CVEListV5digitalbazaar/forge< 1.4.0

Patches

🔴Vulnerability Details

5
OSV
CVE-2026-33895: Forge (also called `node-forge`) is a native implementation of Transport Layer Security in JavaScript2026-03-27
OSV
Forge has signature forgery in Ed25519 due to missing S > L check2026-03-26
GHSA
Forge has signature forgery in Ed25519 due to missing S > L check2026-03-26
OSV
OpenZeppelin Contracts vulnerable to ECDSA signature malleability2022-08-18
GHSA
OpenZeppelin Contracts vulnerable to ECDSA signature malleability2022-08-18

📋Vendor Advisories

1
Red Hat
node-forge: Forge: Authentication bypass via forged Ed25519 cryptographic signatures2026-03-27
CVE-2022-35961 — Openzeppelin Contracts vulnerability | cvebase