https://sherlock-files.ams3.digitaloceanspaces.com/profile_images/acffa799-ff2b-46e3-b9e9-c7e6f1bdb1f3.jpg

samuraii77

Security Researcher

Contact Me

High

37

Total

Medium

3

Solo

72

Total

$85.08K

Total Earnings

#98 All Time

26x

Payouts

gold

2x

1st Places

silver

6x

2nd Places

bronze

3x

3rd Places

All

Sherlock

Code4rena

Cantina

Apr '25

ZKP2P V2

ZKP2P V2

4,064.81 OP • Sherlock • 000000

gold

Findings not publicly available for private contests.

Pareto USP

Pareto USP

Collaborative Audit • Sherlock • samuraii77

Feb '25

Yieldoor

Yieldoor

177.84 USDC • 5 total findings • Sherlock • 000000

#9

high

Liquidations will be significantly delayed due to incorrect maths

medium

Wrong variable usage upon withdrawing, resulting in unexpected results

medium

Multi-hop swaps are not properly supported, the code will run OOG

medium

Tick spacing of 1 does not work properly

medium

Setting the secondary position will cause unexpected results

SEDA Protocol

SEDA Protocol

953.62 USDC • 4 total findings • Sherlock • 000000

#8

high

Funds to be withdrawn can be stolen due to incorrect variable usage

medium

Posting results can be blocked in `SedaCoreV1` due to using the push pattern

medium

Creating a vesting account can be perpetually disallowed

medium

Wrong amount of gas will be used in a certain case

Jan '25

Peapods

Peapods

12,444.98 USDC • 23 total findings • Sherlock • X77

silver

high

User will have tokens stuck closing a leverage position due to an unconsidered case

high

Vault inflation attack in `AutoCompoundingPodLp` is possible due to incorrectly minting dead shares

high

Handling tokens in the contract upon adding liquidity results in breaking the optimal one-sided supply amounts

high

`PodUnwrapLocker` can be drained due to an arbitrary input

medium

Users can prevent reward accrual in order to capture rewards distributed before they have joined

medium

`_calculateBasePerPTkn` includes debond fee twice, lowering the price too much

medium

Removing leverage will often revert due to calling an incorrect function

medium

Adding leverage using a podded token will lead to a revert

medium

Leverage position can be impossible to close due to a non-initialized struct field

medium

`_tokenToPodLp` will lower the yield of `AutoCompoundingPodLp` during volatile markets

medium

Bad data would DOS the whole `AutoCompoundingPodLp`

medium

`addInterest` will not update the interest acurately which would enable users to claim rewards for time that they weren't staked inside `LendingAssetVault`

medium

Incomplete logic will allow malicious users to perpetually override the amount to swap to the minimum

medium

`LendingAssetVault::_updateAssetMetadataFromVault()` results in incorrect calculations

medium

Protocol assumes the same deployment on all chains on multiple occasions

medium

MEV bots will steal from users due to an incorrectly manipulated value

medium

Incorrect `min/maxPrice` checks

medium

Incorrect total assets available calculation leads to incorrect utilisation

medium

Removing leverage will often fail when the received pair LP token is insufficient

medium

Pausing rewards will lead to tokens being bricked and users not being able to claim them

medium

A vault can be considered not over-utilized when it is and vice versa upon depositing

medium

Liquidations will revert incorrectly due to an out-of-sync leftover collateral value

medium

Tokens will be stuck in `AutoCompoundingPodLp` if the intermediary swap token is not a reward token

infrared-contracts

infrared-contracts

9,061.67 USDC • 6 total findings • Cantina • samuraii77

#10

high

Finding not yet public.

high

Finding not yet public.

high

Finding not yet public.

medium

Finding not yet public.

medium

Finding not yet public.

medium

Finding not yet public.

Aave v3.3

Aave v3.3

4,566.46 USDC • Sherlock • 000000

#12

Allora v0.8.0 Update

Allora v0.8.0 Update

9,291.49 USDC • Sherlock • 000000

silver

Findings not publicly available for private contests.

FlatMoney v2 Update

FlatMoney v2 Update

2,632.23 USDC • Sherlock • 000000

bronze

Findings not publicly available for private contests.

Dec '24

Idle Finance Credit Vaults

Idle Finance Credit Vaults

3,312.04 USDC • Sherlock • 000000

silver

Findings not publicly available for private contests.

Numa

Numa

3,659.15 USDC • 1 total finding • Sherlock • 000000

#7

medium

Debasing/rebasing periods can be decreased by 50% by a malicious actor

Oct '24

Avantis v1.5: Cross-Asset Leverage

Avantis v1.5: Cross-Asset Leverage

7,016.02 OP • Sherlock • samuraii77

bronze

Findings not publicly available for private contests.

predict.fun lending market

predict.fun lending market

490.40 USDC • 2 total findings • Sherlock • 000000

#4

medium

Lenders blacklisted for USDC can disallow borrowers from repaying

medium

`acceptLoanOfferAndFillOrder()` will result in a lower fee for the protocol

Sep '24

Royco Protocol

Royco Protocol

2,420.43 USDC • 11 total findings • Cantina • Yakudza

silver

high

Finding not yet public.

high

Finding not yet public.

high

Finding not yet public.

high

Finding not yet public.

high

Finding not yet public.

high

Finding not yet public.

medium

Finding not yet public.

medium

Finding not yet public.

medium

Finding not yet public.

medium

Finding not yet public.

medium

Finding not yet public.

Aug '24

ZeroLend One

ZeroLend One

891.79 USDC • 11 total findings • Sherlock • 000000

#15

high

Shares of a user will be wrong after a liquidation

high

Wrong interest rate after a liquidation

high

`getSupplyBalance()` and `getDebtBalance()` return wrong values

high

Interest rate will be wrong after a repay

high

Liquidations will be executed with wrong values

high

Withdrawals might be DoS in certain cases and funds can get stuck

medium

Repayments using the NFT position manager will revert in a lot of cases

medium

Using a hardcoded value for the Chainlink stale price check is dangerous

medium

Not including Chainlink decimals upon calculations will lead to accounting issues

medium

Users can increase their rewards and dilute rewards for other users

medium

Funds will always be stuck in a pool and unexpected reverts will occur upon reallocations

Sentiment V2

Sentiment V2

1,130.30 USDC • 8 total findings • Sherlock • 000000

#11

medium

The `Pool` contract can be DoSed

medium

`Superpool` contract doesn't strictly follow EIP4626

medium

Superpool can not be paused despite the implemented functionality

medium

Not removing a token from the position assets upon an owner removing a token from the known assets will cause huge issues

medium

Liquidations will revert if a position has been blacklisted for USDC

medium

Reallocations will often fail upon using USDT

medium

The Redstone oracle can report stale prices

medium

Partial liquidations are next to impossible to happen despite the code being supposed to allow them

Jul '24

TraitForge

TraitForge

2,629.31 USDC • 14 total findings • Code4rena • samuraii77

silver

high

`mintToken()`, `mintWithBudget()`, and `forge()` in the `TraitForgeNft` Contract Will Fail Due to a Wrong Modifier Used in `EntropyGenerator.initializeAlphaIndices()`

high

The maximum number of generations is infinite

high

Number of entities in generation can surpass the 10k number

high

Incorrect Percentage Calculation in NukeFund and EntityForging when `taxCut` is Changed from Default Value

high

Wrong minting logic based on total token count across generations

medium

There is no slippage check in the `nuke()` function.

medium

Forger Entities can forge more times than intended

medium

Pause and unpause functions are inaccessible

medium

NFTs mature too slowly under default settings.

medium

Imprecise token age calculation results in an incorrect nuke factor, causing users to claim the wrong amount

medium

`Golden God` Tokens can be minted twice per generation

medium

Each generation should have 1 "Golden God" NFT, but there could be 0

medium

Excess ETH from `forgingFee` can get stuck in `EntityForging` under certain situations

medium

Discrepancy between nfts minted, price of nft when a generation changes & position of `_incrementGeneration()` inside `_mintInternal()` & `_mintNewEntity()`

Super Boring

Super Boring

1,212.11 USDC • Sherlock • samuraii77

#4

Findings not publicly available for private contests.

Jun '24

Size

Size

3,889.72 USDC • 9 total findings • Code4rena • samuraii77

#11

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.

high

The collateral remainder cap is incorrectly calculated during liquidation

medium

Fragmentation fee is not taken if user compensates with newly created position

medium

`executeBuyCreditMarket` returns the wrong amount of cash and overestimates the amount that needs to be checked in the variable pool

medium

Sandwich attack on loan fulfillment will temporarily prevent users from accessing their borrowed funds

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

Thorchain

Thorchain

4,820.15 USDC • 3 total findings • Code4rena • samuraii77

silver

high

A malicious user can steal money out of the vault and other users

medium

Due to the use of `msg.value` in for loop, anyone can drain all the funds from the `THORChain_Router` contract

medium

[M-02] Incorrect call argument in `THORChain_Router::_transferOutAndCallV5`, leading to grief/steal of `THORChain_Aggregator`'s funds or DoS

May '24

Tokensoft Distributor Contracts Update

Tokensoft Distributor Contracts Update

6,582.60 USDC • 2 total findings • Sherlock • samuraii77

gold

medium

Users are unable to claim their tokens

medium

Users are unable to claim tokens now and might be able to drain the whole contract

Gamma - Locked Staking Contract

Gamma - Locked Staking Contract

133.81 USDC • 1 total finding • Sherlock • samuraii77

bronze

medium

User might unexpectedly lose his funds upon exiting

LoopFi

LoopFi

213.33 USDC • 1 total finding • Code4rena • samuraii77

#5

high

Availability of deposit invariant can be bypassed

Apr '24

Teller Finance

Teller Finance

375.94 USDC • 4 total findings • Sherlock • samuraii77

#13

high

`totalPrincipalTokensRepaid` and `totalInterestCollected` can be manipulated

high

Lenders might not be able to close their loans and get their collateral back in the case of default

high

Liquidating a loan will leave the liquidator at a loss

medium

A market owner can put borrowers in a very unfavorable position and steal money out of lenders

Zivoe

Zivoe

356.84 USDC • 3 total findings • Sherlock • samuraii77

#32

high

Incorrect logic causes inaccurate values for a weight/votes checkpoint

high

User funds scheduled for vesting can get locked due to incorrectly decrementing the total supply in `ZivoeRewardsVesting`

medium

Forwarding yield in `OCL_ZVE` is possible a lot more often than the enforced 30 days

Mar '24

Ondo Finance

Ondo Finance

8.28 USDC • Code4rena • samuraii77

#17

DittoETH

DittoETH

2,741.63 USDC • 1 total finding • Code4rena • samuraii77

#7

high

Flawed if check causes inaccurate tracking of the protocol's ercDebt and collateral