Missing or Bypassable Rate Limit on Authentication Endpoint
rate-limit-auth-bypass is a high severity check in the
web category, written in python.
Its source is templates/web/session/rate-limit-auth-bypass.py in
cert-x-gen-templates.
What it checks
Section titled “What it checks”Tests whether the login/authentication endpoint enforces rate limiting. Sends a burst of requests with intentionally wrong credentials and checks for lockout, 429 responses, or CAPTCHA enforcement. Also probes common bypass techniques: IP spoofing headers, username variation, and X-Forwarded-For rotation.
Header
Section titled “Header”| Field | Value |
|---|---|
| Id | rate-limit-auth-bypass |
| Severity | high |
| Language | python |
| Category | web |
| Author | BugB Security Team |
| Template version | 1.0.0 |
| Confidence | 85 |
| CVSS | 7.5 |
| Weakness | CWE-307 |
| Tags | rate-limiting, brute-force, authentication, owasp-a04, credential-stuffing, missing-lockout |
| 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.
References
Section titled “References”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.
- https://owasp.org/www-project-web-security-testing-guide/v42/4-Web_Application_Security_Testing/04-Authentication_Testing/03-Testing_for_Weak_Lock_Out_Mechanism
- https://cwe.mitre.org/data/definitions/307.html
Run it
Section titled “Run it”To see what the copy on your machine says about itself, and to confirm it is installed at all:
cxg template info rate-limit-auth-bypassThe 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.
Related
Section titled “Related”- Template catalog is the whole corpus.
- web is the rest of this category.
- Templates by weakness class groups checks by the defect they look for.
- Contribute a template is the route from a check you needed and could not find to a merged one.

