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

asui

Security Researcher

Contact Me

High

25

Total

Medium

7

Total

$11.00K

Total Earnings

#516 All Time

19x

Payouts

gold

2x

1st Places

regular

4x

Top 10

regular

6x

Top 25

All

Sherlock

Code4rena

CodeHawks

Apr '25

Aegis.im YUSD

Aegis.im YUSD

45.94 OP • 1 total finding • Sherlock • asui

#4

high

Protocol is printing free unbacked money(YUSD) instead of taking redemption fees.

Dec '24

Alchemix Transmuter

Alchemix Transmuter

513.57 op • 2 total findings • CodeHawks • touthang

#11

medium

Incorrect Total Assets Calculation in _harvestAndReport Leading to Share Value Manipulation and Irredeemable Assets

medium

not adding `claimable` balance to the total assets in `_harvestAndReport` can cause losses.

Sep '24

Flayer

Flayer

170.25 USDC • 3 total findings • Sherlock • asui

#47

high

Even after execute has been called, an attacker can reset canExecute to true and cancle to delete the collection which will DOS users claims.

high

No function for voters to reclaim their collectionTokens incase the shutdown process was canceled before being executed.

high

ETH will be drained from the CollectionShutdown contract because CollectionShutdownParams.quorumVotes is not compatible with collectionTokens that have 7,8 or 9 denominations i.e. 1e27 decimals.

Aug '24

Tadle

Tadle

748.60 USDC • 10 total findings • CodeHawks • touthang

#8

high

Incorrect set up and logic of `referralInfoMap` in `SystemConfig::updateReferrerInfo` function

high

TokenManager - Unlimited withdraw

high

Taker of bid offer will loss assets without any benefit if he calls the DeliveryPlace::settleAskMaker() for partial settlement.

high

`DeliveryPlace::settleAskTaker` Has Incorrect Access Control

high

Formulaic Error Rounds Down Causing Total Loss Of Funds For Bid Takers During Abort

high

The `DeliveryPlace::settleAskTaker()` function mistakenly uses `makerInfo.tokenAddress` to update the `TokenBalanceType.PointToken` in the `userTokenBalanceMap` mapping, leading to a critical error.

high

listOffer maker can settle offer via settleAskMaker() in Turbo settle type.

high

Missing abort status check allows bid taker to steal users funds

low

PreMarkets - Unable to withdraw platform rewards

low

High risk of griefing attack during settlement period in Protected mode

Jul '24

LoopFi

LoopFi

1.37 USDC • 1 total finding • Code4rena • asui

#56

medium

Malicious actor can abuse the minimum shares check in `StakingLPEth` and cause DoS or locked funds for the last user that withdraws

TempleGold

TempleGold

2,666.31 USDC • 3 total findings • CodeHawks • touthang

gold

high

Future stakers are paid with rewards that have been accrued from the past due to miscalculation in userRewardPerTokenPaid and _perTokenReward.

medium

Not upadting `_totalAuctionTokenAllocation` when removing last auction config at cooldown leads to wrong accounting of `_totalAuctionTokenAllocation` and permanent lock of auction tokens

low

Auction tokens cannot be recovered for the first ever spice auction

Jun '24

Size

Size

65.26 USDC • 3 total findings • Code4rena • asui

#46

high

Users won't liquidate positions because the logic used to calculate the liquidator's profit is incorrect

high

When `sellCreditMarket()` is called to sell credit for a specific cash amount, the protocol might receive a lower swapping fee than expected.

medium

Fragmentation fee is not taken if user compensates with newly created position

Apr '24

DYAD

DYAD

0.02 USDC • 1 total finding • Code4rena • asui

#114

high

Attacker can make 0 value deposit() calls to deny user from redeeming or withdrawing collateral

Zivoe

Zivoe

10.48 USDC • 2 total findings • Sherlock • asui

#52

high

Anyone can decrease the rewardRate and increase the periodFinish for all the reward tokens.

high

Revoking a user can lead to miscalculations in rewards and DOS for the last users to withdraw.

Mar '24

Ondo Finance

Ondo Finance

6,595.09 USDC • 1 total finding • Code4rena • asui

gold

medium

Integration issue in ousgInstantManager with BUILD if minUSTokens is set by blackrock.

PoolTogether

PoolTogether

1.47 USDC • 1 total finding • Code4rena • asui

#29

high

Any fee claim lesser than the total `yieldFeeBalance` as unit of shares is lost and locked in the `PrizeVault` contract

Dec '23

The Standard

The Standard

27.56 USDC • 4 total findings • CodeHawks • touthang

#48

high

Rewards can be drained because of lack of access control

low

Anyone with TST tokens can monitor the mempool and frontrun mint/burn functions to get EUROs rewards without even staking.

low

Lack of Minimum Amount Check in `SmartVaultV3::mint`, `SmartVaultV3::burn`, and `SmartVaultV3::swap` Can Result in Loss of Fees

low

Incorrect value returned by position() function

Ethereum Credit Guild

Ethereum Credit Guild

109.5 USDC • 3 total findings • Code4rena • asui

#64

high

The userGaugeProfitIndex is not set correctly, allowing an attacker to receive rewards without waiting

high

Users staking via the `SurplusGuildMinter` can be immediately slashed when staking into a gauge that had previously incurred a loss

medium

Wrong ProfitManager in GuildToken, will always revert for other types of gauges leading to bad debt

Oct '23

Ethena Labs

Ethena Labs

4.52 USDC • Code4rena • asui

#40

ENS

ENS

10.69 USDC • Code4rena • asui

#18

Aug '23

Dopex

Dopex

19.25 USDC • 2 total findings • Code4rena • asui

#106

high

The settle feature will be broken if attacker arbitrarily transfer collateral tokens to the PerpetualAtlanticVaultLP

high

The peg stability module can be compromised by forcing lowerDepeg to revert.

Jul '23

Foundry DeFi Stablecoin CodeHawks Audit Contest

Foundry DeFi Stablecoin CodeHawks Audit Contest

0.00 USDC • 1 total finding • CodeHawks • touthang

#164

gas

`++i`/`i++` should be `unchecked{++i}`/`unchecked{i++}` when it is not possible for them to overflow, as is the case when used in `for`- and `while`-loops

CodeHawks Escrow Contract - Competition Details

CodeHawks Escrow Contract - Competition Details

0.00 USDC • 1 total finding • CodeHawks • touthang

#96

low

Constructor of `Escrow` should make sure that `buyer`, `seller`, `arbiter` are different from each other.

Tokemak

Tokemak

7.81 USDC • 1 total finding • Sherlock • asui

#52

high

asui