Payouts
Top 10
Top 25
Top 50
All
Sherlock
Code4rena
CodeHawks
Mar '25
Feb '25
high
Multiple Delegation by Double Spending Boosts and Lack of Delegation Tracking in BoostController Contract
high
Delegation Boost Not Usable by Delegatees
high
RAACNFT mint function receives funds to address(this) but has no way of withdrawing them
high
`BaseGauge` users can claim rewards without staking
high
Users Can Overwrite Existing Locks in veRAACToken Resulting in Permanent Loss of Funds
high
`GaugeController` does not send funds to FeeCollector disrupting fees distribution and causing loss of funds
high
Multiple issues from unnecessary balance increase calculation in DebtToken.mint
high
Reward manipulation vulnerability in StabilityPool
high
Incorrect Reward Claim Logic in FeeCollector::claimRewards Causes Denial of Service
high
RToken's transfer function lead to loss of funds due to incorrect math
high
Users can borrow more assets than they have deposited as collateral
high
Double Usage Index Scaling in StabilityPool Liquidation Inflates Required CRVUSD Balance
high
Treasury Balance Tracking Bypass in FeeCollector
high
Attackers can double voting power and veToken amount by locking and increasing
high
Gauge Voting Misallocation Vulnerability
high
Gauge rewards are not transferred to gauge when distributeRewards() is called
high
Ineffective Time-Weighted Average Implementation in Fee Distribution
high
Critical Economic Design Flaw in ZENO Zero-Coupon Bond Implementation Leads to Guaranteed User Losses
high
Gauge stakers won't get any reward due to round-down in user weight calculation
medium
Gauge reward period can be extended indefinitely
medium
Incorrect utilization rate forces protocol to issue maximum rewards indefinitely
medium
Incorrect DebtToken totalSupply Scaling Breaks Interest Rate Calculations
medium
LendingPool deposits do not work with CurveVault due to lack of funds
medium
LendingPool::getNormalizedIncome() returns stale liquidity index
medium
Liquidation Cannot Be Closed Even With Healthy Position Due To Strict Debt Check
medium
There is no logic checking for RAACNFT price staleness before minting it
medium
`RToken::calculateDustAmount` are incorrectly calculated, leading to not be able to transfer the accrued dust amount
medium
LendingPool.getUserDebt returns outdated value and can lead to liquidation failure
medium
Treasury Contract Deposit Function Can Be Frontrun To Deny Protocol Operations
medium
Workingsupply would always be overwritten in boostcontroller.sol impacting reward calculations
medium
Missing Boost State Update in extend() and withdraw()
medium
Missing Liquidity Rebalancing in Repayments and Liquidations Leading to Inefficient Liquidity Management
medium
Token Accounting Mismatch Between tick() and mintRewards() in RAACMinter
medium
Permanent boost inflation through delegation removal in Boostcontroller.sol
medium
Inconsistent Scaling in RToken Transfer Functions
medium
Wrong access control in `RAACToken::setFeeCollector`, `RAACToken::setSwapTaxRate`, `RAACToken::setBurnTaxRate`
medium
RAACToken burns less tokens than expected when feeCollector is unset
medium
Incorrect boost calculation in `BoostController#_calculateBoost()` can be exploited to gain an unfair advantage in reward distribution
medium
Flawed Boost Multiplier Calculation Always Yields Maximum Boost
medium
The `TimelockController::executeEmergencyAction()` function does not update the `_operations` mapping, which can lead to an operation being executed twice.
medium
Pending fee not cleared and overwritten by updates via updateFeeType()
low
Unauthorized Vote Casting Vulnerability
low
Emergency withdraw functionality in veRAACToken takes longer than expected
low
Incorrect Initialization of minBoost in BaseGauge Constructor Breaks Core Contract Functionality
low
Missing Checkpoint Reset in `veRAACToken::emergencyWithdraw` Function
low
`FeeCollector::updateFeeType` wrong fee share validation leads to impossible update for some fee types
low
Incorrect Timestamp Tracking in RAACHousePrice contract
low
Hardcoded Emission Values Lead to Incorrect Reward Calculations
Jan '25
high
Sandwich the startAuction function with flashloan
high
Calling the transferReserveToAuction will revert due to increase in currentPeriod
high
Fee is charged current reserveToken pool balance to time which is not updated
medium
Bidding can be DOSed
medium
Attacker is able to manipulate the pool balance such that the auction succeeds
medium
Shares are added even with failed auctions
Dec '24
high
In `transferVesting`, the `grantorVesting.releaseRate` is calculated incorrectly, which leads to the sender being able to unlock more tokens than were initially locked.
medium
Listing potential can not be purchased with discounted price
medium
Users can prevent being reallocated by listing to marketplace
Nov '24