Core Contracts

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

Missing `_disableInitializers()` in Upgradeable Contract Constructor of StabilityPool

Summary

The StabilityPool contract is upgradeable but fails to call _disableInitializers() in its constructor, which could potentially allow the initialization function to be called multiple times in the implementation contract.

Vulnerability Details

constructor(address initialOwner) { <==@found
_initialOwner = initialOwner;
}

Impact

  • Implementation contract could be initialized multiple times

  • State variables set in constructor won't be properly stored

Tools Used

  • Manual Review

Recommendations

Add _disableInitializers() to the constructor:

+ constructor() {
- constructor(address initialOwner) {
- _initialOwner = initialOwner;
+ _disableInitializers();
}
Updates

Lead Judging Commences

inallhonesty Lead Judge 4 months ago
Submission Judgement Published
Invalidated
Reason: Known issue

Support

FAQs

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