The inherit function in the InheritanceManager contract can be called by anyone if the beneficiaries array has only one address. This could allow unauthorized users to take control of the contract.
Code:
The function does not restrict access to beneficiaries, allowing anyone to call it if there is only one beneficiary.
An attacker could exploit this to become the owner of the contract.
Manual reviewe
Restrict the inherit function to only allow beneficiaries to call it:
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.