{"id":"GHSA-79xg-q4qm-7v9w","aliases":["GO-2025-3755"],"status":"published","title":"CWA-2025-006: wasmd's improper error handling may lead to IBC channel opening despite error","description":"# CWA-2025-006: Improper error handling may lead to IBC channel opening despite error\n\n**Severity**\n\nHigh (Considerable + Likely)[^1]\n\n**Affected versions:**\n\n- wasmd 0.60.0\n- wasmd \u003e= 0.51.0 \u003c 0.55.1\n\n**Patched versions:**\n\n- wasmd 0.60.1, 0.55.1, 0.54.1, 0.53.3\n\n## Description of the bug\n\nA contract erroring during IBC channel opening does not prevent the channel from opening.\n\n## Applying the patch\n\nThe patch will be shipped in a wasmd release. You will also have to update `libwasmvm` if you build statically.\nIf you already use the latest / close to latest wasmd, you can update more or less as follows:\n\n1. Check the current wasmd version: `go list -m github.com/CosmWasm/wasmd`\n2. Bump the `github.com/CosmWasm/wasmd` dependency in your go.mod to 0.60.1 (Cosmos SDK 0.53 compatible), 0.55.1 (Cosmos SDK 0.50 compatible), 0.54.1 or 0.53.3; `go mod tidy`; commit.\n3. If you use the static libraries `libwasmvm_muslc.aarch64.a`/`libwasmvm_muslc.x86_64.a`, make sure that you use the same version as your wasmvm version.\n4. Check the updated wasmd version: `go list -m github.com/CosmWasm/wasmd` and ensure you see 0.60.1, 0.55.1, 0.54.1 or 0.53.3.\n5. Follow your regular practices to deploy chain upgrades.\n\nThe patch is consensus breaking.\n\n## Acknowledgement\n\nThis problem was discovered during an audit of the CosmWasm stack performed by Sherlock and funded by ICF/ICL in Q1 2025. Thank you for that work!\n\nIf you believe you have found a bug in the Interchain Stack or would like to contribute to the\nprogram by reporting a bug, please see \u003chttps://hackerone.com/cosmos\u003e.\n\n## Timeline\n\n- 2025-03-03: Auditor informs Confio about this issue.\n- 2025-04-10: Confio developed the patch internally.\n- 2025-06-05: Upcoming patch is announced.\n- 2025-06-10: Patch is released.\n\n[^1]: following Amulet's Severity Classification Framework ACMv1.2: \u003chttps://github.com/interchainio/security/blob/0295254e8645301ccb606d46108a45cede0a73e0/resources/CLASSIFICATION_MATRIX.md\u003e","facts":{"in_kev":false,"known_exploited":false,"public_exploit":false,"fix_available":true},"published":"2025-06-11T14:44:38Z","modified":"2026-03-03T04:56:40Z","fixes":[{"ecosystem":"Go","package":"github.com/CosmWasm/wasmd","fixed_in":["0.60.1","0.55.1","0.54.1","0.53.3"],"sources":["ghsa","osv"]}],"affected":[{"source":"ghsa","ecosystem":"Go","package":"github.com/CosmWasm/wasmd","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0.60.0"},{"last_affected":"0.60.0"},{"fixed":"0.60.1"}]}],"versions":["0.60.0"]},{"source":"ghsa","ecosystem":"Go","package":"github.com/CosmWasm/wasmd","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0.55.0"},{"fixed":"0.55.1"}]}]},{"source":"ghsa","ecosystem":"Go","package":"github.com/CosmWasm/wasmd","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0.54.0"},{"fixed":"0.54.1"}]}]},{"source":"ghsa","ecosystem":"Go","package":"github.com/CosmWasm/wasmd","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0.51.0"},{"fixed":"0.53.3"}]}]},{"source":"osv","ecosystem":"Go","package":"github.com/CosmWasm/wasmd","ranges":[{"type":"SEMVER","events":[{"introduced":"0.60.0"},{"fixed":"0.60.1"}]}],"versions":["0.60.0"]},{"source":"osv","ecosystem":"Go","package":"github.com/CosmWasm/wasmd","ranges":[{"type":"SEMVER","events":[{"introduced":"0.55.0"},{"fixed":"0.55.1"}]}]},{"source":"osv","ecosystem":"Go","package":"github.com/CosmWasm/wasmd","ranges":[{"type":"SEMVER","events":[{"introduced":"0.54.0"},{"fixed":"0.54.1"}]}]},{"source":"osv","ecosystem":"Go","package":"github.com/CosmWasm/wasmd","ranges":[{"type":"SEMVER","events":[{"introduced":"0.51.0"},{"fixed":"0.53.3"}]}]},{"source":"osv","ecosystem":"Go","package":"github.com/CosmWasm/wasmd","ranges":[{"type":"SEMVER","events":[{"introduced":"0.51.0"},{"fixed":"0.53.3"},{"introduced":"0.54.0"},{"fixed":"0.54.1"},{"introduced":"0.55.0"},{"fixed":"0.55.1"},{"introduced":"0.60.0"},{"fixed":"0.60.1"}]}]}],"references":[{"url":"https://github.com/CosmWasm/wasmd/security/advisories/GHSA-79xg-q4qm-7v9w","tags":["web","advisory"]},{"url":"https://github.com/CosmWasm/advisories/blob/main/CWAs/CWA-2025-006.md","tags":["web"]},{"url":"https://github.com/advisories/GHSA-79xg-q4qm-7v9w","tags":["advisory"]},{"url":"https://github.com/CosmWasm/wasmd","tags":["package"]}],"sources":{"ghsa":[{"id":"GHSA-79xg-q4qm-7v9w","title":"CWA-2025-006: wasmd's improper error handling may lead to IBC channel opening despite error","description":"# CWA-2025-006: Improper error handling may lead to IBC channel opening despite error\n\n**Severity**\n\nHigh (Considerable + Likely)[^1]\n\n**Affected versions:**\n\n- wasmd 0.60.0\n- wasmd \u003e= 0.51.0 \u003c 0.55.1\n\n**Patched versions:**\n\n- wasmd 0.60.1, 0.55.1, 0.54.1, 0.53.3\n\n## Description of the bug\n\nA contract erroring during IBC channel opening does not prevent the channel from opening.\n\n## Applying the patch\n\nThe patch will be shipped in a wasmd release. You will also have to update `libwasmvm` if you build statically.\nIf you already use the latest / close to latest wasmd, you can update more or less as follows:\n\n1. Check the current wasmd version: `go list -m github.com/CosmWasm/wasmd`\n2. Bump the `github.com/CosmWasm/wasmd` dependency in your go.mod to 0.60.1 (Cosmos SDK 0.53 compatible), 0.55.1 (Cosmos SDK 0.50 compatible), 0.54.1 or 0.53.3; `go mod tidy`; commit.\n3. If you use the static libraries `libwasmvm_muslc.aarch64.a`/`libwasmvm_muslc.x86_64.a`, make sure that you use the same version as your wasmvm version.\n4. Check the updated wasmd version: `go list -m github.com/CosmWasm/wasmd` and ensure you see 0.60.1, 0.55.1, 0.54.1 or 0.53.3.\n5. Follow your regular practices to deploy chain upgrades.\n\nThe patch is consensus breaking.\n\n## Acknowledgement\n\nThis problem was discovered during an audit of the CosmWasm stack performed by Sherlock and funded by ICF/ICL in Q1 2025. Thank you for that work!\n\nIf you believe you have found a bug in the Interchain Stack or would like to contribute to the\nprogram by reporting a bug, please see \u003chttps://hackerone.com/cosmos\u003e.\n\n## Timeline\n\n- 2025-03-03: Auditor informs Confio about this issue.\n- 2025-04-10: Confio developed the patch internally.\n- 2025-06-05: Upcoming patch is announced.\n- 2025-06-10: Patch is released.\n\n[^1]: following Amulet's Severity Classification Framework ACMv1.2: \u003chttps://github.com/interchainio/security/blob/0295254e8645301ccb606d46108a45cede0a73e0/resources/CLASSIFICATION_MATRIX.md\u003e","status":"published","published":"2025-06-11T14:44:38Z","modified":"2025-06-11T14:44:40Z","updated_at":"2026-11-02T14:38:46.901955Z"}],"osv":[{"id":"GHSA-79xg-q4qm-7v9w","title":"CWA-2025-006: wasmd's improper error handling may lead to IBC channel opening despite error","description":"# CWA-2025-006: Improper error handling may lead to IBC channel opening despite error\n\n**Severity**\n\nHigh (Considerable + Likely)[^1]\n\n**Affected versions:**\n\n- wasmd 0.60.0\n- wasmd \u003e= 0.51.0 \u003c 0.55.1\n\n**Patched versions:**\n\n- wasmd 0.60.1, 0.55.1, 0.54.1, 0.53.3\n\n## Description of the bug\n\nA contract erroring during IBC channel opening does not prevent the channel from opening.\n\n## Applying the patch\n\nThe patch will be shipped in a wasmd release. You will also have to update `libwasmvm` if you build statically.\nIf you already use the latest / close to latest wasmd, you can update more or less as follows:\n\n1. Check the current wasmd version: `go list -m github.com/CosmWasm/wasmd`\n2. Bump the `github.com/CosmWasm/wasmd` dependency in your go.mod to 0.60.1 (Cosmos SDK 0.53 compatible), 0.55.1 (Cosmos SDK 0.50 compatible), 0.54.1 or 0.53.3; `go mod tidy`; commit.\n3. If you use the static libraries `libwasmvm_muslc.aarch64.a`/`libwasmvm_muslc.x86_64.a`, make sure that you use the same version as your wasmvm version.\n4. Check the updated wasmd version: `go list -m github.com/CosmWasm/wasmd` and ensure you see 0.60.1, 0.55.1, 0.54.1 or 0.53.3.\n5. Follow your regular practices to deploy chain upgrades.\n\nThe patch is consensus breaking.\n\n## Acknowledgement\n\nThis problem was discovered during an audit of the CosmWasm stack performed by Sherlock and funded by ICF/ICL in Q1 2025. Thank you for that work!\n\nIf you believe you have found a bug in the Interchain Stack or would like to contribute to the\nprogram by reporting a bug, please see \u003chttps://hackerone.com/cosmos\u003e.\n\n## Timeline\n\n- 2025-03-03: Auditor informs Confio about this issue.\n- 2025-04-10: Confio developed the patch internally.\n- 2025-06-05: Upcoming patch is announced.\n- 2025-06-10: Patch is released.\n\n[^1]: following Amulet's Severity Classification Framework ACMv1.2: \u003chttps://github.com/interchainio/security/blob/0295254e8645301ccb606d46108a45cede0a73e0/resources/CLASSIFICATION_MATRIX.md\u003e","status":"published","published":"2025-06-11T14:44:38Z","modified":"2025-06-12T14:44:45.581487Z","updated_at":"2026-11-02T15:46:41.002603Z"},{"id":"GO-2025-3755","title":"CWA-2025-006: wasmd's improper error handling may lead to IBC channel opening despite error in github.com/CosmWasm/wasmd","description":"CWA-2025-006: wasmd's improper error handling may lead to IBC channel opening despite error in github.com/CosmWasm/wasmd","status":"published","published":"2025-06-12T14:10:01Z","modified":"2026-03-03T04:56:40.481633Z","updated_at":"2026-11-02T15:47:01.728182Z"}]}}
