Ad · Leaderboard 728×90

CVE-2026-103895

8.1High

Published 16 Oct 2026 · NVD status: Deferred · AI triage by gemini-3.8-flash

8.1High
Attack vector
Network
Complexity
High
Privileges needed
None
User interaction
None
Impact
Full C/I/A compromise
Weakness
CWE-287

Impact

Unauthenticated attackers can log in as any WordPress user, including administrators, without valid credentials. They need network access to the login page, a target username currently within an active Delay OTP grace window, and a site running OTP-only login with Delay OTP enabled.

Root cause

The plugin stores the Delay OTP verification timestamp in user metadata without binding it to a session, IP, or device, and short-circuits authentication before password checks occur.

Affected systems

miniOrange OTP Login, Verification and SMS Notifications plugin for WordPress up to and including 5.5.8

CVSS v3.1 · CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H

Fix & remediation

Upgrade to a version newer than 5.5.8. If unable to update immediately, disable Delay OTP Verification (set `wp_login_delay_otp=0`) or disable OTP-only login in the plugin configuration.

shell
$ wp plugin update miniorange-otp-verification

AI-suggested. Run it in staging first and check it against the vendor advisory. Why?

Ad · In-content banner

NVD description

The miniOrange OTP Login, Verification and SMS Notifications plugin for WordPress is vulnerable to Authentication Bypass in versions up to, and including, 5.5.8 via the `mo_by_pass_login()` function. This is due to `mo_delay_otp_process()` short-circuiting the authentication flow before password validation or the administrator intent gate (added in 5.5.6) can run, combined with the Delay OTP grace flag (`mov_last_verified_dttm`) being stored as a `user_meta` row keyed solely by target user ID with no binding to the originating session, cookie, IP address, or device. This makes it possible for unauthenticated attackers to authenticate as any WordPress user — including administrators — by submitting only a known username with the `mo_wp_login_intent=otp` parameter and any non-empty password, thereby inheriting a legitimate user's open Delay OTP grace window without ever supplying correct credentials. Exploitation requires the site to have OTP-only login (`wp_login_skip_password=1`, `wp_login_skip_password_fallback=0`) and Delay OTP Verification (`wp_login_delay_otp=1`) enabled, and the target account must currently be within its configured Delay OTP interval.

References

Source: nvd.nist.gov/vuln/detail/CVE-2026-103895

Ad · Sticky 320×50 / 728×90