Core Contracts

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

Unrecoverable RTokens Due to Overly Restrictive rescueToken

Summary

The rescueToken function blocks RToken rescues, causing permanent loss if RTokens are accidentally sent to the contract.

Vulnerability Details

The rescueToken function reverts if tokenAddress == reserve.reserveRTokenAddress, making it impossible to recover mistakenly sent RTokens.

require(tokenAddress != reserve.reserveRTokenAddress, "Cannot rescue RToken");

Impact

  • Permanent Loss: RTokens sent to the contract are irrecoverable.

  • Protocol Imbalance: Incorrect RToken supply tracking.

Tools Used

Recommendations

Allow RToken rescue with admin oversight:

```solidity

if (tokenAddress == reserve.reserveRTokenAddress) {

require(recipient == owner(), "RTokens can only be rescued to owner");

}

```

Updates

Lead Judging Commences

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

RToken::rescueToken() can never be called

Support

FAQs

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