code-423n4 / 2021-04-vader-findings

1 stars 0 forks source link

Proposals can be cancelled #227

Open code423n4 opened 3 years ago

code423n4 commented 3 years ago

Handle

@cmichelio

Vulnerability details

Vulnerability Details

Anyone can cancel any proposals by calling DAO.cancelProposal(id, id) with oldProposalID == newProposalID. This always passes the minority check as the proposal was approved.

Impact

An attacker can launch a denial of service attack on the DAO governance and prevent any proposals from being executed.

Recommended Mitigation Steps

Check oldProposalID == newProposalID

strictly-scarce commented 3 years ago

This is valid, can fix with a require()

strictly-scarce commented 3 years ago

Funds are not directly lost, would be Severity: 2

0xBrian commented 3 years ago

https://github.com/vetherasset/vaderprotocol-contracts/pull/127/commits/c5fcb890d49115c9aa9cb767737c5d8c13a44b90