{"id":"CVE-2022-23507","aliases":["EUVD-2022-7774","GHSA-xqqc-c5gw-c5r5"],"status":"published","title":"Light client verification not taking into account chain ID","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.","severity":{"version":"3.1","score":5.4,"vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:L/I:L/A:N","level":"medium","assessor":"cna","from":"cve"},"epss":{"day":"2026-11-09","score":0.00316,"percentile":0.24725,"model":"v2026.06.15"},"facts":{"in_kev":false,"known_exploited":false,"public_exploit":false,"fix_available":true},"cwes":["CWE-347"],"published":"2022-12-14T21:35:24Z","modified":"2026-10-28T02:30:25Z","fixes":[{"ecosystem":"crates.io","package":"tendermint-light-client-verifier","fixed_in":["0.28.0"],"sources":["ghsa","osv"]},{"ecosystem":"crates.io","package":"tendermint-light-client","fixed_in":["0.28.0"],"sources":["ghsa","osv"]},{"ecosystem":"crates.io","package":"tendermint-light-client-js","fixed_in":["0.28.0"],"sources":["ghsa","osv"]}],"affected":[{"source":"ghsa","ecosystem":"crates.io","package":"tendermint-light-client-verifier","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"last_affected":"0.27.0"},{"fixed":"0.28.0"}]}]},{"source":"ghsa","ecosystem":"crates.io","package":"tendermint-light-client","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"last_affected":"0.27.0"},{"fixed":"0.28.0"}]}]},{"source":"ghsa","ecosystem":"crates.io","package":"tendermint-light-client-js","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"last_affected":"0.27.0"},{"fixed":"0.28.0"}]}]},{"source":"osv","ecosystem":"crates.io","package":"tendermint-light-client-verifier","ranges":[{"type":"SEMVER","events":[{"introduced":"0"},{"fixed":"0.28.0"}]}]},{"source":"osv","ecosystem":"crates.io","package":"tendermint-light-client","ranges":[{"type":"SEMVER","events":[{"introduced":"0"},{"fixed":"0.28.0"}]}]},{"source":"osv","ecosystem":"crates.io","package":"tendermint-light-client-js","ranges":[{"type":"SEMVER","events":[{"introduced":"0"},{"fixed":"0.28.0"}]}]}],"products":[{"vendor":"informalsystems","product":"tendermint-rs"},{"vendor":"tendermint-light-client-js_project","product":"tendermint-light-client-js"},{"vendor":"tendermint-light-client-verifier_project","product":"tendermint-light-client-verifier"},{"vendor":"tendermint-light-client_project","product":"tendermint-light-client"}],"references":[{"url":"https://github.com/informalsystems/tendermint-rs/security/advisories/GHSA-xqqc-c5gw-c5r5","tags":["x_refsource_CONFIRM","x_transferred","Third Party Advisory","advisory","web"]},{"url":"https://github.com/informalsystems/tendermint-rs/commit/5c32f31b97ac3172775699fe0d4ba6003ca4fb18","tags":["web"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2022-23507","tags":["advisory"]},{"url":"https://github.com/advisories/GHSA-xqqc-c5gw-c5r5"},{"url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2022/23xxx/CVE-2022-23507.json","tags":["advisory"]},{"url":"https://github.com/informalsystems/tendermint-rs","tags":["package"]}],"sources":{"cve":[{"id":"CVE-2022-23507","title":"Light client verification not taking into account chain ID","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.","status":"published","published":"2022-12-15T00:01:04.54Z","modified":"2025-04-18T15:59:54.978Z","cvss":[{"version":"3.1","score":5.4,"vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:L/I:L/A:N","level":"medium","assessor":"cna"}],"cwes":["CWE-347"],"updated_at":"2026-11-02T14:34:29.478363Z"}],"euvd":[{"id":"EUVD-2022-7774","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.","status":"published","published":"2022-12-15T00:01:04Z","modified":"2025-04-18T15:59:54Z","cvss":[{"version":"3.1","score":5.4,"vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:L/I:L/A:N","level":"medium"}],"updated_at":"2026-11-02T20:52:19.650141Z"}],"ghsa":[{"id":"GHSA-xqqc-c5gw-c5r5","title":"Tendermint light client verification not taking into account chain ID","description":"### Impact\n\nAnyone using the `tendermint-light-client` and related packages to perform light client verification (e.g. IBC-rs, Hermes).\n\nAt present, 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.\n\nThe attack vector is currently theoretical, and no proof-of-concept exists yet to exploit it on live networks.\n\n### Patches\n\nUsers of the light client-related crates can currently upgrade to `v0.28.0`.\n\n### Workarounds\n\nNone\n\n### References\n\n- [Light Client specification](https://github.com/tendermint/tendermint/tree/main/spec/light-client)","status":"published","published":"2022-12-14T21:35:24Z","modified":"2023-01-31T05:06:29Z","cvss":[{"version":"3.1","score":5.4,"vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:L/I:L/A:N","level":"medium"}],"cwes":["CWE-347"],"updated_at":"2026-11-02T14:36:29.957996Z"}],"nvd":[{"id":"CVE-2022-23507","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.","status":"published","published":"2022-12-15T19:15:16.723Z","modified":"2026-06-17T04:30:15.717Z","cvss":[{"version":"3.1","score":5.4,"vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:L/I:L/A:N","level":"medium","assessor":"secondary"},{"version":"3.1","score":6.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:N","level":"medium","assessor":"primary"}],"cwes":["CWE-347"],"updated_at":"2026-11-02T14:07:33.649381Z"}],"osv":[{"id":"CVE-2022-23507","title":"Light client verification not taking into account chain ID","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.","status":"published","published":"2022-12-15T00:01:04.54Z","modified":"2026-10-28T02:30:25.31059055Z","cvss":[{"version":"3.1","score":5.4,"vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:L/I:L/A:N","level":"medium"}],"cwes":["CWE-347"],"updated_at":"2026-11-02T15:44:24.061177Z"},{"id":"GHSA-xqqc-c5gw-c5r5","title":"Tendermint light client verification not taking into account chain ID","description":"### Impact\n\nAnyone using the `tendermint-light-client` and related packages to perform light client verification (e.g. IBC-rs, Hermes).\n\nAt present, 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.\n\nThe attack vector is currently theoretical, and no proof-of-concept exists yet to exploit it on live networks.\n\n### Patches\n\nUsers of the light client-related crates can currently upgrade to `v0.28.0`.\n\n### Workarounds\n\nNone\n\n### References\n\n- [Light Client specification](https://github.com/tendermint/tendermint/tree/main/spec/light-client)","status":"published","published":"2022-12-14T21:35:24Z","modified":"2023-11-08T04:08:19.879804Z","cvss":[{"version":"3.1","score":5.4,"vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:L/I:L/A:N","level":"medium"}],"cwes":["CWE-347"],"updated_at":"2026-11-02T15:47:00.198893Z"}]}}
