Early rate$2,400 of senior audit time for $500. Early members keep the rate as it climbs.$2,400 of senior audit time for $500See how →
F-2024-0011·centralization-risk

Single-Step Ownership Transfer used in contracts

Acknowledgeddexammraffle
TL;DR

MonadexV1Raffle and MonadexV1Factory inherit OpenZeppelin's Ownable, which uses single-step ownership transfer; an incorrect address in transferOwnership can lock the contract permanently.

Severity
LOW
Impact
LOW
Likelihood
MEDIUM
Method
MManual review
CAT.
Complexity
LOW
Exploitability
LOW
02Section · Description

Description

The MonadexV1Raffle and MonadexV1Factory contracts currently inherit from OpenZeppelin's Ownable contract, which implements a single-step ownership transfer pattern.

While functional, this pattern lacks a confirmation step for the new owner, which could potentially lead to issues if an incorrect address is provided during transfer.

03Section · Impact

Impact

The contract could become locked, with no address able to execute onlyOwner functions. This would affect:

  • The ability to add or remove supported tokens
  • Updates to price feed configurations
  • Adjustments to raffle parameters or fees
04Section · Recommendation

Recommendation

Consider replacing Ownable with OpenZeppelin's Ownable2Step. This implements a two-step ownership transfer process, adding an extra layer of safety.

F-2024-0011