Payouts
2nd Places
3rd Places
Top 10
All
Sherlock
Code4rena
Nov '24
medium
Precision lost in `DebitaIncentives.claimIncentives()` will missing rewards for users with smaller lending/borrow activities
medium
Borrow Order collateral issue: previous manager of `Receipt-veNFT` still have "Manager" access to grief lender
medium
Anyone can delete same order twice will also delete other user orders
Jul '24
Jun '24
high
Risk of Overpayment Due to Race Condition Between repay and liquidateWithReplacement Transactions
high
Users won't liquidate positions because the logic used to calculate the liquidator's profit is incorrect
medium
Sandwich attack on loan fulfillment will temporarily prevent users from accessing their borrowed funds
medium
Size uses wrong source to query available liquidity on Aave, resulting in borrow and lend operations being bricked upon mainnet deployment
medium
Multicall does not work as intended
medium
LiquidateWithReplacement does not charge swap fees on the borrower
Apr '24
high
A Vault can steal all funds from another Vault through the Registry's flash loan contract due to insufficient access control in `Connector.sendTokensToTrustedAddress()`
high
`executeWithdraw` may be blocked if any of the users are blacklisted from the `baseToken`
high
`NoyaValueOracle.getValue` returns an incorrect price when a multi-token route is used
medium
CompoundConnector.sol misses unclaimed rewards in getPositionTVL, resulting in undervalued positionTVL/TVL
medium
First depositor can make subsequent depositor lose all of her or his deposit
medium
Incorrect modifier condition
medium
Stale price can be used in `getValueFromChainlinkFeed` function
medium
Balancer flashloan contract can be DOSed completely by sending 1 wei to it
medium
`depositQueue.queue` in `AccountingManager` can be flooded causing a DoS
medium
No function to claim the reward in `PancakeswapConnector`.
high
Attacker can make 0 value deposit() calls to deny user from redeeming or withdrawing collateral
high
Design flaw and mismanagement in vault licensing leads to double counting in collateral ratios and positions collateralized entirely with kerosine
high
Kerosene collateral is not being moved on liquidation, exposing liquidators to loss
high
Users can get their Kerosene stuck until TVL becomes greater than Dyad's supply
medium
Attacker can frontrun to prevent vaults from being removed from the dNFT owner's position
medium
Value of kerosene can be manipulated to force liquidate users
medium
setUnboundedKerosineVault not called during deployment, causing reverts when querying for Kerosene value after adding it as a Kerosene vault
Mar '24
Feb '24
high
Malicious user can stake an amount which causes zero curStakeAtRisk on a loss but equal rewardPoints to a fair user on a win
high
Since you can reroll with a different fighterType than the NFT you own, you can reroll bypassing maxRerollsAllowed and reroll attributes based on a different fighterType
high
Players have complete freedom to customize the fighter NFT when calling `redeemMintPass` and can redeem fighters of types Dendroid and with rare attributes
high
Fighters cannot be minted after the initial generation due to uninitialized `numElements` mapping
medium
NFTs can be transferred even if StakeAtRisk remains, so the user's win cannot be recorded on the chain due to underflow, and can recover past losses that can't be recovered(steal protocol's token)
medium
Can mint NFT with the desired attributes by reverting transaction
medium
Constraints of dailyAllowanceReplenishTime and allowanceRemaining during mint() can be bypassed by using alias accounts & safeTransferFrom()
medium
DoS in `MergingPool::claimRewards` function and potential DoS in `RankedBattle::claimNRN` function if called after a significant amount of rounds passed.
Jan '24
Oct '23
high
Attacker can drain all ETH from AuctionDemo when block.timestamp == auctionEndTime
high
Attacker can reenter to mint all the collection supply
high
Adversary can block `claimAuction()` due to push-strategy to transfer assets to multiple bidders
medium
On a Linear or Exponential Descending Sale Model, a user that mint on the last `block.timestamp` mint at an unexpected price.
medium
The RandomizerVRF and RandomizerRNG not produce hash value.
medium
Artist signatures can be forged to impersonate the artist behind a collection
Sep '23
Aug '23
Jul '23
Jun '23
Findings not publicly available for private contests.
May '23
high
forget apply `onlyBalancer` modifier to `mintRebalancer()` in `UUSD.sol`. Allowing arbitrage attack steal entire pool and collateral when rebalancing
high
Exploitation of `getSupplyProportion()`: Using Uniswap Flashloan to force `USSDRebalancer.sol` Pool/Collateral Swap and Subsequent Fund Thefts
high
UniswapV3 Tick Position Used to Manipulate USSD/DAI Pool Price
high
`amountToBuyLeftUSD` always return 0. `USSDRebalancer.sol` cannot buy collateral tokens
medium
Chainlink oracle issues: stale, heartbeat, minAnswer price, zero price
Apr '23
Mar '23
high
DOS `_mintShare()` using Openzeppelin ERC1155 `_mint` callback
high
`enlistInRollover()` for same user second time store the wrong index and broke roll over queue if delist right after
high
User can bypass treasury tax
high
`mintRollovers()` give wrong amount of share/assets to user
medium
Faulty set `whiteListAddress` if using same treasury address twice
Feb '23
Jun '22
May '22
medium
`VE3DRewardPool` and `VE3DLocker` adds to an unbounded array which may potentially lock all rewards in the contract
medium
`VE3DRewardPool` claim in loop depend on pausable token
medium
Unable To Get Rewards If Admin Withdraws $VE3D tokens From `VeTokenMinter` Contract
medium
Misconfiguration of Fees Incentive Might Cause Tokens To Be Stuck In `Booster` Contract
medium
Expiration calculation overflows if call option duration ≥ 195 days
medium
It shouldn’t be possible to create a vault with Cally’ own token
medium
Vault is Not Compatible with Fee Tokens and Vaults with Such Tokens Could Be Exploited
medium
User's may accidentally overpay in `buyOption()` and the excess will be paid to the vault creator
Apr '22
Mar '22