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

CertoraInc

Security Researcher

Contact Me

High

11

Total

Medium

42

Total

$80.18K

Total Earnings

#122 All Time

45x

Payouts

gold

1x

1st Places

silver

2x

2nd Places

bronze

2x

3rd Places

All

Code4rena

Oct '22

Inverse Finance contest

Inverse Finance contest

24.22 USDC • 1 total finding • Code4rena • CertoraInc

#47

medium

Oracle assumes token and feed decimals will be limited to 18 decimals

Sep '22

VTVL contest

VTVL contest

865.93 USDC • 4 total findings • Code4rena • CertoraInc

#7

high

Permanent freeze of vested tokens due to overflow in _baseVestedAmount

medium

not able to create claim

medium

Variable balance token causing fund lock and loss

medium

Two address tokens can be withdrawn by the admin even if they are vested

Art Gobblers contest

Art Gobblers contest

3,540.59 USDC • 1 total finding • Code4rena • CertoraInc

#9

medium

Wrong balanceOf user after minting legendary gobbler

PartyDAO contest

PartyDAO contest

1,676.17 USDC • 2 total findings • Code4rena • CertoraInc

#10

medium

Possible that unanimous votes is unachievable

medium

Calling `transferEth` function can revert if `receiver` input corresponds to a contract that is unable to receive ETH through its `receive` or `fallback` function

FEI and TRIBE Redemption contest

FEI and TRIBE Redemption contest

134.09 USDC • Code4rena • CertoraInc

#5

Canto Dex Oracle contest

Canto Dex Oracle contest

146.62 CANTO • 1 total finding • Code4rena • CertoraInc

#10

medium

Calculated `token0TVL` may be zero under certain scenarios

Nouns Builder contest

Nouns Builder contest

1,389.73 USDC • 4 total findings • Code4rena • CertoraInc

#16

medium

Creating a new governance proposal can be prevented by anyone

medium

`Governor` - Quorum could be less than intended

medium

Founders can receive less tokens that expected

medium

Truncation in casting can lead to a founder receiving all the base tokens

Aug '22

Olympus DAO contest

Olympus DAO contest

434.16 USDC • 1 total finding • Code4rena • CertoraInc

#38

medium

Moving average precision is lost

Nouns DAO contest

Nouns DAO contest

52.1 USDC • Code4rena • CertoraInc

#38

FIAT DAO veFDT contest

FIAT DAO veFDT contest

4,482.5 USDC • 6 total findings • Code4rena • CertoraInc

silver

high

Unsafe usage of ERC20 transfer and transferFrom

medium

ERROR IN UPDATING **_checkpoint** IN THE **increaseUnlockTime** FUNCTION

medium

Unsafe casting from int128 can cause wrong accounting of locked amounts

medium

The current implementation of the VotingEscrow contract doesn't support fee on transfer tokens

medium

Attackers can abuse the quitLock function to get a very large amount of votes

medium

`increaseUnlockTime` missing `_checkpoint` for delegated values

Fraxlend (Frax Finance) contest

Fraxlend (Frax Finance) contest

2,581.49 USDC • 1 total finding • Code4rena • CertoraInc

#6

medium

Decimals limitation limits the tokens that can be used

Rigor Protocol contest

Rigor Protocol contest

86.51 USDC • Code4rena • CertoraInc

#47

Jul '22

Axelar Network v2 contest

Axelar Network v2 contest

56.32 USDC • Code4rena • CertoraInc

#40

Golom contest

Golom contest

524.98 USDC • Code4rena • CertoraInc

#23

May '22

Velodrome Finance contest

Velodrome Finance contest

101.23 USDC • Code4rena • CertoraInc

#50

Rubicon contest

Rubicon contest

380.41 USDC • 4 total findings • Code4rena • CertoraInc

#29

high

First depositor can break minting of shares

medium

previewWithdraw calculates shares wrongly

medium

Use `safeTransfer()`/`safeTransferFrom()` instead of `transfer()`/`transferFrom()`

medium

Wrong DOMAIN_SEPARATOR

Sturdy contest

Sturdy contest

14.84 USDC • 1 total finding • Code4rena • CertoraInc

#55

high

The check for value transfer success is made after the return statement in _withdrawFromYieldPool of LidoVault

Aura Finance contest

Aura Finance contest

244.97 USDC • Code4rena • CertoraInc

#30

Cally contest

Cally contest

85.97 USDC • Code4rena • CertoraInc

#47

Enso Finance contest

Enso Finance contest

2,267.63 USDT • Code4rena • CertoraInc

#10

Alchemix contest

Alchemix contest

6,389.44 DAI • 1 total finding • Code4rena • CertoraInc

#7

medium

DoS in wrap and unwrap

FactoryDAO contest

FactoryDAO contest

61.8 DAI • 2 total findings • Code4rena • CertoraInc

#55

medium

safeTransferFrom is recommended instead of transfer (1)

medium

amount requires to be updated to contract balance increase (1)

Cudos contest

Cudos contest

6,741.71 USDC • 2 total findings • Code4rena • CertoraInc

bronze

medium

Missing check in the updateValset function

medium

Non-Cudos Erc20 funds sent through sendToCosmos() will be lost.

Forgotten Runes Warrior Guild contest

Forgotten Runes Warrior Guild contest

45.77 USDC • Code4rena • CertoraInc

#52

Apr '22

PoolTogether Aave v3 contest

PoolTogether Aave v3 contest

810 USDC • 2 total findings • Code4rena • CertoraInc

#7

high

[WP-H1] A malicious early user/attacker can manipulate the vault's pricePerShare to take an unfair share of future users' deposits

medium

_depositAmount requires to be updated to contract balance increase

AbraNFT contest

AbraNFT contest

127.73 MIM • Code4rena • CertoraInc

#30

xTRIBE contest

xTRIBE contest

225.9 USDC • Code4rena • CertoraInc

#18

Badger Citadel contest

Badger Citadel contest

587.67 USDC • 1 total finding • Code4rena • CertoraInc

#24

high

StakedCitadel: wrong setupVesting function name

Axelar Network contest

Axelar Network contest

12,859.15 USDC • 2 total findings • Code4rena • CertoraInc

gold

medium

Low level call returns true if the address doesn't exist

medium

User's funds can get lost when transferring to other chain

Duality Focus contest

Duality Focus contest

83.47 USDC • Code4rena • CertoraInc

#13

Backed Protocol contest

Backed Protocol contest

586.89 USDC • 1 total finding • Code4rena • CertoraInc

#9

medium

`requiredImprovementRate` can not work as expected when `previousInterestRate` less than 10 due to precision loss

Mar '22

Volt Protocol contest

Volt Protocol contest

294.09 USDC • Code4rena • CertoraInc

#14

Joyn contest

Joyn contest

598.66 USDC • Code4rena • CertoraInc

#16

LI.FI contest

LI.FI contest

2,593.92 USDC • 1 total finding • Code4rena • CertoraInc

#9

medium

Failed transfer with low level call won't revert

prePO contest

prePO contest

638.45 USDC • 1 total finding • Code4rena • CertoraInc

#10

high

First depositor can break minting of shares

Maple Finance contest

Maple Finance contest

487.32 USDC • Code4rena • CertoraInc

#8

Biconomy Hyphen 2.0 contest

Biconomy Hyphen 2.0 contest

6,780.92 USDT • 4 total findings • Code4rena • CertoraInc

bronze

high

Can deposit native token for free and steal funds

medium

call to non-existing contracts returns success

medium

wrong condition checking in price calculation

medium

`sharesToTokenAmount`: Division by zero

Timeswap contest

Timeswap contest

169.36 USDC • Code4rena • CertoraInc

#12

Feb '22

Foundation contest

Foundation contest

837.51 USDC • Code4rena • CertoraInc

#14

PoolTogether TWAB Delegator contest

PoolTogether TWAB Delegator contest

824.8 USDC • Code4rena • CertoraInc

#4

SKALE contest

SKALE contest

350.79 USDC • Code4rena • CertoraInc

#21

Hubble contest

Hubble contest

237.85 USDC • Code4rena • CertoraInc

#28

Tribe Turbo contest

Tribe Turbo contest

11,189.18 USDC • 3 total findings • Code4rena • CertoraInc

silver

high

TurboRouter: deposit(), mint(), createSafeAndDeposit() and createSafeAndDepositAndBoost() functions do not work

high

ERC4626 mint uses wrong `amount`

medium

`ERC4626RouterBase.withdraw` should use a **max** shares out check

Concur Finance contest

Concur Finance contest

931.46 USDC • 4 total findings • Code4rena • CertoraInc

#17

high

[WP-H14] `ConvexStakingWrapper`, `StakingRewards` Wrong implementation will send `concur` rewards to the wrong receiver

medium

`MasterChef.updatePool()` Fails To Update Reward Variables If `block.number >= endBlock`

medium

During stake or deposit, users would not be rewared the correct Concur token, when MasterChef has under-supply of it.

medium

[ConcurRewardPool] Possible reentrancy when claiming rewards

Jan '22

Behodler contest

Behodler contest

6,637.35 USDC • 3 total findings • Code4rena • CertoraInc

#5

medium

user won't be able to get his rewards in case of staking with amount = 0

medium

The system can get to a "stuck" state if a bad proposal (proposal that can't be executed) is accepted

medium

flan can't be transferred unless the flan contract has flan balance greater than the amount we want to transfer