Skip to content
Fast-turnaround security assessments available — 10+ years development & security experienceGet started
Back to Glossary
Glossary2 min read

Password Reset

A mechanism that allows users to regain access to their account by verifying their identity and setting a new password.

A password reset mechanism allows users who have forgotten their credentials to verify their identity through an alternative channel, typically email, and establish a new password. While essential for usability, password reset flows are a frequent target for attackers because they provide a pathway to account takeover without needing the current password.

How It Works

The typical password reset flow begins when a user requests a reset by providing their email address. The application generates a unique, time-limited token and sends it to the registered email as part of a reset link. When the user clicks the link, the application validates the token and allows the user to set a new password. The token is then invalidated to prevent reuse.

Security flaws in this process are remarkably common. Predictable tokens allow attackers to guess valid reset links. Tokens that do not expire give attackers an unlimited window to intercept or brute-force them. Some applications leak the token in the HTTP Referer header when the reset page loads external resources. Others fail to invalidate old tokens when a new reset is requested, allowing previously issued links to remain valid indefinitely.

Host header injection is a particularly dangerous attack against password reset flows. If the application uses the Host header to construct the reset URL, an attacker can manipulate the header so the reset email contains a link pointing to an attacker-controlled server. When the victim clicks the link, their reset token is sent directly to the attacker. Applications should always use a hardcoded or configuration-based domain for reset URLs rather than trusting the Host header.

Why It Matters

Password reset vulnerabilities consistently rank among the most impactful findings in security assessments because they lead directly to account takeover. A single flaw in the reset flow can compromise any account on the platform, including administrator accounts. Testing reset mechanisms for token predictability, expiration enforcement, proper invalidation, and host header injection is essential for any application that manages user accounts.

Need your application tested? Get in touch.

Need your application tested?

We find these vulnerabilities in real applications every day.

Request an Assessment