CyberAlerts is shutting down on June 30th, 2025. Thank you for your support!

CVE-2025-24802: Soundness issue with Plonky2 look up tables

8.6 CVSS

Description

Plonky2 is a SNARK implementation based on techniques from PLONK and FRI. Lookup tables, whose length is not divisible by 26 = floor(num_routed_wires / 3) always include the 0 -> 0 input-output pair. Thus a malicious prover can always prove that f(0) = 0 for any lookup table f (unless its length happens to be divisible by 26). The cause of problem is that the LookupTableGate-s are padded with zeros. A workaround from the user side is to extend the table (by repeating some entries) so that its length becomes divisible by 26. This vulnerability is fixed in 1.0.1.

Classification

CVE ID: CVE-2025-24802

CVSS Base Severity: HIGH

CVSS Base Score: 8.6

CVSS Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:N/I:H/A:N

Affected Products

Vendor: 0xPolygonZero

Product: plonky2

Exploit Prediction Scoring System (EPSS)

EPSS Score: 0.05% (probability of being exploited)

EPSS Percentile: 18.25% (scored less or equal to compared to others)

EPSS Date: 2025-02-28 (when was this score calculated)

References

https://github.com/0xPolygonZero/plonky2/security/advisories/GHSA-hj49-h7fq-px5h
https://github.com/0xPolygonZero/plonky2/commit/091047f7f10cae082716f3738ad59a583835f7b6
https://github.com/0xPolygonZero/plonky2/blob/main/plonky2/src/plonk/prover.rs#L97

Timeline