Skip to content

Password Reset User Enumeration via Response Differences

password-reset-enum is a medium severity check in the web category, written in python. Its source is templates/web/session/password-reset-enum.py in cert-x-gen-templates.

Tests whether the password reset flow leaks valid email addresses through differing HTTP status codes, response bodies, response times, or error messages between existing and non-existing accounts.

Field Value
Id password-reset-enum
Severity medium
Language python
Category web
Author BugB Security Team
Template version 1.0.0
Confidence 80
CVSS 5.3
Weakness CWE-204
Tags user-enumeration, password-reset, information-disclosure, owasp-a02, timing-attack, account-oracle
Target kind not recorded
Oracle not recorded

The file declares @auto_probe, @batch_group, @context_vars, @hypothesis_tags, @vuln_class as well. Those are not tabled above; read the source for what they carry.

Declared in the header. cxg parses @references and then discards it, and nothing at scan time reads it, so this is the only place the links a template cites are surfaced.

To see what the copy on your machine says about itself, and to confirm it is installed at all:

Terminal window
cxg template info password-reset-enum

The id it prints is the one to pass anywhere a template is selected. See cxg template for the rest of the subcommand, Scan a target for running a scan, and A match is not a finding for how to read what comes back.