Core Contracts

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

Oracle Price Manipulation

Summary

getNFTPrice(tokenId) trusts a single oracle price without validating price stability.

Attackers can manipulate the price using flash loans or oracle attacks.

Vulnerability Details

function getNFTPrice(uint256 tokenId) public view returns (uint256) {

(uint256 price, uint256 lastUpdateTimestamp) = priceOracle.getLatestPrice(tokenId);

if (price == 0) revert InvalidNFTPrice();
return price;
}

Impact

Tools Used

Recommendations

Use TWAP (Time-Weighted Average Price) instead of a single price fetch.

Implement sanity checks for price variations.

function getNFTPrice(uint256 tokenId) public view returns (uint256)

{ (uint256 price, uint256 lastUpdateTimestamp) = priceOracle.getLatestPrice(tokenId);

if (price == 0) revert InvalidNFTPrice();

if (block.timestamp - lastUpdateTimestamp > MAX_PRICE_UPDATE_DELAY) revert PriceOutdated();

return price; }

Updates

Lead Judging Commences

inallhonesty Lead Judge 4 months ago
Submission Judgement Published
Invalidated
Reason: Design choice
inallhonesty Lead Judge 4 months ago
Submission Judgement Published
Invalidated
Reason: Design choice

Support

FAQs

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