{"id":"CVE-2026-8760","aliases":["EUVD-2026-32084","GHSA-cq2x-2xjr-vm5v"],"status":"published","title":"Login with OTP \u003c= 1.6 - Unauthenticated Authentication Bypass via OTP Brute Force","description":"The Login with OTP plugin for WordPress is vulnerable to authentication bypass in all versions up to, and including, 1.6. This is due to an incomplete fix for CVE-2024-11178: the rate-limit/lockout check added to `otpl_login_action()` was placed only inside the OTP-generation branch and is never evaluated on the OTP-validation branch, and the generated 6-digit OTP additionally has no expiration. This makes it possible for unauthenticated attackers to brute-force the 900,000-value OTP space for any user account (including administrators) and obtain a valid `wp_set_auth_cookie()` session, leading to full site compromise.","severity":{"version":"3.1","score":9.8,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","level":"critical","assessor":"cna","from":"cve"},"epss":{"day":"2026-11-09","score":0.01026,"percentile":0.63852,"model":"v2026.06.15"},"facts":{"in_kev":false,"known_exploited":false,"public_exploit":false,"fix_available":false},"cwes":["CWE-307"],"published":"2026-05-27T05:31:29Z","modified":"2026-06-17T11:04:25Z","products":[{"vendor":"india-web-developer","product":"login with otp"}],"references":[{"url":"https://www.wordfence.com/threat-intel/vulnerabilities/id/ad22cb24-e6a0-456f-afe8-88a39acd97d3?source=cve"},{"url":"https://plugins.trac.wordpress.org/browser/otp-login/tags/1.6/lib/otpl-class.php#L419"},{"url":"https://plugins.trac.wordpress.org/browser/otp-login/trunk/lib/otpl-class.php#L419"},{"url":"https://plugins.trac.wordpress.org/browser/otp-login/tags/1.6/lib/otpl-class.php#L424"},{"url":"https://plugins.trac.wordpress.org/browser/otp-login/trunk/lib/otpl-class.php#L424"},{"url":"https://plugins.trac.wordpress.org/browser/otp-login/tags/1.6/lib/otpl-class.php#L427"},{"url":"https://plugins.trac.wordpress.org/browser/otp-login/trunk/lib/otpl-class.php#L427"},{"url":"https://plugins.trac.wordpress.org/browser/otp-login/tags/1.6/lib/otpl-class.php#L361"},{"url":"https://plugins.trac.wordpress.org/browser/otp-login/trunk/lib/otpl-class.php#L361"},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2024-11178"},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2026-8760"},{"url":"https://github.com/advisories/GHSA-cq2x-2xjr-vm5v"}],"sources":{"cve":[{"id":"CVE-2026-8760","title":"Login with OTP \u003c= 1.6 - Unauthenticated Authentication Bypass via OTP Brute Force","description":"The Login with OTP plugin for WordPress is vulnerable to authentication bypass in all versions up to, and including, 1.6. This is due to an incomplete fix for CVE-2024-11178: the rate-limit/lockout check added to `otpl_login_action()` was placed only inside the OTP-generation branch and is never evaluated on the OTP-validation branch, and the generated 6-digit OTP additionally has no expiration. This makes it possible for unauthenticated attackers to brute-force the 900,000-value OTP space for any user account (including administrators) and obtain a valid `wp_set_auth_cookie()` session, leading to full site compromise.","status":"published","published":"2026-05-27T05:31:29.863Z","modified":"2026-05-27T10:33:35.523Z","cvss":[{"version":"3.1","score":9.8,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","level":"critical","assessor":"cna"}],"cwes":["CWE-307"],"updated_at":"2026-11-02T13:48:02.226896Z"}],"euvd":[{"id":"EUVD-2026-32084","description":"The Login with OTP plugin for WordPress is vulnerable to authentication bypass in all versions up to, and including, 1.6. This is due to an incomplete fix for CVE-2024-11178: the rate-limit/lockout check added to `otpl_login_action()` was placed only inside the OTP-generation branch and is never evaluated on the OTP-validation branch, and the generated 6-digit OTP additionally has no expiration. This makes it possible for unauthenticated attackers to brute-force the 900,000-value OTP space for any user account (including administrators) and obtain a valid `wp_set_auth_cookie()` session, leading to full site compromise.","status":"published","published":"2026-05-27T05:31:29Z","modified":"2026-05-27T10:33:35Z","cvss":[{"version":"3.1","score":9.8,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","level":"critical"}],"updated_at":"2026-11-02T18:21:06.054612Z"}],"ghsa":[{"id":"GHSA-cq2x-2xjr-vm5v","title":"The Login with OTP plugin for WordPress is vulnerable to authentication bypass in all versions up...","description":"The Login with OTP plugin for WordPress is vulnerable to authentication bypass in all versions up to, and including, 1.6. This is due to an incomplete fix for CVE-2024-11178: the rate-limit/lockout check added to `otpl_login_action()` was placed only inside the OTP-generation branch and is never evaluated on the OTP-validation branch, and the generated 6-digit OTP additionally has no expiration. This makes it possible for unauthenticated attackers to brute-force the 900,000-value OTP space for any user account (including administrators) and obtain a valid `wp_set_auth_cookie()` session, leading to full site compromise.","status":"published","published":"2026-05-27T09:31:12Z","modified":"2026-05-27T09:31:21Z","cvss":[{"version":"3.1","score":9.8,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","level":"critical"}],"cwes":["CWE-307"],"updated_at":"2026-11-02T15:08:19.474205Z"}],"nvd":[{"id":"CVE-2026-8760","description":"The Login with OTP plugin for WordPress is vulnerable to authentication bypass in all versions up to, and including, 1.6. This is due to an incomplete fix for CVE-2024-11178: the rate-limit/lockout check added to `otpl_login_action()` was placed only inside the OTP-generation branch and is never evaluated on the OTP-validation branch, and the generated 6-digit OTP additionally has no expiration. This makes it possible for unauthenticated attackers to brute-force the 900,000-value OTP space for any user account (including administrators) and obtain a valid `wp_set_auth_cookie()` session, leading to full site compromise.","status":"published","published":"2026-05-27T07:16:14.927Z","modified":"2026-06-17T11:04:25.253Z","cvss":[{"version":"3.1","score":9.8,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","level":"critical","assessor":"secondary"}],"cwes":["CWE-307"],"updated_at":"2026-11-02T14:12:20.511562Z"}]}}
