Inside the initialize function in ThunderLoan contract when calling _Ownable_init an address of the initial owner should be provided or else it reverts and therefore it becomes impossible to initialize the contract as _Ownable_init reverts if the address provided is 0x0.
As we can see from the openzeppelin docs _Ownable_init function accepts the address as an argument
and the _transferOwnership function reverts if the provided address is 0x0
therefore we can't successfully execute the initialize function and can't initialize the contract.
The contract can't be initialized as the initialize function reverts. It becomes impossible to successfully initialize the contract.
No special tools used, just a manual review.
Please provide the address of the initial owner as an argument while calling _Ownable_init in the initialize function.
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.