home / news / sp1-checked-the-label

Checked the label. Never counted the boxes.

Checked the label. Never counted the boxes.

Succinct's zk prover had a bug that let invalid proofs pass. The fix shipped a month ago, listed with the routine bug fixes.

Per Succinct's advisory, SP1's native Rust verifier, versions 6.0.0 to 6.8.0, never checked that a proof's data actually matched the shape it claimed. A malicious prover could use that to get a proof of an invalid execution accepted. The only known affected deployment was Succinct's own Prover Network, which takes proofs from outside provers.

The onchain Groth16 and Plonk verifiers, the ones guarding rollup and bridge money, weren't affected, and no exploit has been reported. The fix went out in v6.8.1 on Sept. 24 with no security note. The advisory went up Oct. 11. The press noticed today.

Zero-knowledge, as advertised: for four weeks, almost nobody knew anything.

Source: Succinct SP1 security advisory on GitHub

Glossary terms

Sources

Educational content only. Not financial advice.

Raise your Crypto IQ, one stream at a time.

New breakdowns and live Token Autopsy streams on YouTube. Free, unlike most lessons in crypto.