Any smart contract (including multisigs) that has a fallbackback function and EUSD share balance can be forced to burn their tokens #215
Labels
3 (High Risk)
Assets can be stolen/lost/compromised directly
bug
Something isn't working
duplicate-769
satisfactory
satisfies C4 submission criteria; eligible for awards
upgraded by judge
Original issue severity upgraded from QA/Gas by judge
Lines of code
https://github.com/code-423n4/2023-06-lybra/blob/main/contracts/lybra/token/PeUSDMainnetStableVision.sol#L132
Vulnerability details
Impact
FlashBorrower
is assumed to have anonFlashLoan
function that properly checks whether they intended to flashborrow or not.EUSD
toPeUSDMainnet
contractconvertToPeUSD
FlashBorrower
and call theexecuteFlashloan
function. In this case,receiver.onFlashLoan(shareAmount, data);
results in a no-op. The contract incorrectly assumes that the receiver intended to borrow the funds and proceeds toburnShares
of the victim contract.Proof of Concept
Tools Used
Recommended Mitigation Steps
Assessed type
Access Control
The text was updated successfully, but these errors were encountered: