The InheritanceManager::inherit function fails to verify that the caller (msg.sender) is the legitimate beneficiary when transferring ownership.Any random user who is not the designated beneficiary can become the owner of the smart contract if the beneficiaries array length is exactly 1 and
the inactivity period has exceeded the TIMELOCK period (90 days)
This vulnerability allows unauthorized users to seize control of the contract and its assets.
The InheritanceManager::inherit function should implement a check to verify that msg.sender is the sole beneficiary in the beneficiaries array before transferring ownership:
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.