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 signature reuse or replay protection by marking the signature itself as used rather than the signed message or a nonce included in it. A user may take a signature that has already been submitted, submit it again in a different form, and bypass this protection. The issue has been patched in 4.7.3.
Details
CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:C/C:H/I:H/A:L
Affected Packages
| Software | From version | Fixed in |
|---|---|---|
| @openzeppelin/contracts | — | — |
| @openzeppelin/contracts-upgradeable | — | — |
| contracts | 4.1.0 | 4.7.3 |
| contracts-upgradeable | 4.1.0 | 4.7.3 |
References
Similar Threats
- Unknown CVE-2025-54070
- Medium CVE-2024-27094
- Medium CVE-2023-49798
- Medium CVE-2023-40014
- Medium CVE-2023-34459
Vulnerability Monitoring
Stay informed about vulnerabilities in your stack
BotEraser monitors your WordPress installation and notifies you when software you use appears in our vulnerability database.
Set Up Free Alerts →No credit card required · Results in minutes
ⓘ Data Notice: The information presented above has been compiled from publicly available internet sources. Boteraser aggregates this data solely for informational purposes and does not independently classify, evaluate, or endorse any findings about the vulnerabilities listed. The accuracy and completeness of this information is the sole responsibility of the original publishers. Boteraser and its operators accept no liability for any decisions made based on this data.