Limit Login Attempts Reloaded <= 3.4.0 - Unauthenticated Two-Factor Authentication Bypass via Failed Two-Factor Handshake

High 7.4 CWE-636Fixed in 3.4.1
ID
WPSEC-2026-2633
Plugin
Limit Login Attempts Security – Brute Force Protection, 2FA, Firewall & Login Security (limit-login-attempts-reloaded)
Affected
from 3.0.0 before 3.4.1
Remediation
Update to 3.4.1 or later.
CVSS 3.1
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:N
Weakness
CWE-636
Usage
Plugin Medium · Affected versions Medium among sites WPSec scans, 2026-11-06
Attack surface
Limit Login Attempts Reloaded on WPSec AttackSurface
Fix released
Published

Description

The Limit Login Attempts Security plugin for WordPress is vulnerable to Two-Factor Authentication Bypass via the two-factor login handshake in all versions up to, and including, 3.4.0, due to the two-factor flow failing open: whenever the handshake with the two-factor service did not succeed (handshake rate limit reached, repeated attempt in the same request, missing provider, a request payload that could not be encoded, or a rejected or unusable response), the check returned without an error and WordPress completed a password-only login. The handshake rate limit can be reached on purpose by repeating the login, and the raw X-Forwarded-For header was placed unsanitized into the handshake payload, so invalid UTF-8 caused JSON encoding to fail. This makes it possible for unauthenticated attackers who know the password of a 2FA-protected account to deliberately make the handshake fail and log in without the second factor. Exploitation requires two-factor authentication to be enabled for the targeted user's role and the attacker to know the account password.

References

Published by WPSec. Provided as is, without warranty. Corrections: contact us.

This advisory as JSON or Markdown · All advisories: JSON, RSS

License: CC BY 4.0