Banner
https://sherlock-files.ams3.digitaloceanspaces.com/twitter_images/40ad0027-732e-4fc6-a5d8-5169548a89fa.jpg

TrungOre

Security Researcher

Independent Web3 security researcher Senior Watson at @sherlockdefi DM for audit

Contact Me

High

27

Total

Medium

1

Solo

31

Total

$44.69K

Total Earnings

#216 All Time

25x

Payouts

silver

3x

2nd Places

regular

11x

Top 10

regular

17x

Top 25

All

Sherlock

Code4rena

Jan '24

Opus

Opus

2,116.86 USDC • Code4rena • TrungOre

#9

Oct '23

Badger eBTC Audit + Certora Formal Verification Competition

Badger eBTC Audit + Certora Formal Verification Competition

15,736.55 USDC • 1 total finding • Code4rena • TrungOre

silver

medium

Attacker can utilize function `CdpManager.redeemCollateral()` to break the order of sortedCdps

The Wildcat Protocol

The Wildcat Protocol

340.65 USDC • 5 total findings • Code4rena • TrungOre

#28

high

Lenders can escape the blacklisting of their accounts because they can move their MarketTokens to different accounts and gain the WithdrawOnly Role on any account they want

high

Borrower has no way to update `maxTotalSupply` of `market` or close market.

high

Borrowers can escape from paying half of the penalty fees by closing the market, and those remaining penalty fees will be covered by the lender who withdraws last

high

Borrower can drain all funds of a sanctioned lender

medium

Function WildcatMarketController.setAnnualInterestBips allows for values outside the factory range

Jul '23

Bond Options

Bond Options

961.43 USDC • 4 total findings • Sherlock • TrungOre

#6

medium

Users must pay a lot of fee to claim rewards when they first stake in the OTLM contracts

medium

Adversary can spam tx to stop accuring the rewards

medium

DOS issue in `OTLM` contract when the `payoutToken` revert on transfer 0 token

medium

optionToken can't be exercise right after function `create` is called

Mar '23

Y2K

Y2K

1,039.43 USDC • 9 total findings • Sherlock • TrungOre

#15

high

Attacker can delist another user's rollover

high

Users can lose their profit when using a rollover mechanism

high

Some rollovers can't be processed due to the function `Carousel.delistInRollover`

high

Users can bypass the fee when depositing in the vault

medium

Copy entire array to memory can lead to DOS in functions `mintDepositInQueue` and `mintRollovers`

medium

Attackers can deposit into vaults after the de-peg event is triggered to steal the funds.

medium

Incorrect treasury address was used in function `VaultFactoryV2.changeTreasury()`

medium

Missing check of oracle's return value

medium

The function `Carousel.mintRollovers()` can be DOS due to the updating `rolloverAccounting[_epochId]`

Feb '23

Surge

Surge

278.69 USDC • 3 total findings • Sherlock • TrungOre

#6

high

First depositor of pool can abuse rounding error to steal tokens

high

User can borrow loan token without having enough collateral tokens

medium

Borrower can call `getCurrentState()` to make the interest can't be accrued

Volta

Volta

558.08 USDC • Sherlock • TrungOre

#6

Findings not publicly available for private contests.

OpenQ

OpenQ

2,357.99 USDC • 8 total findings • Sherlock • TrungOre

#6

high

Malicious funders can call `refundDeposit()` after a bounty is closed to make bounty doesn't have enough fund to pay for the winners.

high

Missing check whether the nft is refunded before transferring the reward to users

high

Attacker can create a draft tokens and spam deposit to make function `DepositManagerV1.refundDeposit()` out-of-gas.

high

Attacker can fund malicious tokens to make competitor unable to claim their reward.

high

Bounty doesn't work as expected with token revert transferring with amount = 0

high

Missing check of deposit's endTime lead to unable to refundDeposit

medium

`setPayoutScheduleFixed()` can be executed with fewer tiers

medium

After the bounty completely distributed, the remaining tokens can be locked into the contracts

Jan '23

Cooler

Cooler

153.83 USDC • 2 total findings • Sherlock • TrungOre

#22

high

Use `safeTransfer` instead of `transfer`

high

Attackers can force borrower unable to repay the loan in case debt token is USDC

Dec '22

Lyra

Lyra

304.44 USDC • Sherlock • TrungOre

#7

Findings not publicly available for private contests.

Nov '22

DODO

DODO

3,434.64 USDC • 1 total finding • Sherlock • TrungOre

silver

medium

Rounding error when call function `dodoMultiswap()` can lead to revert of transaction or fund of user

Aug '22

Rigor Protocol contest

Rigor Protocol contest

491.95 USDC • 2 total findings • Code4rena • TrungOre

#21

high

Builder can halve the interest paid to a community owner due to arithmetic rounding

medium

Incorrect initialization of smart contracts with Access Control issue

Jul '22

Golom contest

Golom contest

409.44 USDC • Code4rena • TrungOre

#30

Fractional v2 contest

Fractional v2 contest

2,538.81 USDC • 6 total findings • Code4rena • TrungOre

#8

high

Proposal which started buyout which fails is able to settle migration as if its buyout succeeded.

high

Fund will be stuck if a buyout is started while there are pending migration proposals

high

Steal NFTs from a Vault, and ETH + Fractional tokens from users.

high

Proposer can `start` a perpetual buyout which can only `end` if the auction succeeds and is not rejected

high

Cash-out from a successful buyout allows an attacker to drain Ether from the `Buyout` contract

medium

Use of `payable.transfer()` may lock user funds

Jun '22

Putty contest

Putty contest

185.31 USDC • 1 total finding • Code4rena • TrungOre

#36

medium

Options with a small strike price will round down to 0 and can prevent assets to be withdrawn

Yieldy contest

Yieldy contest

311.15 USDC • 2 total findings • Code4rena • TrungOre

#29

medium

token transfers in LiquidityReserve and Staking contract don't support deflationary ERC20 tokens, and user funds can be lost if stacking token was deflationary

medium

`_storeRebase()` is called with the wrong parameters

May '22

Cally contest

Cally contest

687.66 USDC • 2 total findings • Code4rena • TrungOre

#16

medium

It shouldn’t be possible to create a vault with Cally’ own token

medium

Vault is Not Compatible with Fee Tokens and Vaults with Such Tokens Could Be Exploited

FactoryDAO contest

FactoryDAO contest

3.18 DAI • 1 total finding • Code4rena • TrungOre

#62

medium

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

Forgotten Runes Warrior Guild contest

Forgotten Runes Warrior Guild contest

94.36 USDC • 1 total finding • Code4rena • TrungOre

#37

medium

Use of `.send()` May Revert if The Recipient's Fallback Function Consumes More Than 2300 Gas

Apr '22

PoolTogether Aave v3 contest

PoolTogether Aave v3 contest

29.56 USDC • Code4rena • TrungOre

#30

AbraNFT contest

AbraNFT contest

44.06 MIM • Code4rena • TrungOre

#53

Backd contest

Backd contest

452.37 USDC • 1 total finding • Code4rena • TrungOre

#22

medium

_revokeRole doesn't remove account from roleMember set

Phuture Finance contest

Phuture Finance contest

4,962 USDC • 3 total findings • Code4rena • TrungOre

silver

high

IndexLogic: An attacker can mint tokens for himself using assets deposited by other users

medium

Wrong shareChange() function (vToken.sol)

medium

Wrong requirement in reweight function (ManagedIndexReweightingLogic.sol)

Badger Citadel contest

Badger Citadel contest

2,317.41 USDC • 4 total findings • Code4rena • TrungOre

#11

high

StakedCitadel doesn't use correct balance for internal accounting

high

StakedCitadel: wrong setupVesting function name

medium

Funding.deposit() doesn't work if there is no discount set

medium

New vest reset `unlockBegin` of existing vest without removing vested amount

JPEG'd contest

JPEG'd contest

4,882.9 USDC • 2 total findings • Code4rena • TrungOre

#6

medium

reward will be locked in the farm if no LP join the pool at epoch.startBlock

medium

rewards will be locked if user transfer directly to pool without using deposit function