https://sherlock-files.ams3.digitaloceanspaces.com/twitter_images/99c4598b-1f81-4b9d-bcdf-dbd58418525f.jpg

3docSec

Security Researcher

Independent security researcher in the web3 domain. Currently active on @immunefi and @code4rena

Contact Me

High

22

Total

Medium

28

Total

$38.92K

Total Earnings

#236 All Time

15x

Payouts

gold

1x

1st Places

bronze

2x

3rd Places

regular

11x

Top 10

All

Sherlock

Code4rena

Nov '24

Nibiru

Nibiru

3,912.48 USDC • 2 total findings • Code4rena • 3docSec

#4

high

Hardcoded gas used in ERC20 queries allows for block production halt from infinite recursion

medium

IOracle.queryExchangeRate returns incorrect blockTimeMs

May '24

Canto

Canto

0 USDC • 4 total findings • Code4rena • 3docSec

#6

high

Pre-defined limit is different from the spec.

medium

Incorrect names provided in `RegisterConcrete` calls break LegacyAmino signing method

medium

MsgSwapOrder will never work for Canto nodes

medium

Govshuttle module does not register its transaction MsgServer

Apr '24

DYAD

DYAD

40.01 USDC • 4 total findings • Code4rena • 3docSec

#72

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

User can get their Kerosene stuck because of an invalid check on withdraw

Feb '24

Smilee Finance

Smilee Finance

378.73 USDC • 2 total findings • Sherlock • 3docSec

#6

medium

DoS on IG's mint and burn through FeeManager.trackVaultFee

medium

Vault deposit DoS through totalDeposit inflation

HydraDX

HydraDX

1,879.93 USDC • 2 total findings • Code4rena • 3docSec

#7

medium

Malicious liquidity provider can put pool into highly manipulatable state

medium

[M09] No slippage check in `remove_liquidity` function in omnipool can lead to slippage losses during liquidity withdrawal.

Jan '24

Opus

Opus

2,751.92 USDC • Code4rena • 3docSec

#8

Dec '23

Ethereum Credit Guild

Ethereum Credit Guild

3,196.99 USDC • 6 total findings • Code4rena • 3docSec

#7

high

The creation of bad debt (`mark-down` of Credit) can force other loans in auction to also create bad debt

high

Anyone can steal all distributed rewards

medium

`totalBorrowedCredit` can revert, breaking gauges.

medium

ProfitManager's "creditMultiplier" calculation does not count undistributed rewards; this can cause value losses to users

medium

Rounding errors can cause ERC20RebaseDistributor transfers and mints to fail for underflow

medium

Anyone can prolong the time for the rewards to get distributed

Oct '23

Party Protocol

Party Protocol

2,359.21 USDC • 5 total findings • Code4rena • 3docSec

bronze

high

Single host can unfairly skip veto period for proposal that does not have full host support

medium

ETHCrowdfundBase.sol#processContribution - Impossible to finalize crowdfund because of minContribution check

medium

`PartyGovernanceNFT#rageQuit()` can lead to token loss for users when dealing with zero-balance ERC20 during a `rageQuit()`

medium

PartyGovernanceNFT advertises but does not honor the ERC-4906 standard

medium

PartyGovernanceNFT.sol#mint - User can delegate another user funds to themselves and brick them from changing the delegation

The Wildcat Protocol

The Wildcat Protocol

139.84 USDC • 4 total findings • Code4rena • 3docSec

#42

high

Lenders can escape the blacklisting of their accounts because they can move their MarketTokens to different accounts and gain the WithdrawOnly Role on any account they want

high

Borrower has no way to update `maxTotalSupply` of `market` or close market.

high

Borrower can drain all funds of a sanctioned lender

medium

Function WildcatMarketController.setAnnualInterestBips allows for values outside the factory range

Canto Liquidity Mining Protocol

Canto Liquidity Mining Protocol

364.87 USDC • 1 total finding • Code4rena • 3docSec

#9

high

Array Length of `tickTracking_ ` Can be Purposely Increased to Brick Minting and Burning of Most Users' Liquidity Positions

Sep '23

Maia DAO - Ulysses

Maia DAO - Ulysses

6,739.11 USDC • 5 total findings • Code4rena • 3docSec

#4

high

Redeeming a Settlement won't work for unsigned messages when the communicating dApps have different addresses on the different chains

high

All tokens can be stolen from `VirtualAccount` due to missing access modifier

medium

Incorrect source address decoding in RootBridgeAgent and BranchBridgeAgent's _requiresEndpoint breaks LayerZero communication

medium

Message channels can be blocked resulting in DoS

medium

If RootBridgeAgent.lzReceiveNonBlocking reverts internally, the native token sent by relayer to RootBridgeAgent is left in RootBridgeAgent

Aug '23

veRWA

veRWA

74.88 USDC • 2 total findings • Code4rena • 3docSec

#35

high

Users may be forced into long lock times to be able to undelegate back to themselves.

high

Delegated votes are locked when owner lock is expired

Good Entry

Good Entry

13,341.69 USDC • 6 total findings • Code4rena • 3docSec

gold

high

Incorrect Solidity version in FullMath.sol can cause permanent freezing of assets for arithmetic underflow-induced revert

high

V3Proxy swapTokensForExactETH does not send back to the caller the unused input tokens

high

TokenisableRange's incorrect accounting of non-reinvested fees in "deposit" exposes the fees to a flash-loan attack

medium

User can steal refunded underlying tokens from `initRange` operation inside `RangeManager`

medium

Incorrect boundaries check in GeVault's "getActiveTickIndex" can temporarily freeze assets due to Index out of bounds error

medium

V3 Proxy does not send funds to the recipient, instead it sends to the msg.sender

Jul '23

PoolTogether

PoolTogether

338.65 USDC • 3 total findings • Code4rena • 3docSec

#39

high

Delegated amounts can be forcefully removed from anyone in the TwabController

medium

`VaultFactory` allows deployment of vaults with non-authentic `TwabController` and `PrizePool`

medium

Unintended or Malicious Use of Prize Winners' Hooks

Jun '23

Canto

Canto

3,407.64 USDC • 4 total findings • Code4rena • 3docSec

bronze

high

Pre-defined limit is different from the spec.

medium

Incorrect names provided in `RegisterConcrete` calls break LegacyAmino signing method

medium

MsgSwapOrder will never work for Canto nodes

medium

Govshuttle module does not register its transaction MsgServer