Approved changes feed: RSS · Atom

cpe:2.3:a:consensys:gnark:*:*:*:*:*:*:*:*

part: a version: * update: *

VendorConsensys (fcebead7-fa97-56b1-88f3-44379e82f67a)
ProductGnark (2f6a660b-2832-5483-aa44-8b810ad26af8)
Edition*
Language*
Software edition*
Target software*
Target hardware*
Other*
NotesImported from purl2cpe mapping

PURL mappings

PURLSourceLast updated
pkg:github/consensys/gnark-crypto purl2cpe 2026-06-01 10:13:16.042609
pkg:golang/github.com/consensys/gnark-crypto purl2cpe 2026-06-01 10:13:16.042610

Vulnerability references

IdentifiercpeApplicabilitySubmitteddb.gcve.eu detailsRationale
CVE:CVE-2025-58157 vulnerable 2026-06-08 07:35:17.369147 gnark affected by denial of service when computing scalar multiplication using fake-GLV algorithm
HIGH (7.5)
gnark is a zero-knowledge proof system framework. In version 0.12.0, there is a potential denial of service vulnerability when computing scalar multiplication is using the fake-GLV algorithm. This is because the algorithm didn't converge quickly enough for some of the inputs. This issue has been patched in version 0.13.0.
Published: 2025-08-29T21:21:35.677Z
Updated: 2025-09-02T14:09:48.386Z
Reference links
Imported from gcve-enriched-dumps CVE data
CVE:CVE-2025-57801 vulnerable 2026-06-08 07:33:16.152273 gnark is vulnerable to signature malleability in EdDSA and ECDSA due to missing scalar checks
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.
Published: 2025-08-22T19:54:05.854Z
Updated: 2025-08-22T20:06:00.913Z
Reference links
Imported from gcve-enriched-dumps CVE data
CVE:CVE-2024-50354 vulnerable 2026-06-08 06:52:09.727065 Out-of-memory during deserialization with crafted inputs
MEDIUM (5.5)
gnark is a fast zk-SNARK library that offers a high-level API to design circuits. In gnark 0.11.0 and earlier, deserialization of Groth16 verification keys allocate excessive memory, consuming a lot of resources and triggering a crash with the error fatal error: runtime: out of memory.
Published: 2024-10-31T15:59:30.063Z
Updated: 2024-10-31T16:53:21.298Z
Reference links
Imported from gcve-enriched-dumps CVE data
CVE:CVE-2024-45040 vulnerable 2026-06-08 06:45:54.442815 gnark's commitments to private witnesses in Groth16 as implemented break zero-knowledge property
MEDIUM (5.9)
gnark is a fast zk-SNARK library that offers a high-level API to design circuits. Prior to version 0.11.0, commitments to private witnesses in Groth16 as implemented break the zero-knowledge property. The vulnerability affects only Groth16 proofs with commitments. Notably, PLONK proofs are not affected. The vulnerability affects the zero-knowledge property of the proofs - in case the witness (secret or internal) values are small, then the attacker may be able to enumerate all possible choices to deduce the actual value. If the possible choices for the variables to be committed is large or there are many values committed, then it would be computationally infeasible to enumerate all valid choices. It doesn't affect the completeness/soundness of the proofs. The vulnerability has been fixed in version 0.11.0. The patch to fix the issue is to add additional randomized value to the list of committed value at proving time to mask the rest of the values which were committed. As a workaround, the user can manually commit to a randomized value.
Published: 2024-09-06T12:53:30.622Z
Updated: 2024-09-06T13:57:49.796Z
Reference links
Imported from gcve-enriched-dumps CVE data
CVE:CVE-2024-45039 vulnerable 2026-06-08 06:45:54.441294 gnark's Groth16 commitment extension unsound for more than one commitment
MEDIUM (6.2)
gnark is a fast zk-SNARK library that offers a high-level API to design circuits. Versions prior to 0.11.0 have a soundness issue - in case of multiple commitments used inside the circuit the prover is able to choose all but the last commitment. As gnark uses the commitments for optimized non-native multiplication, lookup checks etc. as random challenges, then it could impact the soundness of the whole circuit. However, using multiple commitments has been discouraged due to the additional cost to the verifier and it has not been supported in the recursive in-circuit Groth16 verifier and Solidity verifier. gnark's maintainers expect the impact of the issue be very small - only for the users who have implemented the native Groth16 verifier or are using it with multiple commitments. We do not have information of such users. The issue has been patched in version 0.11.0. As a workaround, users should follow gnark maintainers' recommendation to use only a single commitment and then derive in-circuit commitments as needed using the `std/multicommit` package.
Published: 2024-09-06T12:56:15.080Z
Updated: 2024-09-06T13:59:16.727Z
Reference links
Imported from gcve-enriched-dumps CVE data
CVE:CVE-2023-44378 vulnerable 2026-06-08 06:12:40.865244 db.gcve.eu details were skipped to keep the page responsive. Imported from gcve-enriched-dumps CVE data

Contribute

You can submit an edit proposal for this CPE entry or suggest a related product/vendor addition using the action button above.