Authentication bypass in miniOrange OTP Login WordPress plugin
Key facts
- Attack vector
- Network
- Privileges required
- None
- User interaction
- None
- Attack complexity
- High
- Impact type
- Security bypass
- Confidentiality · integrity · availability
- High · High · High
- Fix status
- No fix listed
Attack profile from CVSS 3.1 · CNA. Fix status from CNA. Impact type from CWE-287.
Summary
The miniOrange OTP Login, Verification and SMS Notifications WordPress plugin is affected up to and including 5.5.8. The mo_by_pass_login() function skips password validation because the Delay OTP grace state is stored per user with no session binding (CWE-287). An unauthenticated remote attacker can log in as any user, including administrators, when OTP only login and Delay OTP are enabled and the target is within its Delay OTP interval.
Written with Claude Haiku 5.5 from the sources below · 2026-10-28
Description from the CNA
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.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- None
- Automatable
- No
- Technical impact
- Total
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| miniOrange | miniOrange OTP Login, Verification and SMS Notifications | up to 5.5.8 | — | No fix listed | CNA |
- miniOrange OTP Login, Verification and SMS Notifications VendorminiOrange Affected up to 5.5.8 Fixed in — No fix listed CNA
Remediation
The sources list no fixed version for miniOrange OTP Login, Verification and SMS Notifications.
Written with Claude Haiku 5.5 from the sources below · 2026-10-28
Timeline
- 2026-10-16 Threatist record created from CVE-2026-103895
- 2026-10-16 Priority changed: MEDIUM → LOW
- 2026-10-16 Alias added: GHSA-vw7g-2fxg-c3v8
- 2026-10-16 CISA SSVC decision points changed
References
Other 8
- https://www.wordfence.com/threat-intel/vulnerabilities/id/4a3a7097-e184-40d0-9c26-7c5638c937a5?source=cve
- https://plugins.trac.wordpress.org/browser/miniorange-otp-verification/tags/5.5.7/handler/forms/class-wploginform.php#L511
- https://plugins.trac.wordpress.org/browser/miniorange-otp-verification/tags/5.5.7/handler/forms/class-wploginform.php#L1573
- https://plugins.trac.wordpress.org/browser/miniorange-otp-verification/tags/5.5.7/handler/forms/class-wploginform.php#L1050
- https://plugins.trac.wordpress.org/browser/miniorange-otp-verification/tags/5.5.7/handler/forms/class-wploginform.php#L1170
- https://plugins.trac.wordpress.org/browser/miniorange-otp-verification/tags/5.5.7/handler/forms/class-wploginform.php#L1519
- https://plugins.trac.wordpress.org/browser/miniorange-otp-verification?rev=3741261
- https://plugins.trac.wordpress.org/changeset/3733803/miniorange-otp-verification/trunk/handler/forms/class-wploginform.php
More miniOrange vulnerabilities
- TI-2023-05558 Web3 – Crypto wallet Login & NFT token gating < 3.0.0 - Authentication Bypass CVSS 3.1CRITICAL 9.8
- TI-2023-02794 WordPress Social Login and Register (Discord, Google, Twitter, LinkedIn) <= 7.6.4 - Authentication Bypass CVSS 3.1CRITICAL 9.8
- TI-2022-15071 WordPress OAuth Single Sign On – SSO (OAuth Client) Plugin <= 6.23.3 is vulnerable to Broken Authentication CVSS 3.1HIGH 8.8
- TI-2021-22592 WordPress Plugin Backup and Restore 1.0.3 Arbitrary File Deletion CVSS 4.0HIGH 8.7
- TI-2023-04605 Active Directory Integration < 4.1.10 - Unauthenticated Log Disclosure CVSS 3.1HIGH 7.5
- TI-2024-09173 Login using WordPress Users ( WP as SAML IDP ) <= 1.15.6 - Authenticated (Administrator+) SQL Injection CVSS 3.1HIGH 7.2
Sources
- CVE-2026-103895 · CVE Program
- CVE-2026-103895 · NVD
- FIRST EPSS
- GHSA-vw7g-2fxg-c3v8 · GitHub Advisory Database · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences