https://sherlock-files.ams3.digitaloceanspaces.com/twitter_images/d44429a7-43fc-4a91-883a-8de598b3e0bb.jpg

iamandreiski

Security Researcher

Independent Web3 Security Researcher

Contact Me

High

36

Total

Medium

41

Total

$59.02K

Total Earnings

#151 All Time

27x

Payouts

gold

1x

1st Places

silver

1x

2nd Places

bronze

1x

3rd Places

All

Sherlock

Code4rena

Cantina

CodeHawks

Apr '25

Aegis.im YUSD

Aegis.im YUSD

7,853.32 OP • 3 total findings • Sherlock • iamandreiski

gold

high

The redeem fee is paid by the protocol, instead of the user

medium

Malicious users can DoS the redeem limit by creating non-executable orders and withdrawing immediately

medium

Collateral can get stuck in the minting contract under certain conditions or be accounted as profit

Mar '25

badger-ebtc-bsm

badger-ebtc-bsm

755.04 USDC • 2 total findings • Cantina • iamandreiski

#7

high

Finding not yet public.

medium

Finding not yet public.

Feb '25

Usual Labs

Usual Labs

471.07 USDC • Sherlock • iamandreiski

#20

THORWallet

THORWallet

346.49 USDC • 2 total findings • Code4rena • iamandreiski

bronze

high

The user can send tokens to any address by using two bridge transfers, even when transfers are restricted.

medium

Improper Transfer Restrictions on Non-Bridged Tokens Due to Boolean Bridged Token Tracking, Allowing a DoS Attack Vector

Jan '25

infrared-contracts

infrared-contracts

18,204.29 USDC • 6 total findings • Cantina • iamandreiski

#4

high

Finding not yet public.

medium

Finding not yet public.

medium

Finding not yet public.

medium

Finding not yet public.

medium

Finding not yet public.

medium

Finding not yet public.

farcasterattestation-monorepo

farcasterattestation-monorepo

4,670.91 OP • 9 total findings • Cantina • iamandreiski

#4

high

Finding not yet public.

high

Finding not yet public.

high

Finding not yet public.

high

Finding not yet public.

high

Finding not yet public.

medium

Finding not yet public.

medium

Finding not yet public.

medium

Finding not yet public.

medium

Finding not yet public.

Dec '24

InterPol

InterPol

4,786.1 USDC • 2 total findings • Cantina • iamandreiski

silver

high

Finding not yet public.

high

Finding not yet public.

Oku's New Order Types Contract Contest

Oku's New Order Types Contract Contest

163.36 OP • 6 total findings • Sherlock • iamandreiski

#14

high

Missing reentrancy protection in the OracleLess contract can be used to drain the contract

high

Hash collision of the orderId can lead to fund loss in multiple ways

high

Malicious users can create malicious orders on behalf of users which have approved allowances to the StopLimit/OracleLess contracts

high

Malicious users can drain Bracket.sol's assets through a combination of OracleLess and Bracket dummy/malicious orders

medium

Tokens with blacklist can be used to permanently DoS the OracleLess contract and freeze all funds within it

medium

OracleLess doesn't implement a minimum size order, as well as no maximum pending queue size which can lead to a permanent DoS

Oct '24

Omni Network

Omni Network

392.58 USDC • 1 total finding • Cantina • iamandreiski

#19

medium

Finding not yet public.

Aug '24

Sentiment V2

Sentiment V2

78.91 USDC • 2 total findings • Sherlock • iamandreiski

#36

medium

Protocol admin / Pool Owner will not be able to offboard/delist an asset without breaking liquidations and other core functionalities

medium

SuperPool isn't fully compliant with ERC 4626

Jul '24

CCIP v1.5

CCIP v1.5

10,057.47 USDC • CodeHawks • iamandreiski

#8

Jun '24

Pegasus

Pegasus

1,205.39 USDC • 1 total finding • Cantina • iamandreiski

#4

medium

Finding not yet public.

Size

Size

0.05 USDC • 1 total finding • Code4rena • iamandreiski

#62

high

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

May '24

YOLO Games

YOLO Games

859.23 USDC • 2 total findings • Cantina • iamandreiski

#5

high

Finding not yet public.

medium

Finding not yet public.

Munchables

Munchables

0.02 USDC • 2 total findings • Code4rena • iamandreiski

#15

high

Malicious User can call `lockOnBehalf` repeatedly extend a users `unlockTime`, removing their ability to withdraw previously locked tokens

medium

Missing disapproval check in `LockManager.sol::approveUSDPrice` allows simultaneous approval and disapproval of a price proposal

Arrakis Valantis SOT Audit

Arrakis Valantis SOT Audit

1,853.22 USDC • 1 total finding • Sherlock • iamandreiski

#4

high

Executor can steal all funds from public vault when a new module is set

Apr '24

NOYA

NOYA

2,086.26 USDC + NOYA stars • 15 total findings • Code4rena • iamandreiski

#8

high

`SNXConnector.sol` TVL calculation is incorrect.

high

`AccountingManager::resetMiddle` will not behave as expected

high

`executeWithdraw` may be blocked if any of the users are blacklisted from the `baseToken`

high

In Dolomite, when opening a borrow position, the holding position in the Registry will never be updated due to the removePosition flag being set to true

medium

`AccountingManager#totalWithdrawnAmount` should reflect tokens actually transferred to users, instead of expected transfers

medium

Withdrawals in AccountManager are prone to DOS attacks.

medium

Base tokens accumulated from withdraw fees can't be transferred to/from the NoyaFeeReceiver and will remain stuck

medium

The total deposit amount limit in `AccountingManager.sol` can be bypassed

medium

Attacker can increase the length of `withdrawQueue` by withdrawing 0 amount of tokens frequently

medium

`performanceFeeReceiver` cannot mint any performance fee shares even if TVL is dropped by only a very tiny amount

medium

lzSend() forwards all of the contract balance as the native gas fee but the excess won't be always returned

medium

If a curve pool which CurveConnector uses is killed the vault manager can't close the position leading to loss of funds

medium

In the `Gearboxv3` connector the health factor of the account is never considered

medium

Maverick Connector uses ETH as liquidity for some of the Maverick pools, but NOYA isn't equipped to handle ETH in its vaults without handling conversion to/from WETH in the connector

medium

Due to missing health factor and hardcoded balance checks on Dolomite, a borrow position can be opened by withdrawing more than the supplied balance leading to possible unwanted liquidations

DYAD

DYAD

37.38 USDC • 6 total findings • Code4rena • iamandreiski

#74

high

Design flaw and mismanagement in vault licensing leads to double counting in collateral ratios and positions collateralized entirely with kerosine

high

Kerosene collateral is not being moved on liquidation, exposing liquidators to loss

high

Users can get their Kerosene stuck until TVL becomes greater than Dyad's supply

high

Unable to withdraw Kerosene from `vaultmanagerv2::withdraw` as it expects a `vault.oracle()` method which is missing in Kerosene vaults

medium

No incentive to liquidate small positions could result in protocol going underwater

medium

No incentive to liquidate when CR <= 1 as asset received < dyad burned

Mar '24

Taiko

Taiko

177.52 USDC • 1 total finding • Code4rena • iamandreiski

#30

medium

retryMessage unable to handle edge cases.

Revert Lend

Revert Lend

727.1 USDC • 2 total findings • Code4rena • iamandreiski

#19

high

Owner of a position can prevent liquidation due to the 'onERC721Received' callback

medium

Tokens can't be removed as a collateral without breaking liquidations and other core functions

Feb '24

Rio Network

Rio Network

5.57 USDC • 1 total finding • Sherlock • iamandreiski

#31

high

Epochs are incorrectly accounted for when queueing and settling them with EigenLayer leading to a DoS of the protocol's withdrawal functionalities

AI Arena

AI Arena

111.72 USDC • 2 total findings • Code4rena • iamandreiski

#58

high

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

medium

Can mint NFT with the desired attributes by reverting transaction

Jan '24

MorpheusAI

MorpheusAI

1,908.08 USDC • 2 total findings • CodeHawks • iamandreiski

#5

high

All claimed rewards will be lost for the users using the account abstraction wallet

low

LayerZeroEndpoint.send() in L1Sender.sol may revert if the user does not provide enough native gas as specified

Decent

Decent

2,265.6 USDC • 1 total finding • Code4rena • iamandreiski

#4

high

Due to missing checks on minimum gas passed through LayerZero, executions can fail on the destination chain

Salty.IO

Salty.IO

0.78 USDC • 1 total finding • Code4rena • iamandreiski

#117

high

User can evade `liquidation` by depositing the minimum of tokens and gain time to not be liquidated

Curves

Curves

1.62 USDC • 4 total findings • Code4rena • iamandreiski

#120

high

Unrestricted claiming of fees due to missing balance updates in `FeeSplitter`

high

Unauthorized Access to setCurves Function

medium

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

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

The Standard

The Standard

1.51 USDC • 3 total findings • CodeHawks • iamandreiski

#83

high

Rewards can be drained because of lack of access control

medium

Missing deadline check allow pending transactions to be maliciously executed

medium

Fees are hardcoded to 3000 in ExactInputSingleParams