Core Contracts

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

Unauthorized Boost Update in updateUserBoost Function

Summary

The updateUserBoost function allows anyone to update the boost value for any user in a specific pool. There is no access control mechanism in place to restrict who can call this function, potentially leading to unauthorized modifications of user boosts.

Vulnerability Details

The function updateUserBoost(address user, address pool) is publicly accessible without any restrictions on the caller. This means that any external account or contract can call this function and modify the boost values of any user in any supported pool. The lack of an onlyOwner, onlyAdmin, or onlyAuthorized modifier allows unrestricted access, which can be exploited for manipulation.

Impact

Malicious actors can artificially inflate or reduce the boost values of users, potentially affecting rewards distribution and pool calculations.

Tools Used

  • Manual code review

Recommendations

  1. Implement Access Control: Restrict access to this function using an appropriate modifier, such as:

    modifier onlyAuthorized() {
    require(msg.sender == owner || isAuthorized[msg.sender], "Not authorized");
    _;
    }

    Apply this modifier to updateUserBoost to ensure only authorized users can call it.

Updates

Lead Judging Commences

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

BoostController::updateUserBoost lacks caller validation, allowing anyone to force delegation of any user's boost to any pool without consent, hijacking voting power

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

BoostController::updateUserBoost lacks caller validation, allowing anyone to force delegation of any user's boost to any pool without consent, hijacking voting power

Support

FAQs

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