https://sherlock-files.ams3.digitaloceanspaces.com/twitter_images/27d9ac22-00c4-450c-8525-4971d9e5abbd.jpg

0xlemon

Security Researcher

Web3 Security Researcher Interested in everything web3 related

Contact Me

High

26

Total

Medium

16

Total

$15.94K

Total Earnings

#406 All Time

26x

Payouts

gold

2x

1st Places

bronze

3x

3rd Places

regular

6x

Top 10

All

Sherlock

Code4rena

Cantina

CodeHawks

Feb '25

THORWallet

THORWallet

0 USDC • 1 total finding • Code4rena • 0xlemon

#10

medium

Improper Transfer Restrictions on Non-Bridged Tokens Due to Boolean Bridged Token Tracking, Allowing a DoS Attack Vector

Jan '25

infrared-contracts

infrared-contracts

1,186.35 USDC • 1 total finding • Cantina • 0xlemon

#24

medium

Finding not yet public.

Aave v3.3

Aave v3.3

401.92 USDC • Sherlock • 0xlemon

#52

Dec '24

Chainlink Payment Abstraction

Chainlink Payment Abstraction

1,987.07 USDC • Code4rena • 0xlemon

bronze

Nov '24

vVv Launchpad - Investments & Token distribution

vVv Launchpad - Investments & Token distribution

94.59 USDC • 1 total finding • Sherlock • 0xlemon

gold

high

Attacker can front-run claim transactions and steal KYC-ed users' reward

Oct '24

Gamma Brevis Rewarder

Gamma Brevis Rewarder

131.06 OP • 1 total finding • Sherlock • 0xlemon

bronze

high

Users that claim before the distribution end block will lose the rest of their rewards

stakeup-bloomv2

stakeup-bloomv2

63.69 USDC • 3 total findings • Cantina • 0xlemon

#66

high

Finding not yet public.

medium

Finding not yet public.

medium

Finding not yet public.

Sep '24

uniswap-v4

uniswap-v4

242.88 USDC • Cantina • 0xlemon

#53

Aug '24

Fjord Token Staking

Fjord Token Staking

0.39 USDC • 2 total findings • CodeHawks • 0xlemon

#18

medium

`FjordAuction` incorrect `block.timestamp` check allows users to bid after calling `auctionEnd` to claim more tokens than they should

medium

[H-01] Auction tokens will be lost forever when auction ends without bids

Jul '24

TraitForge

TraitForge

4,392.6 USDC • 8 total findings • Code4rena • 0xlemon

gold

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

Wrong minting logic based on total token count across generations

medium

A dev will lose rewards if after claiming his rewards he mints an NFT

medium

Forger Entities can forge more times than intended

medium

Pause and unpause functions are inaccessible

medium

Lack of ability to make an some external function calls makes the DAO stage unreachable.

medium

Incorrect check against golden entropy value in the first two batches

Karak Restaking

Karak Restaking

0 USDC • Code4rena • 0xlemon

#16

May '24

Euler-v2

Euler-v2

659 USDC • Cantina • 0xlemon

#45

Apr '24

DYAD

DYAD

45.12 USDC • 6 total findings • Code4rena • 0xlemon

#70

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

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

high

Unable to withdraw Kerosene from `vaultmanagerv2::withdraw` as it expects a `vault.oracle()` method which is missing in Kerosene vaults

medium

No incentive to liquidate small positions could result in protocol going underwater

medium

Incorrect deployment / missing contract will break functionality

Mar '24

Ondo Finance

Ondo Finance

8.28 USDC • Code4rena • 0xlemon

#17

PoolTogether

PoolTogether

1.47 USDC • 1 total finding • Code4rena • 0xlemon

#29

high

Any fee claim lesser than the total `yieldFeeBalance` as unit of shares is lost and locked in the `PrizeVault` contract

Feb '24

UniStaker Infrastructure

UniStaker Infrastructure

5,987.35 USDC • Code4rena • 0xlemon

bronze
Althea Liquid Infrastructure

Althea Liquid Infrastructure

7.18 USDC • 1 total finding • Code4rena • 0xlemon

#34

high

Holders array can be manipulated by transferring or burning with amount 0, stealing rewards or bricking certain functions

AI Arena

AI Arena

4.37 USDC • 5 total findings • Code4rena • 0xlemon

#138

high

A locked fighter can be transferred; leads to game server unable to commit transactions, and unstoppable fighters

high

Since you can reroll with a different fighterType than the NFT you own, you can reroll bypassing maxRerollsAllowed and reroll attributes based on a different fighterType

high

Players have complete freedom to customize the fighter NFT when calling `redeemMintPass` and can redeem fighters of types Dendroid and with rare attributes

high

Non-transferable `GameItems` can be transferred with `GameItems::safeBatchTransferFrom(...)`

medium

Fighter created by mintFromMergingPool can have arbitrary weight and element

Jan '24

Salty.IO

Salty.IO

0.78 USDC • 1 total finding • Code4rena • 0xlemon

#117

high

User can evade `liquidation` by depositing the minimum of tokens and gain time to not be liquidated

Dec '23

The Standard

The Standard

0.24 USDC • 3 total findings • CodeHawks • 0xlemon

#93

high

Rewards can be drained because of lack of access control

high

Looping over unbounded `pendingStakes` array can lead to permanent DoS and frozen funds

medium

Missing deadline check allow pending transactions to be maliciously executed

Revolution Protocol

Revolution Protocol

44.03 USDC • 1 total finding • Code4rena • 0xlemon

#57

high

Incorrect amounts of ETH are transferred to the DAO treasury in `ERC20TokenEmitter::buyToken()`, causing a value leak in every transaction

Oct '23

NextGen

NextGen

558.51 USDC • 2 total findings • Code4rena • 0xlemon

#25

high

Multiple mints can brick any form of `salesOption` 3 mintings

high

Adversary can block `claimAuction()` due to push-strategy to transfer assets to multiple bidders

Open Dollar

Open Dollar

22 USDC • 1 total finding • Code4rena • 0xlemon

#52

medium

`ODSafeManager#allowSAFE()` cannot be executed either by the proxy contract or any other address.

Sep '23

DittoETH

DittoETH

17.94 USDC • 1 total finding • CodeHawks • 0xlemon

#52

low

Unhandled chainlink revert in case its multisigs block access to price feeds

Jul '23

Beedle - Oracle free perpetual lending

Beedle - Oracle free perpetual lending

19.77 USDC • 6 total findings • CodeHawks • 0xlemon

#121

high

During refinance() new Pool balance debt is subtracted twice

high

[H-04] Lender#buyLoan - Malicious user could take over a loan for free without having a pool because of wrong access control

high

Using forged/fake lending pools to steal any loan opening for auction

low

Zero address leads to transaction reverts

low

Buying a loan always reverts at the start of an auction

gas

Multiple accesses of a mapping/array should use a local variable cache.

Foundry DeFi Stablecoin CodeHawks Audit Contest

Foundry DeFi Stablecoin CodeHawks Audit Contest

63.35 USDC • 2 total findings • CodeHawks • 0xlemon

#34

high

Liquidation Is Prevented Due To Strict Implementation of Liqudation Bonus

low

Zero address check for tokens