Closed sherlock-admin2 closed 1 month ago
From the competition rules: "Using the "stopped" states in the lockstake clipper is assumed to be used by wards in an extreme emergency. It is a known risk that some of the system attributes and functionality may not hold afterwards, including risking user and system funds. This includes also LSE special functionality (allowing exit of auctions leftover, not burning fees, delegating, staking, etc..)."
Also note that such problems with this emergency mechanism exist in the legacy Maker clippers, so are out of scope for the competition.
J4de
Medium
After the stop level of
LockstakeClipper
is reduced from3
, users can buy collateral at extremely low pricesSummary
After the stop level of
LockstakeClipper
is reduced from3
, users can buy collateral at extremely low pricesVulnerability Detail
The
LockstakeClipper
contract has 4 stopped levels0
: no breaker1
: no new auctions2
: no new auctions or restarted auctions3
: no new auctions, restart auctions and buysLockstakeClipper
uses a dutch auction, which means that the longer the auction starts, the lower the price of the collateral. When thestopped
is set to 3, no one can buy collateral, but the price is still falling. Oncestopped
is changed, users can immediately buy collateral at a very low price.Impact
Users can buy collateral at a lower price, causing losses to the protocol.
Code Snippet
https://github.com/sherlock-audit/2024-06-makerdao-endgame/blob/main/lockstake/src/LockstakeClipper.sol#L338
Tool used
Manual Review
Recommendation
It is recommended that all auctions should be restarted after the
stopped
value is reduced from3
.