https://sherlock-files.ams3.digitaloceanspaces.com/twitter_images/576c3c78-b20e-4179-84dc-306435f50c29.jpg

ubermensch

Security Researcher

Blockchain Security Researcher | Solidity & Rust | EVM & Solana & Near Expertise

Contact Me

High

22

Total

Medium

8

Total

$3.28K

Total Earnings

#930 All Time

12x

Payouts

bronze

1x

3rd Places

regular

3x

Top 10

regular

4x

Top 25

All

Sherlock

Code4rena

CodeHawks

Oct '24

Orderly Solana Vault Contract

Orderly Solana Vault Contract

1,997.97 USDC • 2 total findings • Sherlock • ubermensch

bronze

high

An attacker will steal withdrawals from users

high

An attacker will deposit fake tokens and withdraw USDC

Feb '24

AI Arena

AI Arena

3.07 USDC • 2 total findings • Code4rena • ubermensch

#150

high

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

medium

NFTs can be transferred even if StakeAtRisk remains, so the user's win cannot be recorded on the chain due to underflow, and can recover past losses that can't be recovered(steal protocol's token)

Jan '24

Curves

Curves

1.27 USDC • 4 total findings • Code4rena • ubermensch

#126

high

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

high

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

medium

onBalanceChange causes previously unclaimed rewards to be cleared

medium

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

Sep '23

DittoETH

DittoETH

82.07 USDC • 1 total finding • CodeHawks • ubermensch

#36

low

Loss of ETH yield due to rounding error when updating the yield rate in the `updateYield` function

Aug '23

Cooler Update

Cooler Update

422.57 USDC • 2 total findings • Sherlock • ubermensch

#6

high

Malicious Lender Callback Prevents Repayments in Cooler.sol

medium

Inability to Execute `emergencyShutdown` Without `cooler_overseer` Role

Dopex

Dopex

221.94 USDC • 5 total findings • Code4rena • ubermensch

#54

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.

high

Users can get immediate profit when deposit and redeem in `PerpetualAtlanticVaultLP`

medium

Inaccurate swap amount calculation in ReLP leads to stuck tokens and lost liquidity

medium

reLP() mintokenAAmount the calculations are wrong.

Sparkn

Sparkn

206.93 USDC • 4 total findings • CodeHawks • ubermensch

#21

high

The same signature can be used in different `distribution` implementation causing that the caller who owns the signature, can distribute on unauthorized implementations

low

If a winner is blacklisted on any of the tokens they can't receive their funds

low

Owner can incorrectly pull funds from contests not yet expired

low

Precision loss/Rounding to Zero in `_distribute()`

Jul '23

Beedle - Oracle free perpetual lending

Beedle - Oracle free perpetual lending

295.79 USDC • 18 total findings • CodeHawks • ubermensch

#10

high

Tokens with less than 18 decimals allow for draining of funds

high

Borrower can use Refinance to cancel auctions so they can extend their loan indefinitely

high

During refinance() new Pool balance debt is subtracted twice

high

[H-04] Lender#buyLoan - Malicious user could take over a loan for free without having a pool because of wrong access control

high

Stealing any loan opening for auction through others' lending pool

high

Attacker can steal a loan's collateral and break the protocol

high

Rewards can be sabotaged by large deposit and withdraw

high

`Lender` does not handle correctly rebasing, inflationary, deflationary tokens and tokens with fee on transfer

high

Forcing a borrower to pay a huge debt via the giveLoan()

high

Lender can Sandwich a borrower to seize his collateral

high

WETH staking rewards accumulated before the first staker deposits remain unutilized and stuck in the `Staking` contract

medium

The `borrow` and `refinance` functions can be front-run by the pool lender to set high interest rates

low

Lender fails to giveLoan because of inconsistent length between `loadIds` and `poolIds`

low

Griefing Attack via updateFor Function

gas

Multiple accesses of a mapping/array should use a local variable cache.

gas

Unnecessary If condition in update() of Staking.sol

gas

No use of Ownable in Staking contract.

gas

Incorrect Fee Calculation in Seize Function

CodeHawks Escrow Contract - Competition Details

CodeHawks Escrow Contract - Competition Details

2.47 USDC • 1 total finding • CodeHawks • ubermensch

#94

gas

Use Openzeppelin Minimal Clones to Save a Lot of Gas

May '23

Maia DAO Ecosystem

Maia DAO Ecosystem

23.84 USDC • 1 total finding • Code4rena • ubermensch

#67

high

Multiple issues with decimal scaling will cause incorrect accounting of hTokens and underlying tokens

Jan '23

RabbitHole Quest Protocol contest

RabbitHole Quest Protocol contest

7.05 USDC • 1 total finding • Code4rena • ubermensch

#82

medium

Users may not claim Erc1155 rewards when the Quest has ended

Sep '22

VTVL contest

VTVL contest

18.92 USDC • Code4rena • ubermensch

#75