In PasswordStore::setPassword() the function misses a validation that the owner is the only one who can set the newPassword, which makes it possible for a malicious actor to set the password and steal the contract's assets.
the function should have a modifier or a validation that the caller is the contract's owner as this is a critical function
no one else should be able to access it.
All Assets and sensitive data will be compromised if a malicious actor sets the password.
Manual review
Add a OZ OnlyOwner modifier or add the following validation after the function opening
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.