Skip to content
OpenAdvisories
Medium · 5.4 CVE-2022-23507 EUVD-2022-7774GHSA-xqqc-c5gw-c5r5

Light client verification not taking into account chain ID

Published Dec 15, 2022 · Updated Apr 18, 2025 · Assigned by GitHub_M

Description

Tendermint is a high-performance blockchain consensus engine for Byzantine fault tolerant applications. Versions prior to 0.28.0 contain a potential attack via Improper Verification of Cryptographic Signature, affecting anyone using the tendermint-light-client and related packages to perform light client verification (e.g. IBC-rs, Hermes). The light client does not check that the chain IDs of the trusted and untrusted headers match, resulting in a possible attack vector where someone who finds a header from an untrusted chain that satisfies all other verification conditions (e.g. enough overlapping validator signatures) could fool a light client. The attack vector is currently theoretical, and no proof-of-concept exists yet to exploit it on live networks. This issue is patched in version 0.28.0. There are no workarounds.

Affected products

VendorProductAffectedFixed
informalsystems tendermint-rs 0.28.0 —

Affected packages

EcosystemPackageAffectedFixedRecord
crates.io tendermint-light-client < 0.28.0 0.28.0 GHSA-xqqc-c5gw-c5r5
crates.io tendermint-light-client-js < 0.28.0 0.28.0 GHSA-xqqc-c5gw-c5r5
crates.io tendermint-light-client-verifier < 0.28.0 0.28.0 GHSA-xqqc-c5gw-c5r5

References