Password reset tokens are predictable because they are built from a timestamp
What we found
A design review and follow-up code review found that reset tokens were generated by hashing the user ID and the current time, with no secret or random value. An attacker who triggers a reset for a victim can compute the small set of possible tokens and try them before the real email is opened.
Impact
Account takeover for any user whose email address is known.
How to fix it
Generate reset tokens from a cryptographically secure random source, store only a hash, make them single-use and short-lived, and rate-limit reset attempts per account.






