Core Contracts

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

Lack of Minting Restrictions in mint Function Leading to Potential Denial of Service and Inflation

Summary

The lack of minting restrictions in the mint function is a medium severity issue that can lead to potential denial of service attacks and inflation of the token supply. Implementing checks for minimum and maximum minting amounts and conducting thorough audits and testing are essential to address this issue and enhance the security and reliability of the contract.

Vulnerability Details

The mint function in the RAACToken contract allows a minter to mint tokens to a specified address. However, there are no checks to prevent the minter from minting a zero balance or an excessively large amount of tokens. This can lead to potential denial of service (DoS) attacks or inflation of the token supply. A malicious minter can mint a zero balance to cause unnecessary transactions or mint an excessively large amount of tokens, leading to inflation and devaluation of the token.

Impact

  • Denial of Service: A malicious minter can mint a zero balance, causing unnecessary transactions and potential DoS attacks.

  • Inflation: A malicious minter can mint an excessively large amount of tokens, leading to inflation and devaluation of the token.

  • Loss of Trust: Unrestricted minting can lead to loss of trust in the token and the contract, affecting its credibility and value.

Tools Used

manual review

Recommendations

  1. Minimum Minting Amount: Implement a check to ensure that the minted amount is greater than zero.

  2. Maximum Minting Cap: Implement a maximum minting cap to prevent the minting of an excessively large amount of tokens.

  3. Audit and Testing: Conduct a thorough audit and testing of the contract to ensure that the minting logic is correctly implemented and secure.

uint256 public constant MAX_MINT_AMOUNT = 1000000 * 10**18; // Example maximum minting cap
function mint(address to, uint256 amount) external onlyMinter {
require(to != address(0), "Invalid address");
require(amount > 0, "Mint amount must be greater than zero");
require(amount <= MAX_MINT_AMOUNT, "Mint amount exceeds maximum limit");
_mint(to, amount);
emit Mint(to, amount);
}
Updates

Lead Judging Commences

inallhonesty Lead Judge 7 months ago
Submission Judgement Published
Invalidated
Reason: Non-acceptable severity

Appeal created

0xtonchi Submitter
6 months ago
0xtonchi Submitter
6 months ago
inallhonesty Lead Judge
6 months ago
inallhonesty Lead Judge 6 months ago
Submission Judgement Published
Invalidated
Reason: Non-acceptable severity

Support

FAQs

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

Give us feedback!