Payouts
1st Places
2nd Places
Top 10
All
Sherlock
Code4rena
Cantina
CodeHawks
Immunefi
Jan '25
high
Findings not publicly available for private contests.
Dec '24
Nov '24
Findings not publicly available for private contests.
medium
Oct '24
high
high
high
high
medium
medium
medium
Sep '24
high
Anyone can redeem the ```canWithdrawAsset``` token by burning ```1``` ```CollectionToken``` while it is non-floor item leading to stealing it from lister of ```ProtectedListings```.
high
The health of a ```ProtectedListing``` is incorrectly calculated if the ```tokenTaken``` has be changed through ```ProtectedListings::adjustPosition()```.
high
Lister is overpaying during the cancel of his listing on ```Listings::cancelListings()```.
medium
```setFee``` function is writing on memory leading to protocol not able to apply ```Pool```-specified ```fees``` as intended.
medium
```CollectionShutdown::execute()``` calculates the ```newQuorum``` before burning ```Locker```'s collection tokens leading to unfair ETH distribution and lost funds forever.
medium
Unused ```nativeToken```s are not transferred back to the Pool initializer after the ```Locker::initializeCollection()``` and they stay on ```UniswapV4Implementation```.
medium
```Listings::modifyListings()``` doesn't update the ```listing.created``` (when only the ```floorMultiple``` is modified) leading to double paying and wrong accountings.
medium
```UniswapV4Implementation::beforeSwap()``` incorrectly the ```beforeSwapDelta_``` comparing ```tokenOut``` with ```amountSpecified``` while the ```amountSpecified``` is in ```WETH``` terms.
Aug '24
low
high
```_calculateDebt``` function of ```LiquidationLogic``` does not convert ```debtShares``` to ```debtAmount``` and returns always ```debtShares``` breaking the functionality of every liquidation.
high
```liquidationProtocolFeeAmount``` are not subtracted from the collaterals of borrower during the liquidation process.
high
Liquidations will fail if there is not enough liquidity of the collateral that is supposed to be seized because it has been borrowed from other users.
high
Incorrect ```totalDebt``` calculation during the liquidation process since ```repayDebt``` function returns the ```burnt``` shares, not the total debt shares after the burn.
high
Outdated ```supplyIndex``` usage during ```getBalanceByPosition()``` call on ```CuratedVault::totalAssets``` leads to wrong ```lastTotalAssets```.
medium
```reallocate``` function of ```CuratedVault``` can not withdraw fully from a ```Pool``` due to wrong handle of ```allocation.assets == 0```.
medium
Repayments will revert on ```NFTPositionManager``` due to outdated debt measurement on ```_repay()```.
medium
Before changing the ```reserveFactor``` on ```PoolFactory```, all existing Pools must update their reserves to avoid using an incorrect ```reserveFactor``` for interest accrued prior to the change.
medium
```Pool``` expects all chainlink price feeds to have the same staleness thershold (1800 seconds) while this is not the case.
Jul '24
high
high
medium
medium
medium
low
high
```vote``` function does not correctly checks if the remaining duration of a ```LockingPosition``` is greater than 14 days.
medium
Rewards in ```MlumStaking``` are distributed unfairly not taking into consideration the time someone has been locked.
medium
```_requireOnlyOperatorOrOwnerOf``` does not correctly check the owner or the operator of the position leading to anyone can adjust the duration of a ```LockingPosition``` by adding to it.
medium
A malicious user can execute a Denial of Service (DoS) attack on the registration of legitimate ```BribeRewarder``` contracts in the ```Voter``` contract by registering 5 worthless ```BribeRewarder``` contracts in each ```VotingPeriod```.
medium
```BribeRewarder``` contract funtionality is broken with low-decimals tokens.
Jun '24
medium
high
Users won't liquidate positions because the logic used to calculate the liquidator's profit is incorrect
high
When `sellCreditMarket()` is called to sell credit for a specific cash amount, the protocol might receive a lower swapping fee than expected.
medium
Size uses wrong source to query available liquidity on Aave, resulting in borrow and lend operations being bricked upon mainnet deployment
medium
Users can not to buy/sell minimum credit allowed due to exactAmountIn condition
medium
Multicall does not work as intended
medium
withdraw() users may can't withdraw underlyingBorrowToken properly
May '24
medium
Apr '24