Core Contracts

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

Some admin functions in RAAC can not work

Summary

Some admin functions in RAAC can not work

Vulnerability Details

In RAAC token, there is some functions with one onlyOwner modifier. For example:

function setFeeCollector(address _feeCollector) external onlyOwner { }
function setSwapTaxRate(uint256 rate) external onlyOwner { _setTaxRate(rate, true); }
function setBurnTaxRate(uint256 rate) external onlyOwner { _setTaxRate(rate, false); }
function setTaxRateIncrementLimit(uint256 limit) external onlyOwner { }
function manageWhitelist(address account, bool add) external onlyOwner { }

In RAACMinter.sol, we can find out below functions:

function setSwapTaxRate(uint256 _swapTaxRate) external onlyRole(UPDATER_ROLE) {
if (_swapTaxRate > 1000) revert SwapTaxRateExceedsLimit();
raacToken.setSwapTaxRate(_swapTaxRate);
}
function setBurnTaxRate(uint256 _burnTaxRate) external onlyRole(UPDATER_ROLE) {
if (_burnTaxRate > 1000) revert BurnTaxRateExceedsLimit();
raacToken.setBurnTaxRate(_burnTaxRate);
}
function setFeeCollector(address _feeCollector) external onlyRole(UPDATER_ROLE) {
if (_feeCollector == address(0)) revert FeeCollectorCannotBeZeroAddress();
raacToken.setFeeCollector(_feeCollector);
}

So we can come to one conclusion that the RAACMinter will be the RAAC token's owner. The problem here is that we miss some interfaces in RAACMinter. This will cause that some admin functions in RAAC token, e.g. setTaxRateIncrementLimit cannot work as expected.

Impact

Some admin functions in RAAC can not work.

Tools Used

Manual

Recommendations

Add some interfaces in RAACMinter to support these admin functions in RAAC contract.

Updates

Lead Judging Commences

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

RAACMinter lacks critical ownership transfer functionality and parameter management after receiving RAACToken ownership, causing permanent protocol rigidity

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

RAACMinter lacks critical ownership transfer functionality and parameter management after receiving RAACToken ownership, causing permanent protocol rigidity

Support

FAQs

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

Give us feedback!