Security Researcher
Security Researcher | 40+ vulnerabilities reported in public contests on code4rena and sherlock | Multiple top 5 and top 10 in public contests.
High
Total
Medium
Total
Total Earnings
#553 All Time
Payouts
2nd Places
Top 10
Top 25
All
Sherlock
Code4rena
Oct '23
Sep '23
high
Registery address is set to proxy address of create3 instead of registery in the anchor.sol
high
In DonationVotingMerkleDistributionBaseStrategy `_registerRecipient` wrongly sets the recipient after the first one
medium
Anchor contract is unable to receive NFTs of any kind
medium
_registerRecipient will always revert in case useRegistryAnchor is set to false in rftCommitteeStrategy.sol
medium
Create3 library may not work as intended on the zksync
Aug '23
high
The settle feature will be broken if attacker arbitrarily transfer collateral tokens to the PerpetualAtlanticVaultLP
medium
Inaccurate swap amount calculation in ReLP leads to stuck tokens and lost liquidity
medium
User can avoid paying high premium price by correctly timing his bond call
medium
Change of `fundingDuration` causes "time travel" of `PerpetualAtlanticVault.nextFundingPaymentTimestamp()`
Jul '23
May '23
Apr '23
high
RubiconMarket batchOffer and batchRequote make offers as self; complete loss of funds for some types of tokens, for example WETH
high
Reward accounting is incorrect in BathBuddy contract
high
Placeholder
high
DOS of market operations with malicious offers
medium
Use of `block.number` leads to incorrect interest calculations
medium
No deadline parameter in `sellAllAmount()` and `buyAllAmount()` functions:
Mar '23
high
Critical Indexing Flaw in Enlist Function that lead to user information collision in ownerToRollOverQueueIndex mapping and prevent user from calling withdraw and safeTransferFrom in Carousel.sol
medium
Lack of staleness check in the getLatestPrice(address _token) function can lead to triggering depeg even when there is no depeg.
medium
Loss of funds if triggerNullEpoch is called late.
medium
Treasury can never be changed on vaults even after calling changeTreasury()