# All-In-One Security (AIOS) – Security and Firewall <= 5.4.10 - Authenticated (Subscriber+) Two-Factor Authentication Bypass via Forged TFA Code Verification Request

- **ID:** WPSEC-2026-1736
- **Plugin:** All-In-One Security (AIOS) – Security and Firewall (`all-in-one-wp-security-and-firewall`), https://wordpress.org/plugins/all-in-one-wp-security-and-firewall/
- **Affected versions:** all versions before 5.5.0
- **Fixed in:** 5.5.0 (Update to 5.5.0 or later.)
- **Severity:** Medium 6.8 (CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:N)
- **Weakness:** CWE-287
- **Usage among sites WPSec scans:** plugin Medium, affected versions Medium (as of 2026-10-27)
- **Attack surface analysis:** https://attacksurface.wpsec.com/plugin/all-in-one-wp-security-and-firewall
- **Fix released:** 2026-10-26
- **Published:** 2026-10-27
- **URL:** https://wpsec.com/vuln/WPSEC-2026-1736/

## Description

The All-In-One Security (AIOS) – Security and Firewall plugin for WordPress is vulnerable to two-factor authentication bypass in all versions up to, and including, 5.4.10, due to the authorise_user_from_login() function trusting a 'creds_user_id' value taken straight from the login request ($_POST) and checking the submitted two-factor code against that user instead of the account being logged into. This makes it possible for authenticated attackers, with subscriber-level access and above, whose own account has two-factor authentication active, to have their own code accepted for another user's account. Exploitation also requires the attacker to know the password of the target account.

## References

- https://wpsec.com/vuln/WPSEC-2026-1736/
- https://plugins.svn.wordpress.org/all-in-one-wp-security-and-firewall/tags/5.5.0/
- https://wordpress.org/plugins/all-in-one-wp-security-and-firewall/

Source: WPSec, https://wpsec.com/vuln/WPSEC-2026-1736/

License: CC BY 4.0 (https://creativecommons.org/licenses/by/4.0/). Free to use, share and adapt, also commercially, if you credit WPSec and link to this advisory.
