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

ktg

Security Researcher

Contact Me

High

19

Total

Medium

26

Total

$30.99K

Total Earnings

#264 All Time

20x

Payouts

gold

1x

1st Places

silver

1x

2nd Places

bronze

3x

3rd Places

All

Sherlock

Code4rena

Mar '24

Revert Lend

Revert Lend

3,684.14 USDC • 4 total findings • Code4rena • ktg

bronze

medium

Users cannot stop loss in AutoRange and AutoExit

medium

Users's tokens stuck in AutoCompound after Vault is deactivated.

medium

Due to interest rates update method, Interest-Free Loans are possible and the Cost of DoS are reduced

medium

Protocol can be repeatedly gas griefed in `AutoRange` external call

Feb '24

AI Arena

AI Arena

118.75 USDC • 8 total findings • Code4rena • ktg

#50

high

Malicious user can stake an amount which causes zero curStakeAtRisk on a loss but equal rewardPoints to a fair user on a win

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

Fighters cannot be minted after the initial generation due to uninitialized `numElements` mapping

high

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

high

FighterFarm:: reroll won't work for nft id greator than 255 due to input limited to uint8

medium

DoS in `MergingPool::claimRewards` function and potential DoS in `RankedBattle::claimNRN` function if called after a significant amount of rounds passed.

medium

Fighter created by mintFromMergingPool can have arbitrary weight and element

Jan '24

Curves

Curves

59.39 USDC • 7 total findings • Code4rena • ktg

#56

high

Whitelised accounts can be forcefully DoSed from buying curveTokens during the presale

high

Attack to make ````CurveSubject```` to be a ````HoneyPot````

high

Unauthorized Access to setCurves Function

medium

Protocol and referral fee would be permanently stuck in the Curves contract when selling a token

medium

Curves::_buyCurvesToken(), Excess of Eth received is not refunded back to the user.

medium

Withdrawing with amount = 0 will forcefully set name and symbol to default and disable some functions for token subject

medium

If a user sets their curve token symbol as the default one plus the next token counter instance it will render the whole default naming functionality obsolete

Dec '23

Revolution Protocol

Revolution Protocol

577.42 USDC • 4 total findings • Code4rena • ktg

#14

high

`ArtPiece.totalVotesSupply` and `ArtPiece.quorumVotes` are incorrectly calculated due to inclusion of the inaccessible voting powers of the NFT that is being auctioned at the moment when an art piece is created

high

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

medium

Once EntropyRateBps is set too high, can lead to denial-of-service (DoS) due to an invalid ETH amount

medium

Bidder can use donations to get VerbsToken from auction that already ended.

Aug '23

Shell Protocol

Shell Protocol

1,933.59 USDC • 1 total finding • Code4rena • ktg

#7

high

Lack of Balance Validation

Arbitrum Security Council Election System

Arbitrum Security Council Election System

2,145.77 USDC • 1 total finding • Code4rena • ktg

#7

medium

SecurityCouncilNomineeElectionGovernor might have to wait for more than 6 months to create election again

Jul '23

PoolTogether

PoolTogether

1,646.23 USDC • 2 total findings • Code4rena • ktg

#17

high

`Vault.mintYieldFee` FUNCTION CAN BE CALLED BY ANYONE TO MINT `Vault Shares` TO ANY RECIPIENT ADDRESS

medium

Improper handling of cases when withdrawable assets = 0

Jun '23

Lybra Finance

Lybra Finance

512.3 USDC • 3 total findings • Code4rena • ktg

#21

high

EUSD.mint function wrong assumption of cases when calculated sharesAmount = 0

medium

Due to inappropriately short `votingPeriod` and `votingDelay`, it is near impossible for the governance to function correctly.

medium

Impossibility to change `safeCollateralRatio`

Llama

Llama

7,540.46 USDC • 2 total findings • Code4rena • ktg

bronze

high

Anyone can change approval/disapproval threshold for any action using LlamaRelativeQuorum strategy.

medium

LlamaPolicy could be DOS by creating large amount of actions.

May '23

Juicebox Buyback Delegate

Juicebox Buyback Delegate

2,242.15 USDC • Code4rena • ktg

bronze
Ajna Protocol

Ajna Protocol

294.5 USDC • 2 total findings • Code4rena • ktg

#30

medium

Governance attack on Extraordinary Proposals

medium

The voting thresholds in Ajna's Extraordinary Funding Mechanism can be manipulated to execute proposals below the expected threshold.

Apr '23

Rubicon v2

Rubicon v2

13.87 USDC • 4 total findings • Code4rena • ktg

#100

high

Reward accounting is incorrect in BathBuddy contract

high

DOS of market operations with malicious offers

medium

Zero reward rate calculation impedes low-decimals token distributions

medium

Calling `ExpiringMarket.stop` and `ExpiringMarket.isClosed` functions cannot pause any functionlities of the market

Mar '23

Gitcoin

Gitcoin

5.94 USDC • Sherlock • ktg

#68

Feb '23

Hats

Hats

77.39 USDC • 1 total finding • Sherlock • ktg

#18

medium

Incompatibility between balanceOf and balanceOfBatch.

Jan '23

Popcorn contest

Popcorn contest

122.61 USDC • 1 total finding • Code4rena • ktg

#63

high

Modifier VaultController._verifyCreatorOrOwner does not work as intented

Dec '22

Caviar contest

Caviar contest

184.33 USDC • 1 total finding • Code4rena • ktg

#28

medium

Price will not always be 18 decimals, as expected and outlined in the comments

PoolTogether contest

PoolTogether contest

4,203.7 USDC • 1 total finding • Code4rena • ktg

gold

medium

An attacker can make users unable to cancel their L1 calls on Ethereum To Arbitrum

Nov '22

LooksRare Aggregator contest

LooksRare Aggregator contest

36.34 USDC • Code4rena • ktg

#24

SIZE contest

SIZE contest

5,573.02 USDC • 3 total findings • Code4rena • ktg

silver

high

Bidders might fail to withdraw their unused funds after the auction was finalized because the contract doesn't have enough balance.

medium

Attacker may DOS auctions using invalid bid parameters

medium

Denial of service when `baseAmount` is equal to zero

Oct '22

Paladin - Warden Pledges contest

Paladin - Warden Pledges contest

19.64 USDC • Code4rena • ktg

#33