A wrong parameter is used in _withdrawFromVault() which will cause assets to be transferred incorrectly or reverted as the vault owner parameter is set to msg.sender instead of address(this).
In LendingPool.sol and ReserveLibrary.sol, the vault withdrawal function passes incorrect owner parameter which conflicts with the protocol's rebalancing design.
The problematic code:
User tries to withdraw assets through lending pool
_withdrawFromVault() is called with wrong owner parameter (msg.sender)
Transaction reverts or assets are transferred incorrectly since vault shares are owned by the lending pool contract
The protocol will experience failed withdrawals or incorrect asset transfers, disrupting core functionality. This affects all users trying to withdraw assets from the vault.
Update the _withdrawFromVault() function to use the correct owner parameter:
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.