The Standard

The Standard
DeFiHardhat
20,000 USDC
View results
Submission Details
Severity: low
Invalid

SmartVaultV3::receive() should revert on ETH receivals when the Vault has been liquidated

Summary

The receive() function should revert when ETH is received on liquidated Vault.

Vulnerability Details

The user can no longer borrow on a liquidated Vault, so there is no need to post any collateral. To prevent the user from mistakenly transferring funds to a liquidated Vault, the receive() function should reject all ETH transferals if the Vault has been liquidated.

Although it is possible to recover those funds by calling the removeCollateral() function, this is an unnecessary action that incurs a gas fee and should be avoided.

Impact

A user could mistakenly transfer funds to a liquidated Vault. Although it is possible to recover those funds by calling the removeCollateral() function, this is an unnecessary action that incurs a gas fee and should be avoided.

Tools Used

Manual Review

Recommendations

Add the following code to the receive() function:

require(!liquidated, "the vault has been liquidated");
Updates

Lead Judging Commences

hrishibhat Lead Judge over 1 year ago
Submission Judgement Published
Invalidated
Reason: Non-acceptable severity
Assigned finding tags:

informational/invalid

Support

FAQs

Can't find an answer? Chat with us on Discord, Twitter or Linkedin.