The Attacker is able to change the password without them being the owner of the contract.
There is no Check to see if the msg.sender is the owner in the function setPassword().
A Core-functionality of the contract is violated.
Manual Review.
Put a check to see if the msg.sender is the owner of the contract before line 27 in PasswordStore.sol before assigning the new password.
Anyone can call `setPassword` and set a new password contrary to the intended purpose.
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.