Payouts
1st Places
3rd Places
Top 10
All
Sherlock
Code4rena
Cantina
Jun '25
high
Missing Swap Data Validation in _doMixSwap() Allows Bypassing Intended Token Swaps
high
User-Controlled Swap Params Allow Draining of Contract-Owned Tokens
medium
Incorrect Approval Logic Prevents Native ZETA from Being Swapped and Withdrawn
medium
Incorrect Assumption of ERC-20 Compliance Breaks USDT Support in Cross-Chain Bridging
medium
a malicious address can override a user refundInfo
medium
wrong slippage check in _swapAndSendERC20Tokens
medium
Incorrect Pool Validation Allows Griefing via Dummy Contracts in Cross-Chain Swap Routing
May '25
high
high
high
Apr '25
Mar '25
Feb '25
Jan '25
medium
If a reward is paused in the whitelist, all users who interact with the staking pool will forever lose claim to that paused reward and the reward is locked in the contract even when unpaused
medium
AutoCompoundingLp::_processRewardsToPodLp doesnt claim unclaimed rewards from TokenRewards before processing rewards to asset
medium
maxSwap is an insufficient solution to the asptkn donation issue
medium
high
Auctions can never be completed
medium
Malicious users with small bids can blacklist themselves from the coupon token(usdc) to prevent their bid from being removed when bidcount > maxbids
medium
Users still have claim to tokens on a period even if the auction for that period failed
medium
if share per token is ever changed, it could cause a mismatch of state
Dec '24
high
Reentrancy in contracts would allow malicious to steal tokens and also cancel another users order
high
A user can double spend their tokens by (filling or cancelling) an order then modifying with a decreasePosition
high
Repeated Cancellation Exploit Using Overlapping orderId in Order Contracts
high
None use of msg.sender as "from" in ERC20.transferFrom allows malicious to OrderContract(OracleLess.stopLimit)::createOrder griefing users
medium
the publish time in PythOracle::currentValue is not done properly
Nov '24
Oct '24
Aug '24
high
User supply balance is not tracked properly
high
When accruing to treasury, totalShares is not incremented but it is decremented when withdrawing to treasury
high
When liquidating debt and collateral amount params are used in shares instead of in amounts
medium
Several functions in the contracts falsely assume the number of decimals being returned by the oracle
medium
Jun '24
high
Users won't liquidate positions because the logic used to calculate the liquidator's profit is incorrect
medium
Size uses wrong source to query available liquidity on Aave, resulting in borrow and lend operations being bricked upon mainnet deployment
medium
LiquidateWithReplacement does not charge swap fees on the borrower