Finality proofs are accepted without being bound to the block they claim to finalise
- Severity
- Critical
- Class
- Protocol logic
- System
- Light client
A single malicious peer or man-in-the-middle can walk a syncing light client onto a forged chain.
Light clients sync quickly by trusting cryptographic finality proofs instead of replaying history. The strength of that shortcut depends entirely on binding the proof to the exact block it finalises. That binding was missing, so a valid-looking proof could be paired with a block it never actually attested to.
During the fast-sync phase a client has little else to go on, which is exactly when a forged pairing does the most damage.
Why it rated Critical
It lets one peer rewrite what a fresh client believes is the canonical chain — the foundational assumption a light client is built on.
The fix class
Verify that the finality proof is cryptographically bound to the specific finalised block before accepting it.

