| id: GO-2024-2638 |
| modules: |
| - module: github.com/cosmos/cosmos-sdk |
| versions: |
| - introduced: 0.50.0 |
| - fixed: 0.50.5 |
| vulnerable_at: 0.50.4 |
| packages: |
| - package: github.com/cosmos/cosmos-sdk/baseapp |
| symbols: |
| - ValidateVoteExtensions |
| summary: |- |
| ValidateVoteExtensions function in Cosmos SDK may allow incorrect voting |
| power assumptions in github.com/cosmos/cosmos-sdk |
| description: |- |
| The default ValidateVoteExtensions helper function infers total voting power |
| based on the injected VoteExtension, which are injected by the proposer. |
| |
| If your chain utilizes the ValidateVoteExtensions helper in ProcessProposal, a |
| dishonest proposer can potentially mutate voting power of each validator it |
| includes in the injected VoteExtension, which could have potentially unexpected |
| or negative consequences on modified state. Additional validation on injected |
| VoteExtension data was added to confirm voting power against the state machine. |
| ghsas: |
| - GHSA-95rx-m9m5-m94v |
| references: |
| - advisory: https://github.com/cosmos/cosmos-sdk/security/advisories/GHSA-95rx-m9m5-m94v |
| - fix: https://github.com/cosmos/cosmos-sdk/commit/4467110df40797ebe916c23ebfd45c9ee7583897 |
| - web: https://github.com/cosmos/cosmos-sdk/releases/tag/v0.50.5 |
| source: |
| id: GHSA-95rx-m9m5-m94v |
| created: 2024-05-10T15:59:33.780326-04:00 |
| review_status: REVIEWED |