Highlights
Auth Bypass: 2 prior fixes. Scrutinize any change in this area.
go/ics23.go: most-fixed (1 issue). Treat as high-risk during review.
3 high-severity fixes in this history; regressions here are high-impact.
Recurring patterns
The bug types that recur here, drawn from past fixes, not open vulnerabilities.
Auth Bypass: Inconsistent key hashing during non-existence proof validation allows attackers to bypass verification. If keys are not canonically hashed before lexical comparison as dictated by the specification, proof validation logic can be misled.
Auth Bypass: Insufficient structural checks during membership proof verification in Rust allow forged IAVL proofs. Strict validations on prefix heights, sizes, versions, and suffix sizes are required to prevent structural bypasses.
Signature Malleability / Bypass: A lack of strict mathematical relations between prefix lengths and child sizes in cryptographic operations allows validation bypasses. Spec validation must strictly constrain minimum and maximum boundaries.