Skip to content

External account renewal can incorrectly report wrong password due to random seed difference and hash comparison #355

@jonasbardino

Description

@jonasbardino

When external users want to renew their access and go through the sign up form they may hit invalid password rejection because of the way we check by comparing the existing and the newly generated password hashes verbatim, and the fact that those hashes are in fact random seed dependent. In effect that results in one interpreter instance returning the same hash but the next one most likely a completely different one.

We should really check that the password provided during sign up form submission is valid with the saved password hash instead. We can do so with the recently introduced early_validation_checks and check_hash without giving away information about the validity until some later point when an operator or the janitor kicks in and rejects invalid ones with notice to the registered account email address. This detail is important to avoid opening an anonymous password guessing end-point.

Metadata

Metadata

Assignees

Labels

bugSomething isn't working

Type

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions