Core Contracts

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

tick function minting raac token to stabilityPool with increasing excessTokens

Summary

tick function minting raac token to stabilityPool . Here excessTokens also increased with minted amount . But excessTokens is used as extra tokens held for future distribution on RAACMinter contract. It might caused an issue later on.

Vulnerability Details

While minting RAAC tokens to the stabilityPool, excessTokens increased by the minted amount, causing future issues. Currently getExcessTokens() not used in the code base , so it is ok for the time being.

function tick() external nonReentrant whenNotPaused {
if (emissionUpdateInterval == 0 || block.timestamp >= lastEmissionUpdateTimestamp + emissionUpdateInterval) {
updateEmissionRate();
}
uint256 currentBlock = block.number;
uint256 blocksSinceLastUpdate = currentBlock - lastUpdateBlock;
if (blocksSinceLastUpdate > 0) {
uint256 amountToMint = emissionRate * blocksSinceLastUpdate;
if (amountToMint > 0) {
excessTokens += amountToMint;
lastUpdateBlock = currentBlock;
raacToken.mint(address(stabilityPool), amountToMint);
emit RAACMinted(amountToMint);
}
}
}

Impact

Incorrect incresing excessTokens caused integration issues of getExcessTokens in future.

Tools Used

Manual Reveiw

Recommendations

Consider removing the excessTokens variable in tick() function.

Updates

Lead Judging Commences

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

RAACMinter wrong excessTokens accounting in tick function

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

RAACMinter wrong excessTokens accounting in tick function

Support

FAQs

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