Security Researcher
Insists "crypto" stands for "cryptography." Senior Watson @sherlockdefi. Alt of @jimmykoppel.
High
Total
Medium
Solo
Total
Total Earnings
#239 All Time
Payouts
1st Places
3rd Places
Top 10
All
Sherlock
Code4rena
Cantina
May '24
Nov '23
medium
Sep '23
high
In RFPSimpleStrategy, winning bid can use bait-and-switch to increase bid after acceptance and steal funds
high
In QV strategy, allocators by default get infinite votes
high
RFPSimpleStrategy.allocate() can be front-run, allowing the someone to bid very low but charge very high
medium
In RFPSimpleStrategy, if pool is not overfunded, payouts past the first will not work
medium
The two RFP sttrategies cannot be used with useRegistry anchor on
medium
QV strategy cannot receive native token
medium
In QV strategy, a clever allocator can get exponentially-many votes
medium
The 1-second overlap between the during- and after-allocation periods may cause funds to become stuck, permanently.
medium
Late-arriving funds to QV strategy can get stuck forever
medium
All strategies except DonationVotingMerkleDistributionDirectTransferStrategy do not work for fee-on-transfer tokens
medium
Changing already-set milestones leads to paying incorrect amount
medium
Problems with tokens that transfer less than amount. (Separate from fee-on-transfer issues!)
medium
Anchor creation and cloneable strategies do not work on zkSync Era
Aug '23
Jul '23
high
Recipients in a CrosschainMerkleDistributor can mint themselves arbitrary amounts of voting tokens
medium
setVoteFactor() does not change existing supply of votes. As a result, some may be unable to withdraw.
medium
Because of rounding issues, users may not be able to withdraw airdrop tokens if their claim has been adjust()'ed upwards
medium
Settlement does not pay relayer fee to Connext
Feb '23
high
Can shut down ProtectionPool late payment logic by dusting purchase of small protections
high
Lenders are able to purchase protection in excess of their lending position
high
Consecutive lockings cause capital to be lost forever
high
Buyer gets free protection during renewal period
high
Once per cycle, seller can greatly multiply earnings when interest accrues during open period
high
Buyer can buy protection only for expected payment days by abusing renewals
medium
Protection too expensive when some capital is locked
medium
If unlocked capital in pool falls below minRequiredCapital, then protection can be bought for minimum premium
high
Post-contest refunds block tier winners in tiered percentage bounty from claiming funds
high
Rogue token can disable all claims from tiered percentage bounty
high
Refunds can be disabled by spamming deposits
high
Can steal funds from other winners in a tiered percentage bounty by sandwhiching closeCompetition with deposit/refund
medium
Can prevent NFT deposits by depositing then refunding NFTs