Some mathematical operations in cosmwasm-std
use wrapping math instead of
panicking on overflow for very big numbers. This can lead to wrong calculations in contracts
that use these operations.
Affected functions:
Uint{256,512}::pow
/ Int{256,512}::pow
Int{256,512}::neg
Affected if overflow-checks = true
is not set:
Uint{64,128}::pow
/ Int{64,128}::pow
Int{64,128}::neg
Vendor | Product | Version | CPE |
---|---|---|---|
* | cosmwasm-std | * | cpe:2.3:a:*:cosmwasm-std:*:*:*:*:*:*:*:* |
github.com/advisories/GHSA-8724-5xmm-w5xq
github.com/CosmWasm/advisories/blob/main/CWAs/CWA-2024-002.md
github.com/CosmWasm/cosmwasm/commit/607e7fc710fb9441096e8edbaa12879b552c8f65
github.com/CosmWasm/cosmwasm/commit/a6a639e09adc355b5f889a09141649005cb08a46
github.com/CosmWasm/cosmwasm/commit/eff79bcbe73b61178817aacf0a6449437adad6a9
rustsec.org/advisories/RUSTSEC-2024-0338.html