deposit updates state before the token transfer, enabling ERC-777 reentrancy that extracts extra underlyingdeposit violates the Checks-Effects-Interactions pattern: it mints asset tokens and inflates the exchange rate before the external safeTransferFrom. If the underlying is an ERC-777 token, its tokensToSend hook fires during the transfer — after the rate has already been raised — handing control back to the attacker mid-deposit.
Likelihood:
Requires the allowed underlying to be an ERC-777 (or other callback-bearing) token. Such tokens exist and can be allow-listed, so this is conditional but realistic.
Impact:
A reentrant call into redeem (or another deposit) during the transfer hook can act on the already-inflated exchange rate and the freshly minted balance, letting the attacker withdraw more underlying than they actually contributed, draining the vault.
An ERC-777 underlying whose tokensToSend hook reenters redeem extracts more than deposited.
Follow CEI — transfer first, then mint — and add a reentrancy guard.
The contest is live. Earn rewards by submitting a finding.
Submissions are being reviewed by our AI judge. Results will be available in a few minutes.
View all submissionsThe contest is complete and the rewards are being distributed.