Payouts
3rd Places
Top 10
Top 25
All
Sherlock
Sep '24
Aug '24
high
`BorrowLogic::executeRepay` incorrect order of update may cause incorrect interest rates
high
The function `LiquidationLogic::_repayDebtTokens()` may undervalue the total supply of debt shares
high
Incorrect supply balance and debt balance calculation will cause multiple issues
high
Function `executeMintToTreasury` will incorrectly reduce the `supplyShares`, therefore prevent the last users from withdrawing
high
Liquidated User will not be charged for the liquidation
Jul '24
Jun '24
high
`msg_server_registerations::Register` will overwrite reputerInfo, which can be used to sabotage other reputers
high
The worker and reputer's payload may be tampered due to lack of check for the pubkey's ownership
medium
`msg_server_stake::AddStake` calculates the weight incorrectly resulting in incorrect activation of a topic
medium
`msg_server_demand::FundTopic` passes incorrect additional fee, potentially activate a topic incorrectly
1,982.91 USDC • 4 total findings • Sherlock • lemonmon
#5
high
The `PendlePTOracle` contract may return a wrong price when calculating the price with `getPtToAssetRate()`
high
`Kelp:_finalizeCooldown` cannot claim the withdrawal if adversary would requestWithdrawals with dust amount for the holder
high
Missing slippage protection in `Ethena:_sellStakedUSDe`
high
Missing slippage protection in `PendlePrincipalToken:redeemPT`
Apr '24
high
An issue with calculating total supplies inside the function `ZivoeRewardsVesting.revokeVestingSchedule()` may lead to DOS condition or to account a wrong total number of votes in the system
high
`ZivoeRewards.depositReward()` and `ZivoeRewardsVesting.depositReward()` may be subject of a griefing attack to manipulate reward emissions
high
`ZivoeRewardsVesting.revokeVestingSchedule()` may set a user's votes from their $ZVE vesting to a wrong value
high
The usage of `totalSupply()` of tokens may introduce some issues with calculating the amount to vest when `ZivoeITO.claimAirdrop()` is called
medium
If the `OCL_ZVE:forwardYield` is called before `OCL_ZVE:pushToLockerMulti`, the yield distribution interval cannot be enforced
medium
`OCL_ZVE:fetchBasis` the amount can be skewed by make the pool imbalanced, resulting in yield distribution when there is no real gain
medium
`OCL_ZVE:pushToLockerMulti` will very likely to fail due to the assertion on the allowance
medium
The `ZivoeYDL` ema calculation is incorrect due to uninitialized `distributionCounter`
Mar '24
Feb '24
high
If `RioLRTOperatorRegistry:setOperatorStrategyShareCaps` is used to set the cap to zero, fund may be locked
high
`RioLRTWithdrawalQueue:queueCurrentEpochSettlement` does not update the epoch, resulting in disabled `rebalance`
medium
`RioLRTDepositPool:depositBalanceIntoEigenLayer` reverts when asset to share calculation rounds down
Dec '23
Nov '23
high
Rewards may be lost when `SdtStakingPositionService.processSdtRewards()` is processing multiple rewards that contain the same reward token
high
`LockingPositionService`'s voting power can be inflated by putting duplicated entries to `LockingPositionDelegate.tokenOwnedAndDelegated`
medium
Users who withdraw and exchange their rewards into CvgSDT may become target of sandwich attacks due to an insufficient slippage protection in `SdtRewardReceiver._withdrawRewards()`
Sep '23
high
`QVSimpleStrategy::_allocate`
high
Missing access modifier for `RFPSimpleStrategy.setPoolActive()` may lead to multiple issues
medium
`QVSimpleStrategy`: part of the distribution may be locked when allocation and registration overlap
medium
`QVSimpleStrategy`: If someone fund a pool when the fund is partially/fully distributed, part of the fund may be locked
medium
`DonationVotingMerkleDistributionVaultStrategy::_afterAllocate` is not capable of dealing with fee-on-transfer tokens
medium
Set milestones in `RFPSimpleStrategy` can exceed 100% `totalAmountPercentage` which may lead to multiple issues
medium
An allocator's `voiceCreditsCastToRecipient` may get calculated in a wrong way inside `QVBaseStrategy._qv_allocate()`
medium
Potential occurance of a DOS condition inside the `RFPSimpleStrategy._distribute()` function
medium
Issues with accounting logic and distribution when using "Fee on Transfer" tokens with `QVSimpleStrategy`
Jul '23
high
`LMPVault.updateDebtReporting()` may be abused to only update certain destination vaults in order to gain a profit and/or steal funds from other users
high
Users can potentially get an unlimited amount of reward tokens from `LMPVault` and from `DestinationVaults`
high
Too many assets may be pulled from the user when they deposit or mint into the `LMPVault` via `LMPVaultRouterBase.mint()` or `LMPVaultRouterBase.deposit()`
high
`AbstractRewarder::queueNewRewards` may transfer too much from the msg.sender and the surplus will be trapped
high
In `LMPVault::_withdraw`, rewards will be locked, if more assets than needed are received
high
`MavEthOracle::getPriceInEth` can be manipulated by making swaps in the pool, due to incorrect LP token evaluation
high
`LMPVault`'s cached `totalDebt` can be abused to drain `LMPVault`
Jun '23
Apr '23
Mar '23
Jan '23
Oct '22
Sep '22