Core Contracts

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

Revoked Beneficiaries Lose Their RAAC Tokens to the RAACReleaseOrchestrator contract

Summary

Beneficiaries who get revoked within or after the vesting period lose their RAAC tokens to the RAACReleaseOrchestrator Contract

Vulnerability Details

When the address assigned with the EMERGENCY_ROLE triggers the emerygencyRoke function to revoke a schedule period, the unreleased amount of RAAC tokens to be sent to beneficiaries after the vesting period is sent into the contract. This is the contract sending token to itself.



When vesting duration ends, these RAAC tokens cannot be recovered from the RAACReleaseOrchestrator.

Here is a written POC in foundry:

Although the documentation seems cautious of this when it states that "Emergency revocation requires careful consideration", however, it seems mindless to the impact of having the RAACToken getting stuck in contract forever.

Impact

RAAC tokens of revoked beneficiaries are stuck in the contract.

Tools Used

Manual review, Foundry.

Recommendations

Rather than sending the token back into the RAACReleaseCollector that has no withdrawal mechanism for stuck tokens, send the revoked scheduled tokens to the fee collector in the RAAC Token.

Updates

Lead Judging Commences

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

RAACReleaseOrchestrator::emergencyRevoke sends revoked tokens to contract address with no withdrawal mechanism, permanently locking funds

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

RAACReleaseOrchestrator::emergencyRevoke sends revoked tokens to contract address with no withdrawal mechanism, permanently locking funds

Support

FAQs

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