Steadefi

Steadefi
DeFiHardhatFoundryOracle
35,000 USDC
View results
Submission Details
Severity: low
Invalid

Contract Resumed Without Ensuring Prior Pause

Summary

The emergencyResume() and processEmergencyResume() functions are meant to transition the contract back to an open state after an emergency pause.

Vulnerability Details

However, neither function validates that the contract is currently in the paused state before resuming normal operations. This allows resuming without the contract ever having been paused before.

Reproduction Steps:

  1. Call processEmergencyResume() without pausing first

  2. Operations resume even though pause was bypassed

Impact

Pause flag may no longer reflect actual status

Tools Used

Manual Review

Recommendations

Add checks that the contract status is paused before enabling normal usage again. Revert otherwise to ensure an expected state transition of pause -> resume occurs.

Updates

Lead Judging Commences

hans Lead Judge almost 2 years ago
Submission Judgement Published
Validated
Assigned finding tags:

Insufficient status transition control on emergency pause/resume

oxtenma Auditor
almost 2 years ago
hans Auditor
almost 2 years ago
hans Lead Judge almost 2 years ago
Submission Judgement Published
Invalidated
Reason: Incorrect statement
Assigned finding tags:

Insufficient status transition control on emergency pause/resume

Support

FAQs

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