GHSA-2q97-m5rc-p3gp: Github.com/CosmWasm/wasmvm/v2 CosmWasm VM Incorrect Metering Vulnerability
MODERATEGHSA-2q97-m5rc-p3gp is a MODERATE cosmwasm vm incorrect metering vulnerability (General Security Weakness) affecting Github.com/CosmWasm/wasmvm/v2 libraries in the Go ecosystem. The issue involves cosmwasm vm incorrect metering. Remediation is available by upgrading affected packages to version 2.1.3, 2.0.4, 1.5.5, 2.1.4, 2.0.7, 1.5.8.
GHSA-2q97-m5rc-p3gp at a Glance
How to Fix GHSA-2q97-m5rc-p3gp
To remediate this vulnerability, upgrade all affected Github.com/CosmWasm/wasmvm/v2 dependencies to a patched release. Both direct and transitive dependencies should be checked, as frameworks or security libraries may pull in vulnerable versions transitively.
Upgrade github.com/CosmWasm/wasmvm/v2 to 2.1.3
Upgrade github.com/CosmWasm/wasmvm/v2 to 2.0.4
Upgrade github.com/CosmWasm/wasmvm to 1.5.5
Upgrade cosmwasm-vm to 2.1.4
Upgrade cosmwasm-vm to 2.0.7
Upgrade cosmwasm-vm to 1.5.8
Run the following command in your project directory to verify that all resolved dependencies use the patched release:
inspect dependencies for github.com/CosmWasm/wasmvm/v2
How to Check if You Are Affected
To determine whether your application is affected by GHSA-2q97-m5rc-p3gp, inspect your project dependencies for Github.com/CosmWasm/wasmvm/v2:
inspect dependencies for github.com/CosmWasm/wasmvm/v2
Analyze the terminal output to locate any version of Github.com/CosmWasm/wasmvm/v2 in your dependency tree. If any resolved version matches the vulnerable ranges listed in the table below (for example, versions earlier than 2.1.3), your application is affected.
Note: Verify declared build manifests and deployed runtime container environments.
Technical Details
Vulnerability Mechanism & Technical Analysis
This vulnerability is classified under General Security Weakness. In Github.com/CosmWasm/wasmvm/v2, software state validation or input boundaries are circumvented during processing. Review the official source advisory statement below for specific affected components, classes, and reproduction details.
Source Advisory Statement
GHSA-2q97-m5rc-p3gp Affected Github.com/CosmWasm/wasmvm/v2 Versions
6 component(s)| Product / Package | Ecosystem | Affected Versions | Fixed Version |
|---|---|---|---|
|
github.com/CosmWasm/wasmvm/v2
|
Go |
≥ 2.1.0
< 2.1.3
|
2.1.3
|
|
github.com/CosmWasm/wasmvm/v2
|
Go |
≥ 2.0.0
< 2.0.4
|
2.0.4
|
|
github.com/CosmWasm/wasmvm
|
Go |
< 1.5.5
|
1.5.5
|
|
cosmwasm-vm
|
crates.io |
≥ 2.1.0
< 2.1.4
|
2.1.4
|
|
cosmwasm-vm
|
crates.io |
≥ 2.0.0
< 2.0.7
|
2.0.7
|
|
cosmwasm-vm
|
crates.io |
< 1.5.8
|
1.5.8
|
References
Frequently Asked Questions
What is GHSA-2q97-m5rc-p3gp?
Which Github.com/CosmWasm/wasmvm/v2 versions are affected?
What version fixes GHSA-2q97-m5rc-p3gp?
Is github.com/CosmWasm/wasmvm/v2 affected?
Is github.com/CosmWasm/wasmvm affected?
What CWE is associated with GHSA-2q97-m5rc-p3gp?
How can I check Go dependencies for GHSA-2q97-m5rc-p3gp?
Machine-readable OSV JSON
OSV v1.5 Schema
{
"schema_version" : "1.4.0",
"id" : "GHSA-2q97-m5rc-p3gp",
"modified" : "2024-12-10T16:55:39Z",
"published" : "2024-12-10T16:55:39Z",
"aliases" : [ ],
"summary" : "CosmWasm VM Incorrect metering",
"details" : "# CWA-2024-007\n\n**Severity**\n\nMedium (Moderate + Likely)[^1]\n\n**Affected versions:**\n\n- wasmvm >= 2.1.0, < 2.1.3\n- wasmvm >= 2.0.0, < 2.0.4\n- wasmvm < 1.5.5\n- cosmwasm-vm >= 2.1.0, < 2.1.4\n- cosmwasm-vm >= 2.0.0, < 2.0.7\n- cosmwasm-vm < 1.5.8\n\n**Patched versions:**\n\n- wasmvm 1.5.5, 2.0.4, 2.1.3\n- cosmwasm-vm 1.5.8, 2.0.7, 2.1.4\n\n## Description of the bug\n\n(Blank for now. We'll add more detail once chains had a chance to upgrade.)\n\n## Patch\n\n- 1.5: https://github.com/CosmWasm/cosmwasm/commit/16eabd681790508b13dac8e67f9e6e61045240ea\n- 2.0: https://github.com/CosmWasm/cosmwasm/commit/0e70bd83119b02f99a2c0397f0913e0803750fd9\n- 2.1: https://github.com/CosmWasm/cosmwasm/commit/f5bf24f3acadca2892afd58cc3ce5fdeb932d492\n\n## Applying the patch\n\nThe patch will be shipped in releases of wasmvm. You can update more or less as follows:\n\n1. Check the current wasmvm version: `go list -m github.com/CosmWasm/wasmvm`\n2. Bump the `github.com/CosmWasm/wasmvm` dependency in your go.mod to 1.5.5, 2.0.4, 2.1.3 depending on which minor version you are; `go mod tidy`; commit.\n3. If you use the static libraries `libwasmvm_muslc.aarch64.a`/`libwasmvm_muslc.x86_64.a`, update them accordingly.\n4. Check the updated wasmvm version: `go list -m github.com/CosmWasm/wasmvm` and ensure you see 1.5.5, 2.0.4, 2.1.3.\n5. Follow your regular practices to deploy chain upgrades.\n\nTo double check if the correct library version is loaded at runtime, use this query:\n`<appd> query wasm libwasmvm-version`. It must show 1.5.5, 2.0.4 or 2.1.3.\n\nThe patch is consensus breaking and requires a coordinated upgrade.\n\n## Acknowledgement\n\nThis issue was found by meadow101 who reported it to the Cosmos Bug Bounty Program on HackerOne.\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 <https://hackerone.com/cosmos>.\n\n## Timeline\n\n- 2024-08-28: Confio receives a report through the Cosmos bug bounty program maintained by Amulet.\n- 2024-08-30: Confio security contributors confirm the report.\n- 2024-09-02: Confio developed the patch internally.\n- 2024-09-23: Patch is released.\n\n[^1]: following Amulet's Severity Classification Framework ACMv1: https://github.com/interchainio/security/blob/e0227a1fb4059144aab4f6003eeee7f09912db3a/resources/CLASSIFICATION_MATRIX.md",
"severity" : [ ],
"affected" : [ {
"package" : {
"ecosystem" : "Go",
"name" : "github.com/CosmWasm/wasmvm/v2"
},
"ranges" : [ {
"type" : "ECOSYSTEM",
"events" : [ {
"introduced" : "2.1.0"
}, {
"fixed" : "2.1.3"
} ]
} ]
}, {
"package" : {
"ecosystem" : "Go",
"name" : "github.com/CosmWasm/wasmvm/v2"
},
"ranges" : [ {
"type" : "ECOSYSTEM",
"events" : [ {
"introduced" : "2.0.0"
}, {
"fixed" : "2.0.4"
} ]
} ]
}, {
"package" : {
"ecosystem" : "Go",
"name" : "github.com/CosmWasm/wasmvm"
},
"ranges" : [ {
"type" : "ECOSYSTEM",
"events" : [ {
"introduced" : "0"
}, {
"fixed" : "1.5.5"
} ]
} ]
}, {
"package" : {
"ecosystem" : "crates.io",
"name" : "cosmwasm-vm"
},
"ranges" : [ {
"type" : "ECOSYSTEM",
"events" : [ {
"introduced" : "2.1.0"
}, {
"fixed" : "2.1.4"
} ]
} ]
}, {
"package" : {
"ecosystem" : "crates.io",
"name" : "cosmwasm-vm"
},
"ranges" : [ {
"type" : "ECOSYSTEM",
"events" : [ {
"introduced" : "2.0.0"
}, {
"fixed" : "2.0.7"
} ]
} ]
}, {
"package" : {
"ecosystem" : "crates.io",
"name" : "cosmwasm-vm"
},
"ranges" : [ {
"type" : "ECOSYSTEM",
"events" : [ {
"introduced" : "0"
}, {
"fixed" : "1.5.8"
} ]
} ]
} ],
"references" : [ {
"type" : "WEB",
"url" : "https://github.com/CosmWasm/wasmvm/security/advisories/GHSA-2q97-m5rc-p3gp"
}, {
"type" : "WEB",
"url" : "https://github.com/CosmWasm/cosmwasm/commit/0e70bd83119b02f99a2c0397f0913e0803750fd9"
}, {
"type" : "WEB",
"url" : "https://github.com/CosmWasm/cosmwasm/commit/16eabd681790508b13dac8e67f9e6e61045240ea"
}, {
"type" : "WEB",
"url" : "https://github.com/CosmWasm/cosmwasm/commit/f5bf24f3acadca2892afd58cc3ce5fdeb932d492"
}, {
"type" : "WEB",
"url" : "https://github.com/CosmWasm/advisories/blob/main/CWAs/CWA-2024-007.md"
}, {
"type" : "PACKAGE",
"url" : "https://github.com/CosmWasm/wasmvm"
} ],
"database_specific" : {
"cwe_ids" : [ ],
"severity" : "MODERATE",
"github_reviewed" : true,
"github_reviewed_at" : "2024-12-10T16:55:39Z",
"nvd_published_at" : null
}
}