Payouts
3rd Places
Top 10
Top 25
All
Sherlock
Code4rena
CodeHawks
Jan '25
Findings not publicly available for private contests.
Nov '24
Findings not publicly available for private contests.
Sep '24
high
Possible overflow in `quorumVotes` while starting a shutdown in CollectionShutdown.sol
high
Already `executed/sunset` collection can be `cancel()`, preventing users from claiming their `ETH`
high
Users can't reclaim votes due to arithmetic underflow if collection is cancelled
high
`listingCount` is not updated when floor token is directly relisted using `listing:relist()`
high
relist() can be used to `prevent` a tokenId from filling/selling with less than 0.15% of one collectionToken
high
`withdrawProtectedListing()` can be DoS, user will lost his NFT
high
`_listings` mapping is not deleted when a tokenId is reserved in `Listing:reserve()`
high
`_isLiquidation` mapping is not deleted in `listing:reserve()` when a liquidation tokenId is reserved
high
When a liquidationListing is relisted, owner receives taxRefund, which should not
high
`_distributeFees()` only checks for `donateThresholdMin` but not `donateThresholdMax`
medium
Previous `beneficiary` will not be able to claim `beneficiaryFees` if current beneficiary is a pool
Aug '24
high
`createRaffle()` can be DoS using `cancelRaffle()`
high
`refundPlayers()` doesn't update the `lockedETH`
high
Malicious user can pass different `prizeManager` address to cancelRaffle(), successfully trapping ETH/NFT/token in prizeManager.sol
medium
`Roles::setRole()` doesn't work properly as admin `can't` remove users from their existing roles
high
Incorrect set up and logic of `referralInfoMap` in `SystemConfig::updateReferrerInfo` function
high
TokenManager - Unlimited withdraw
high
Taker of bid offer will loss assets without any benefit if he calls the DeliveryPlace::settleAskMaker() for partial settlement.
high
Native token withdrawal fails until manually approved
high
`DeliveryPlace::settleAskTaker` Has Incorrect Access Control
high
Formulaic Error Rounds Down Causing Total Loss Of Funds For Bid Takers During Abort
high
The `DeliveryPlace::settleAskTaker()` function mistakenly uses `makerInfo.tokenAddress` to update the `TokenBalanceType.PointToken` in the `userTokenBalanceMap` mapping, leading to a critical error.
high
Token withdrawal fails until someone manually approves spending
high
[H-4] The function `PreMarkets::listOffer` charges an incorrect collateral amount, allowing users to manipulating collateral rates and drain the protocol's funds
high
listOffer maker can settle offer via settleAskMaker() in Turbo settle type.
low
[Low-01] Missing Access Control in `CapitalPool::approve()` Function Allows any User to call it to set Allowance Amount `TokenContract` to `type(uint256).max`.
low
`listOffer` Unsafely References Fungible Identifiers
low
Trade tax and settled collateral amount are not updated in offer struct
Jul '24
high
Malicious User can call `lockOnBehalf` repeatedly extend a users `unlockTime`, removing their ability to withdraw previously locked tokens
high
Invalid validation allows users to unlock early
high
Single plot can be occupied by multiple renters
high
Invalid validation in _farmPlots function allowing a malicious user repeated farming without locked funds
medium
Missing disapproval check in `LockManager.sol::approveUSDPrice` allows simultaneous approval and disapproval of a price proposal
medium
Players can gain more NFTs benefiting from that past remainder in subsequent locks
medium
Users can farm on zero-tax land if the landlord locked tokens before the LandManager deployment
high
Funds are `locked` forever in BribeRewarder, when `no` user voted for that pool
high
Wrong input validation while checking for locked position in Voter.sol
high
Voting will revert/DoS due to wrong input validation in BribeRewarder::deposit()
high
Subsequent user receives less reward while claiming in BribeRewarder::claim() due to wrong `_lastUpdateTimestamp`
medium
Malicious user can take advantage of emergencyWithdraw() while voting
medium
Malicious user can `DoS` honest BribeRewarder by `creating` MAX_BRIBES_PER_POOL with very `small` amount
Jun '24
May '24
high
Malicious User can call `lockOnBehalf` repeatedly extend a users `unlockTime`, removing their ability to withdraw previously locked tokens
high
Invalid validation allows users to unlock early
high
Single plot can be occupied by multiple renters
high
Invalid validation in _farmPlots function allowing a malicious user repeated farming without locked funds
medium
Missing disapproval check in `LockManager.sol::approveUSDPrice` allows simultaneous approval and disapproval of a price proposal
medium
Players can gain more NFTs benefiting from that past remainder in subsequent locks
medium
Users can farm on zero-tax land if the landlord locked tokens before the LandManager deployment
Apr '24
Mar '24
Feb '24
Jan '24
Dec '23
high
Rewards can be drained because of lack of access control
medium
Users can not remove some amount of collateral from contract because of wrong implementation of "canRemoveCollateral()"
medium
Missing deadline check allow pending transactions to be maliciously executed
medium
Incorrect calculation of amount of EURO to burn during liquidation
low
Removal of approved token from token manager can lead to unintended liquidation of vaults