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

SolSaver

Security Researcher

Contact Me

$361.00

Total Earnings

#1599 All Time

8x

Payouts

regular

1x

Top 25

regular

3x

Top 50

All

Code4rena

CodeHawks

Dec '23

The Standard

The Standard

6.35 USDC • 1 total finding • CodeHawks • SolSaver

#74

low

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

Jul '23

Moonwell

Moonwell

114.65 USDC • Code4rena • solsaver

#31

Beedle - Oracle free perpetual lending

Beedle - Oracle free perpetual lending

30.00 USDC • 16 total findings • CodeHawks • SolSaver

#92

low

Zero address leads to transaction reverts

low

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

gas

Uncheck Arithmetic where overflow/underflow impossible

gas

Using Private Rather Than Public For Constants,Saves Gas

gas

Use of magic numbers

gas

Named parameter mappings

gas

For the borrow(), repay() & startAuction() functions in Lender.sol the public visibility modifiers should be changed to external, to help optimize gas usage

gas

Use assembly to check for `address(0)`

gas

NatSpec documentation for function is missing

gas

Large multiples of ten should use scientific notation

gas

Constants in comparisons should appear on the left side

gas

Cache array length outside of loop

gas

Function ordering does not follow the Solidity style guide

gas

Long functions should be refactored into multiple, smaller, functions

gas

Interfaces should be indicated with an `I` prefix in the contract name

gas

Caching the pool variable for gas savings

Foundry DeFi Stablecoin CodeHawks Audit Contest

Foundry DeFi Stablecoin CodeHawks Audit Contest

15.35 USDC • 7 total findings • CodeHawks • SolSaver

#73

gas

Use `==` instead for `<=` for `uints` when comparing for `zero` values

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

gas

Constants should be be used for hardcoded values

gas

The nonReentrant modifier should occur before all other modifiers

gas

NatSpec `@return` argument is missing

gas

[I-4] Constants in comparisons should appear on the left side

gas

Use `assembly` to check for `address(0)`

CodeHawks Escrow Contract - Competition Details

CodeHawks Escrow Contract - Competition Details

35.04 USDC • 6 total findings • CodeHawks • SolSaver

#56

low

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

gas

Use assembly to check for `address(0)`

gas

The `nonReentrant` `modifier` should occur before all other modifiers

gas

NatSpec `@param` is missing

gas

NatSpec `@return` argument is missing

gas

Constants in comparisons should appear on the left side

Jun '23

Lybra Finance

Lybra Finance

122.46 USDC • Code4rena • solsaver

#52

Canto

Canto

19.36 USDC • Code4rena • solsaver

#12

Stader Labs

Stader Labs

18.57 USDC • Code4rena • solsaver

#36