https://sherlock-files.ams3.digitaloceanspaces.com/profile_images/defaults/default_avatar_9.png

harleythedog

Security Researcher

Contact Me

High

17

Total

Medium

21

Total

$54.38K

Total Earnings

#187 All Time

21x

Payouts

silver

2x

2nd Places

bronze

2x

3rd Places

regular

13x

Top 10

All

Code4rena

Feb '22

Badger Citadel contest

Badger Citadel contest

625.19 USDC • 1 total finding • Code4rena • harleythedog

#13

medium

[WP-H3] `saleRecipient` can rug buyers

Concur Finance contest

Concur Finance contest

628.72 USDC • 2 total findings • Code4rena • harleythedog

#21

high

[WP-H8] `ConvexStakingWrapper.sol#_calcRewardIntegral` Wrong implementation can disrupt rewards calculation and distribution

medium

Unconstrained fee

Jan '22

Trader Joe contest

Trader Joe contest

984.37 USDT • 2 total findings • Code4rena • harleythedog

#16

medium

Failed transfer with low level call could be overlooked

medium

Pair creation can be denied

Sherlock contest

Sherlock contest

1,331.29 USDC • 1 total finding • Code4rena • harleythedog

#13

medium

updateYieldStrategy will freeze some funds with the old Strategy if yieldStrategy fails to withdraw all the funds because of liquidity issues

ElasticSwap contest

ElasticSwap contest

405.6 USDC • Code4rena • harleythedog

#9

Livepeer contest

Livepeer contest

8,908.77 tokens) • 3 total findings • Code4rena • harleythedog

bronze

high

[WP-H5] `L1Migrator.sol#migrateETH()` dose not send `bridgeMinter`'s ETH to L2 causing ETH get frozen in the contract

medium

Admin can rug L2 Escrow tokens leading to reputation risk

medium

L1Migrator.migrateLPT` can be used to take away protocol's access to LPT tokens in BridgeMinter

Sandclock contest

Sandclock contest

2,681.52 USDC • 6 total findings • Code4rena • harleythedog

#6

high

deposit() function is open to reentrancy attacks

high

Withdrawers can get more value returned than expected with reentrant call

high

Vaults with non-UST underlying asset vulnerable to flash loan attack on curve pool

medium

Vault can't receive deposits if underlying token charges fees on transfer

medium

unsponsor, claimYield and withdraw might fail unexpectadly

medium

Changing a strategy can be bricked

XDEFI contest

XDEFI contest

30.27 USDC • Code4rena • harleythedog

#29

Timeswap contest

Timeswap contest

1,035.09 USDC • 1 total finding • Code4rena • harleythedog

#9

high

Manipulation of the Y State Results in Interest Rate Manipulation

Dec '21

Amun contest

Amun contest

3,004.4 USDC • 1 total finding • Code4rena • harleythedog

#8

medium

Failed transfer with low level call could be overlooked

Sublime contest

Sublime contest

2,816.75 USDC • 1 total finding • Code4rena • harleythedog

#5

high

Anyone can liquidate credit line when autoLiquidation is false without supplying borrow tokens

PoolTogether TwabRewards contest

PoolTogether TwabRewards contest

2,016.68 USDC • 5 total findings • Code4rena • harleythedog

bronze

high

Malicious tickets can lead to the loss of all tokens

high

Continue claiming reqrds after numberOfEpochs are over

high

cancelPromotion is too rigorous

high

Rewards can be claimed multiple times

medium

getRewardsAmount doesn't check epochs haven't been claimed

Nov '21

Streaming Protocol contest

Streaming Protocol contest

1,860.24 USDC • 3 total findings • Code4rena • harleythedog

#19

high

recoverTokens doesn't work when isSale is true

high

Wrong calculation of excess depositToken allows stream creator to retrieve `depositTokenFlashloanFeeAmount`, which may cause fund loss to users

medium

Storage variable unstreamed can be artificially inflated

Malt Finance contest

Malt Finance contest

5,576.33 USDC • 6 total findings • Code4rena • harleythedog

#5

medium

Frontrunning in UniswapHandler calls to UniswapV2Router

medium

Auction collateralToken won't work if token is fee-on-transfer token

medium

Bonding.sol _unbondAndBreak does not account for edge case where no tokens are returned

medium

AbstractRewardMine.sol#setRewardToken is dangerous

medium

AuctionParticipant.sol: `purchaseArbitrageTokens` should not push duplicate auctions

medium

AuctionParticipant.sol: `setReplenishingIndex` mistake could freeze unclaimed tokens

Unlock Protocol contest

Unlock Protocol contest

450.75 USDC • Code4rena • harleythedog

#13

Overlay Protocol contest

Overlay Protocol contest

2,539.32 ETH • 2 total findings • Code4rena • harleythedog

#7

medium

isUnderwater returns opposite boolean for short positions

medium

_totalSupply not updated in _transferMint() and _transferBurn()

yAxis contest

yAxis contest

7,515.15 USDC • 1 total finding • Code4rena • harleythedog

silver

high

CDP.sol update overwrites user's credit on every positive increment

Nested Finance contest

Nested Finance contest

113.72 USDC • Code4rena • harleythedog

#23

Oct '21

Mochi contest

Mochi contest

6,834.13 ETH • 2 total findings • Code4rena • harleythedog

#5

high

Liquidation will never work with non-zero discounts

high

Anyone can extend withdraw wait period by depositing zero collateral

Tally contest

Tally contest

4,928.01 ETH • 1 total finding • Code4rena • harleythedog

silver

high

Wrong calculation of `erc20Delta` and `ethDelta`

Covalent contest

Covalent contest

89.08 ETH • Code4rena • harleythedog

#10