gnark is a zero-knowledge proof system framework. In versions prior to 0.14.0, the Verify function in eddsa.go and ecdsa.go used the S value from a signature without asserting that 0 ≤ S < order, leading to a signature malleability vulnerability. Because gnark’s native EdDSA and ECDSA circuits lack essential constraints, multiple distinct witnesses can satisfy the same public inputs. In protocols where nullifiers or anti-replay checks are derived from R and S, this enables signature malleability and may allow double spending. This issue has been addressed in version 0.14.0.
Metrics
Affected Vendors & Products
References
History
Fri, 12 Sep 2025 19:15:00 +0000
| Type | Values Removed | Values Added |
|---|---|---|
| CPEs | cpe:2.3:a:consensys:gnark:*:*:*:*:*:*:*:* | |
| Metrics |
cvssV3_1
|
Sat, 23 Aug 2025 11:00:00 +0000
| Type | Values Removed | Values Added |
|---|---|---|
| First Time appeared |
Consensys
Consensys gnark |
|
| Vendors & Products |
Consensys
Consensys gnark |
Sat, 23 Aug 2025 09:15:00 +0000
| Type | Values Removed | Values Added |
|---|---|---|
| Metrics |
ssvc
|
Fri, 22 Aug 2025 20:00:00 +0000
| Type | Values Removed | Values Added |
|---|---|---|
| Description | gnark is a zero-knowledge proof system framework. In versions prior to 0.14.0, the Verify function in eddsa.go and ecdsa.go used the S value from a signature without asserting that 0 ≤ S < order, leading to a signature malleability vulnerability. Because gnark’s native EdDSA and ECDSA circuits lack essential constraints, multiple distinct witnesses can satisfy the same public inputs. In protocols where nullifiers or anti-replay checks are derived from R and S, this enables signature malleability and may allow double spending. This issue has been addressed in version 0.14.0. | |
| Title | gnark is vulnerable to signature malleability in EdDSA and ECDSA due to missing scalar checks | |
| Weaknesses | CWE-347 | |
| References |
| |
| Metrics |
cvssV4_0
|
Status: PUBLISHED
Assigner: GitHub_M
Published: 2025-08-22T19:54:05.854Z
Updated: 2025-08-22T20:06:00.913Z
Reserved: 2025-08-20T14:30:35.009Z
Link: CVE-2025-57801
Updated: 2025-08-22T20:05:55.606Z
Status : Analyzed
Published: 2025-08-22T20:15:33.080
Modified: 2025-09-12T19:05:41.690
Link: CVE-2025-57801
No data.