★ Reinitializable implementation (no _disableInitializers)
Marinade Finance's assessment for RD-F-143 — scored gray on the v1.7.0 rubric. The evidence below is the curator's reasoning for this score.
Evidence summary #
Solana BPF programs are not EVM proxies. There is no _disableInitializers() pattern and no OpenZeppelin Initializable proxy. Anchor programs use #[account(init)] guards on state accounts to prevent re-initialization. The EVM-proxy-takeover attack surface described in this factor does not exist in the Solana BPF execution model. Factor is structurally not applicable to this protocol substrate.
Sources #
- InternalMarinade profile — Solana substrate flags.research/protocols/marinade/00-profile.md §11 — Solana-specific flags; non_evm_substrate=trueretrieved 2026-05-16
- GitHub — marinade-finance/liquid-staking-programmarinade-finance/liquid-staking-program — Rust/Anchor, no OZ Initializable or _disableInitializersretrieved 2026-05-16
Methodology #
Determine whether the implementation contract does not call `_disableInitializers()` in its constructor, leaving re-initialization possible.
See the full factor methodology and distribution across all protocols →