
Payouts

1st Places

Top 10

Top 25
All
Sherlock
Code4rena
Cantina
Apr '26
high
Zero-balance collateral opt-in can make unhealthy positions unliquidatable
high
Same-Asset Borrow Positions Can Become Insolvent With No Working Liquidation Path
high
Self-liquidation with `receive_a_token = true` bypasses collateral seizure via `from == to` self-transfer in `transfer_on_liquidation`, socializing residual debt to reserve deficit
high
Every flash liquidation permanently drains the debt-asset reserve, making depositors unable to withdraw their funds
medium
Prepared Flash Liquidation Can Bypass Collateral Reserve Pause
medium
Global pause can be bypassed via direct aToken transfers, breaking containment across remediation
medium
Approved spender exceed nominal allowance by splitting aToken transfers into dust chunks
medium
Reserve factor changes do not affect treasury accrual until an unrelated rate-recalc path runs
Mar '26
medium
Feb '26
high
medium
medium
Jan '26
Dec '25
high
BuilderWallet `init()` is unprotected/re-initializable, enabling takeover and theft of builder fees
medium
`RiskEngine::_getRequiredCollateralAtTickSinglePosition()` Fails to Accumulate Credits Across Multiple Legs, Leading to Potential Erroneous Liquidations
medium
Incorrect `UPPER_118BITS_MASK` Mask in `OraclePackLibrary` Causes Unexpected Clearing of `EMAs` and `lockMode` in `OraclePack`
medium
Division-by-zero in long-leg collateral requirement can block solvency checks and `dispatchFrom` (liquidation/force-exercise) for tickSpacing==1 pools
medium
Liquidations Can Be Permanently Blocked via `getLiquidationBonus()` Unsigned Underflow (Insolvent-but-Unliquidatable Accounts)
high
high
high
high
medium
medium
medium
medium
Nov '25
Oct '25
Aug '25
Jan '25
Dec '24
Nov '24
Sep '24
medium
Aug '24
high
high
Jul '24
high
`AuraVault::claim` reward calculation does not deduct fees from reward amount, causing DoS or extra rewards lost
medium
`PoolV3#repayCreditAccount()` use incorrect share converting function to calculate profit and loss
medium
Lack of Slippage Control in `AuraVault::deposit` and `AuraVault::mint` Functions Can Lead to Unexpected Financial Losses for Users
medium
Unclaimed Rewards Handling Issue in `AuraVault` Contract Functions (`AuraVault::deposit`, `AuraVault::mint`, `AuraVault::withdraw`, `AuraVault::redeem`)
high
Attacker can DoS users by delegating tokens at `MAX_DELEGATES` limit in `VotingEscrow::_moveTokenDelegates()`
high
Emergency Council will permanently lock user rewards when killing gauges via `Voter::killGaugeTotally`
high
Users will receive incorrect rewards due to outdated total supply caching in `RewardsDistributorV2::_checkpoint_total_supply()`
medium
Users can exploit vote persistence to earn unearned rewards via `Voter::poke`
medium
First Liquidity Provider can DOS the Pool in `Pair::mint()`