CVE-2026-12597: LoginPress Pro WordPress Authentication Bypass via GitHub OAuth
LoginPress Pro, a popular WordPress authentication plugin, contains a flaw in its GitHub login integration that allows attackers to log into any user account—including admin accounts—without knowing their password. The vulnerability stems from the plugin accepting unverified email addresses from GitHub as proof of identity. An attacker can add someone else's email address to their GitHub profile (as an unverified email) and use that to trick the plugin into granting access to the corresponding WordPress account. While exploitation requires specific conditions around how GitHub orders email addresses in its response, the underlying design flaw is severe: the plugin never checks whether an email is actually verified before trusting it for account binding.
Source data · NVD / CISA · public domain
- CVSS
- 3.1 · 8.1 HIGH · CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H
- Weaknesses (CWE)
- CWE-287
- Affected products
- 0 configuration(s)
- Published / Modified
- 2026-07-10 / 2026-07-10
NVD description (verbatim)
The LoginPress Pro plugin for WordPress is vulnerable to Authentication Bypass via the GitHub OAuth callback in versions up to, and including, 6.2.3. The vulnerability exists in the loginpress_on_github_login() function, which blindly trusts the first element (profile[0]['email']) of the array returned by GitHub's /user/emails endpoint as an account-binding identifier without verifying that the email carries a verified === true status. This makes it possible for unauthenticated attackers to log in as any existing WordPress user, including administrators, by adding an unverified email address matching a local account to their GitHub profile and triggering the OAuth callback via a crafted code parameter — causing the plugin to call get_user_by('email', ...) and establish an authenticated session for the matched account. Practical exploitation is conditional on GitHub returning the attacker-added unverified email at index 0 of the /user/emails response, as GitHub typically prioritizes the primary verified address first; nonetheless, the absence of any email verification check in the plugin constitutes a fundamental authentication bypass flaw.
2 reference(s) · View on NVD →
SEC.co analysis · AI-assisted, reviewed against source
Technical summary
The loginpress_on_github_login() function in LoginPress Pro versions up to 6.2.3 fails to validate the verification status of email addresses returned by GitHub's /user/emails endpoint. The function blindly trusts profile[0]['email']—the first element in the array—and calls get_user_by('email', ...) to establish a session without confirming that the email carries a verified === true attribute. This creates an authentication bypass: an unauthenticated attacker can add an unverified email matching an existing WordPress user to their GitHub account, initiate the OAuth flow with a crafted code parameter, and receive an authenticated session for that user. The vulnerability is classified under CWE-287 (Improper Authentication).
Business impact
This vulnerability directly compromises access control on WordPress sites using LoginPress Pro. An attacker can gain administrative access to affected WordPress instances, enabling full site takeover, data exfiltration, malware injection, defacement, or lateral movement into connected systems. The risk is amplified for multi-user sites, agencies, and enterprises where compromised admin accounts cascade into broader operational or data security incidents. Organizations relying on OAuth for simplified authentication without additional access controls face immediate and high-severity impact.
Affected systems
LoginPress Pro for WordPress is affected in versions up to and including 6.2.3. The vulnerability applies to any WordPress installation running a vulnerable version of the plugin with GitHub OAuth enabled. Sites using alternative authentication methods (standard WordPress login, other OAuth providers, or LoginPress Pro versions after 6.2.3 if patched) are not affected. Verify your current plugin version in the WordPress admin panel under Plugins.
Exploitability
Exploitation requires the attacker to have a GitHub account and the ability to add an unverified email to it, then trigger the OAuth callback on the target WordPress site. The practical likelihood depends on GitHub's email ordering behavior: GitHub typically prioritizes verified addresses first, so an attacker-controlled unverified email would need to appear at index 0 of the response for reliable exploitation. Despite this ordering dependency, the complete absence of email verification checks in the plugin constitutes a fundamental authentication bypass flaw that could be exploited under certain conditions. No public exploit code has been reported, and the vulnerability does not yet appear on CISA's Known Exploited Vulnerabilities (KEV) catalog.
Remediation
Update LoginPress Pro to a patched version beyond 6.2.3 as soon as the vendor releases it. Verify the fix includes proper validation of the verified field from GitHub's email response before using any email address for account binding. In the interim, disable GitHub OAuth in LoginPress Pro settings if it is not essential for your site's workflow, or implement network-level restrictions to limit who can initiate the OAuth flow (e.g., by IP allowlist or requiring pre-authentication before OAuth is available).
Patch guidance
Contact the LoginPress Pro vendor or check the plugin's official documentation and WordPress plugin repository for patched versions beyond 6.2.3. When a patch is available, test it in a staging environment to confirm GitHub OAuth functionality and user account mapping work as intended before deploying to production. Document the patch version applied and the date of update for compliance and audit purposes.
Detection guidance
Monitor for OAuth callback requests with unusual code parameters or spike in failed/successful GitHub login attempts. Check WordPress user authentication logs for accounts logged in via GitHub OAuth that do not correspond to known legitimate users or have unusual IP origins. Review GitHub accounts for unverified email addresses matching your WordPress user roster, particularly admin accounts. If available, enable debug logging in LoginPress Pro to capture email values being passed to get_user_by() and cross-reference them with verified email checks.
Why prioritize this
With a CVSS score of 8.1 (HIGH) and the ability to grant attackers administrative access to WordPress sites, this vulnerability warrants urgent remediation. The attack surface is broad (any site with LoginPress Pro and GitHub OAuth enabled), the impact is severe (full site compromise), and the barrier to exploitation, while not trivial, is low enough that determined attackers may attempt it. Organizations should prioritize patching before continuing to expose administrative accounts via this mechanism.
Risk score, explained
The CVSS 3.1 score of 8.1 reflects high severity: the attack vector is network-based (AV:N), the attack complexity is high (AC:H) due to the ordering dependency in GitHub's response, no privileges or user interaction are required (PR:N/UI:N), the scope is unchanged (S:U), and all three impact dimensions—confidentiality, integrity, and availability—are marked high (C:H/I:H/A:H) because an attacker gaining admin access can read, modify, and disrupt the entire WordPress installation.
Frequently asked questions
Do I need to have GitHub OAuth enabled for my site to be vulnerable?
Yes. If you have LoginPress Pro installed but GitHub OAuth is not configured or enabled, you are not exposed to this vulnerability. However, if the plugin is active and the functionality is available, it is best practice to either patch it or explicitly disable the GitHub OAuth feature.
Can an attacker exploit this without a GitHub account of their own?
No. The attacker must have a GitHub account to add an unverified email address to their profile and initiate the OAuth flow. However, creating a GitHub account is free and requires minimal verification, so this is a low barrier for determined attackers.
What should I do if I suspect my WordPress admin account was compromised via this vulnerability?
Immediately change all WordPress admin passwords, audit user accounts for unauthorized additions, review login logs for suspicious activity, and scan your site for malware or backdoors. Consider forcing a logout of all sessions. If you store sensitive data, monitor for unauthorized access. Contact your hosting provider or a security professional if you need assistance with forensics or remediation.
Will patching LoginPress Pro fix accounts already compromised?
Patching will prevent future exploitation, but it does not automatically undo past unauthorized access. If your site was already compromised, you must investigate and remove any unauthorized users, restore from a clean backup if necessary, and audit file changes and database modifications.
This analysis is based on published vulnerability data as of the stated date. CVSS scores and vulnerability severity are subject to interpretation and organizational risk context. Organizations should verify patch availability and compatibility with their specific WordPress configuration before deployment. SEC.co makes no warranty regarding the completeness or accuracy of remediation guidance; always consult the vendor's official advisory and perform testing in a non-production environment. No exploit code is provided or endorsed. Actual exploitation likelihood depends on GitHub's API behavior, plugin configuration, and network environment controls. Source: NVD (public-domain), retrieved 2026-08-17. Analysis generated by SEC.co (claude-haiku-4-5).
Weaknesses (CWE)
Related vulnerabilities
- CVE-2026-10157HIGHOpen5GS NGAP Authentication Bypass Vulnerability – 5G Core Network Risk
- CVE-2026-10167HIGHAuthentication Bypass in BrinaryBrains School Management System
- CVE-2026-10243HIGHSmart Parking System 1.0 Authentication Bypass – Remote Admin Access
- CVE-2026-10281HIGHEnderfga claw-orchestrator Authentication Bypass – Patch Available
- CVE-2026-10288HIGHHotel Reservation System Admin Authentication Bypass
- CVE-2026-10560HIGHIBM Langflow OSS Missing Authentication in Build Endpoints (CVSS 8.2)
- CVE-2026-10617HIGHGoClaw Webhook Authentication Bypass – Remote Exploitation
- CVE-2026-10619HIGHsayan365 Student-Management-System Remote Authentication Bypass