The onlyBeneficiaryWithIsInherited modifier lacks a revert condition, causing it to silently pass even when the caller is not a beneficiary, completely breaking access control.
Critical issues:
Missing Validation
No revert condition after loop
Loop break doesn't prevent execution
Silently continues even if not found
Complete access control bypass
Logic Flow Issues
Break statement only exits loop
No validation of loop result
No check if match was found
Always allows execution
Affected Functions
CRITICAL - The vulnerability enables:
Complete Access Control Bypass
Any address can access functions
No beneficiary validation
No inheritance status check
Full system compromise
System Exposure
NFT buyout system unprotected
Trustee appointment unprotected
Asset theft possible
System control loss
Add Proper Validation:
Use Safe Data Structures:
Improve Error Handling:
Clear error messages
Proper state validation
Event emission
Access logging
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.