An incorrect check is being used to verify addresses in the isVerified()
function.
In CharityRegistry.sol
on line 24 an incorrect check is being used to verify addresses. Here the registeredCharities
mapping is being used which returns whether the chairty is registered and not whether it has actually been verified.
This means that an attacker could register a malicious charity, and all calls to isVerified()
for that chairty will return true
bypssing the verification processes.
Manual Review
Update line 24 to read return verifiedCharities[charity]
.
Likelyhood: High, the function returns registered charities instead of verified ones. Impact: High, Any charities can be registered by anyone and will be declared as verified by this function bypassing verification.
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.