The inherit() function only resets the deadline in the single beneficiary case, creating an inconsistency in the inheritance mechanism and potential exploitation paths.
Critical issues:
Inconsistent Deadline Reset
Only single beneficiary case resets deadline
Multiple beneficiaries case doesn't reset deadline
Creates different behavior for different scenarios
No clear reason for this difference
Exploitation Risk
In single beneficiary case:
New owner gets fresh 90-day period
Can prevent other claims
Can reset inheritance process
In multiple beneficiary case:
No deadline reset
No protection mechanism
Permanent inherited state
State Inconsistency
Single beneficiary: Gets new deadline
Multiple beneficiaries: Stuck with old deadline
Different rules for different cases
No clear security model
HIGH - The vulnerability enables:
Inheritance Manipulation
Single beneficiary can reset process
Multiple beneficiaries can't
Unfair advantage to single beneficiary
System state inconsistency
Process Interference
New owner can block other claims
No protection for multiple beneficiaries
Unclear inheritance finality
System state confusion
Consistent Deadline Handling:
Improve State Management:
Clear inheritance finality
Consistent deadline handling
Proper event emission
State transition safeguards
Add Safety Features:
Grace period for claims
Multiple beneficiary protection
Clear state transitions
Proper access controls
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.