WP 2FA <= 2.2.1 - Time-Based TOTP attack to Sensitive Information Exposure
Strategic Overview
- Status
- Patched in 2.3.0
- Affected Plugin
- WP 2FA – Two-factor authentication for WordPress
- Affected Version
<= 2.2.1- CVSS
- 5.3Medium
- Weakness type
- CWE-204 · Observable Response Discrepancy
- CVE
CVE-2022-2891
At a glance
CVE-2022-2891 is a medium-severity Observable Response Discrepancy vulnerability in the WP 2FA WordPress plugin, affecting versions <= 2.2.1. It carries a CVSS score of 5.3 (reachable over the network; low attack complexity). Exploitation requires no authentication. The issue is fixed in version 2.3.0; sites on affected versions should update now. Disclosed September 2022, reported by Calvin Alkan.
Vulnerability Overview
The WP 2FA plugin for WordPress is vulnerable to Sensitive Information Exposure in versions up to, and including, 2.2.1 due to the use of a linear-time comparison operator when comparing token hashes. This allows an attacker to gain information about authentication tokens by observing small time differences in server response times. This is a vulnerability that is generally not realistically exploitable over the internet due to other factors that will have a greater influence on response times.
Technical Analysis
The vector marks this flaw as remotely reachable over the network, with low attack complexity — no special timing or configuration is needed, and no privileges on the target site, and no interaction from a victim user.
CWE-204: Observable Response Discrepancy
Reaching this weakness in WP 2FA <= 2.2.1 takes a caller who can reach the endpoint. An observable response discrepancy means the system answers two different situations in two distinguishable ways, so the difference itself carries information the caller was not meant to have.
An attacker enumerates valid accounts, emails or records by reading the difference, which turns a blind guess into a targeted one before any password is tried. For WP 2FA the fix is 2.3.0: builds <= 2.2.1 are affected, anything from 2.3.0 onward is not.
Remediation
Update to version 2.3.0, or a newer patched version
How does WordSec protect against this?
The fix is the thing that ends this: WP 2FA 2.3.0 closes this, and updating the plugin is the step that ends it.
- Alerts
External References
Related records
Other vulnerabilities in WP 2FA – Two-factor authentication for WordPress
- 6.1CVE-2024-32568: WP 2FA Reflected XSS
CVE-2024-32568 - 6.1CVE-2022-1527: WP 2FA Reflected XSS
CVE-2022-1527 - 5.4WP 2FA – Two-factor authentication for WordPress <= 2.1.0 IDOR
- 5.3CVE-2025-12628: WP 2FA 2-Factor Authentication Bypass
CVE-2025-12628 - 5.3CVE-2022-44587: WP 2FA <= 2.6.3 Information Exposure
CVE-2022-44587 - 4.3CVE-2026-12988: WP 2FA <= 3.1.1.1 Account Takeover
CVE-2026-12988 - 4.3CVE-2023-6520: WP 2FA – Two-factor authentication for WordPress CSRF
CVE-2023-6520 - 4.3CVE-2023-6506: WP 2FA <= 2.5.0 IDOR to Arbitrary Email Sending
CVE-2023-6506
Vulnerability data © Defiant, Inc., provided under the Wordfence Intelligence T&C