Skip to content

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.

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.

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.

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 rate-limit-auth-bypass

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.