Beginner FriendlySolidity
100 EXP
View results
Submission Details
Severity: medium
Valid

Timer Reset Missing in Critical Functions

Summary : Several critical owner functions don't reset the deadline timer, breaking the core invariant that "EVERY transaction the owner does with this contract must reset the 90 days timer."

Vulnerability Details : The contract has a critical invariant that every owner transaction should reset the timer, but multiple functions don't call _setDeadline() including:

  • contractInteractions()

  • createEstateNFT()

  • removeBeneficiary()

This violates the first core invariant and could lead to premature inheritance.

Impact : High. The owner could be actively using the wallet through these functions, but since the timer isn't reset, beneficiaries might be able to inherit the wallet even when the owner is still active

Tools Used

Recommendations : Add _setDeadline() calls to all functions that can only be executed by the owner:

function contractInteractions(...) external nonReentrant onlyOwner {
// existing code
_setDeadline(); // Add this line
}
function createEstateNFT(...) external onlyOwner {
// existing code
_setDeadline(); // Add this line
}
function removeBeneficiary(...) external onlyOwner {
// existing code
_setDeadline(); // Add this line
}
Updates

Lead Judging Commences

0xtimefliez Lead Judge 5 months ago
Submission Judgement Published
Validated
Assigned finding tags:

functions do not reset the deadline

Support

FAQs

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