15,000 USDC
View results
Submission Details
Severity: medium
Valid

fee-on-transfer tokens can drain pool

Summary

In this protocol ERC20 tokens can be deposited as collateral, but if there will be allowed fee-on-transfer, balances can be drained.

Vulnerability Details

Hacker can use depositCollateralAndMintDSC. Balances not checked after transferFrom, call will be success, but protocol will receive amount - fee. After that attacker calls redeemCollateralForDsc. Balances of user will be equal to amount, but his real money amount-fee. Protocol sends him amount, attacker recieve amount-fee, but pool loose amount of fee.

Impact

If one if tokens will be fee-on-transfer or enable it ( USDT can enable fee ) balances in coneact can be compromitised. ( possible some liquidations can be locked)

Tools Used

Manual review

Recommendations

Check balances sfter transfer, support fee-on transfer

Support

FAQs

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