Quorum can be manipulate to pass proposals hat do not meet it.
For a quorum to get executed it first needs to have more FOR than AGAINST votes, but even before that it needs to pass the requiredQuorum, which is a percentage of all votes compared to the total.
https://github.com/Cyfrin/2025-02-raac/blob/main/contracts/core/governance/proposals/Governance.sol#L288
Currently it's 4% from veRAAC's totalSupply.
https://github.com/Cyfrin/2025-02-raac/blob/main/contracts/core/governance/proposals/Governance.sol#L353-L355
However the issue we face here is that a user can vote and after voting reduce the total supply i order for this proposal to pass the quorum.
Example:
Quorum is 20% of totalSupply, where 100k tokens exist
Users vote, and get 55% FOR and 45 AGAINST, however they only have 19k (19%) of the total voting power, so the quorum in not passed
Right after the proposal finished a user or a few withdraw all of their token in order to lower the totalSupply
The new totalSupply is 95k and 19k out of that is 20%
They schedule and execute the proposal
Note that totalSupply can also get lowered with time, just as some users leave the system.
Malicious proposals that don't meed to quorum can still be executed.
Quorum can be manipulated to pass proposals.
Manual review
Change is not trivial. Consider redesigning the way that votes are taken and counted.
The contest is live. Earn rewards by submitting a finding.
This is your time to appeal against judgements on your submissions.
Appeals are being carefully reviewed by our judges.