Omniscia Steer Protocol Audit
PluginV1 Static Analysis Findings
PluginV1 Static Analysis Findings
PV1-01S: Inexistent Initialization Protection of Base Implementation
| Type | Severity | Location |
|---|---|---|
| Language Specific | ![]() | PluginV1.sol:L32 |
Description:
The contract is meant to be upgradeable yet does not properly protect its logic deployment from malicious initializations.
Example:
src/Adapters/Algebra/PluginV1.sol
32contract PluginV1 is Initializable, Timestamp, ERC20Upgradeable, PausableUpgradeable {Recommendation:
We advise a constructor to be introduced that either invokes the initializer modifier of the Initializable contract or invokes the Initializable::_disableInitializers function to prevent the base implementation from ever being initialized.
Alleviation:
A PluginV1::constructor implementation was introduced that properly disables the logic contract's initializers and thus addresses this exhibit.
