The Inheritable Smart Contract Wallet protocol is designed with a fundamental invariant:
However, this crucial invariant is violated in three owner-only functions that don't call _setDeadline().
Affected functions:
This inconsistency breaks a core security mechanism of the protocol, potentially allowing premature inheritance activation despite recent owner activity:
If an owner exclusively uses the affected functions (e.g., only managing NFTs or interacting with external contracts), the inactivity timer won't reset, allowing beneficiaries to trigger inheritance after 90 days despite active owner management.
The 90-day inactivity period is a fundamental safety feature designed to ensure inheritance only activates when the owner is truly inactive. This vulnerability undermines that design.
Beneficiaries could claim inheritance while the owner is still actively managing assets, creating legal and procedural conflicts.
Add the _setDeadline()
call to all owner-only functions to maintain the protocol invariant
The contest is live. Earn rewards by submitting a finding.
This is your time to appeal against judgements on your submissions.
Appeals are being carefully reviewed by our judges.