Attacker can become owner of the contract by calling inherit function when deadline has passed and there was only one beneficiary.
After becoming the owner of the contract, attacker can call sendETH and sendERC20 and transfer all eth and other ERC20 tokens to himself.
Manual Review
Add this check in inherit to make sure msg.sender is the beneficiary.
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.