Core Contracts

Regnum Aurum Acquisition Corp
HardhatReal World AssetsNFT
77,280 USDC
View results
Submission Details
Severity: medium
Valid

Absence of cooldown period in claimRewards will cause excess claim of RAAC rewards from FeeCollector contract

Summary

Malicious users can steal RAAC rewards through the FeeCollector contract. With the claimRewards, users who hold veRAAC tokens can claim RAAC rewards from the FeeCollector. Due to the absence of a coolDown period in the claimRewards function, attackers can call the increase lock to add more RAAC token and call claimRewards some seconds later to claim RAAC tokens.

Vulnerability Details

  • Attacker acquired 500 RAAC token to lock in the veRAACToken contract for a duration of two years.

  • He gets 250 veRAAC token. One year later he would have accumulated enough voting right. see

    => (500*1e18) * 2 years / 4 years
    => 500000000000000000000 * 730 days / 1460 days
    => 500000000000000000000 * 1 / 2
    => 250000000000000000000

Impact

  • Protocol loses distributed RAAC tokens generated from fee collection to attackers.

  • Some users will claim more rewards than others.

Tools Used

Manaual review.

Recommendations

Add a cooldown period in the claimRewards function. Currently, in the contract, there is a function called _updateLastClaimTime which can be integrated to fix cool downs.

Updates

Lead Judging Commences

inallhonesty Lead Judge 4 months ago
Submission Judgement Published
Validated
Assigned finding tags:

_updateLastClaimTime not properly used to track rewards claim time

Support

FAQs

Can't find an answer? Chat with us on Discord, Twitter or Linkedin.