Fails to rebalance liquidity when users repay borrowed reserved assets into the Lending Pool. The _rebalanceLiquidity function is missing in the repay functions which will overtime cause a liquidity buffer inflation, capital inefficiency and create room for possible draining of the liquidity vault with excessive borrows.
Every in-flow and out-flow of the reserve asset tokens are rebalanced to maintain a desired buffer ratio between the buffer and the Curve vault. Observe how this happens in the deposit, withdraw, and borrow function.
This is missing in the repay function where borrowers are expected to return loans. Each time a loan is repaid, liquidity increases but excesses won't be deposited into the vault. Over time, these accumulated assets sit idle instead of being put to earn yield. This vulnerability has the tendency to introduce more possible risk like:
Interest Rate Manipulation & Farming
Attackers could borrow large amounts, triggering frequent withdrawals from the Curve vault.
Then, they repay their loans, but since repays don’t rebalance liquidity, the funds stay in the idle buffer instead of being redeposited. Over time, this shrinks the vault balance, affecting yield and potentially increasing borrowing rates unnecessarily.
Capital Inefficiency in Yield Strategies
The Curve vault is expected to generate additional returns for the protocol, failing to rebalance after repayments means: Fewer funds are actively earning yield. Protocol revenue from vault deposits is lower than expected.
Inflation of liquidity buffer over time
Capital inefficiency for the Protocol
Possible vault draining with excessive borrow
Manual review.
Call the _rebalanceLiquidity function when repaying borrowed reserved assets.
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.