HIGH 8.1

LoginPress Pro CVE-2026-12595: Discord OAuth Account Takeover Vulnerability

LoginPress Pro, a WordPress authentication plugin, contains a critical flaw in its Discord login integration. When users sign in via Discord OAuth, the plugin fails to verify that the email address returned by Discord has been confirmed by the user. An attacker can register a Discord account with someone else's email address (without Discord verifying it) and use Discord's standard login flow to hijack that person's WordPress account. This works for any account, including administrator accounts, and requires no special access or social engineering—only knowledge of a target's email address.

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 Unverified OAuth Email in all versions up to and including 6.2.3. The vulnerability exists in the loginpress_on_discord_login() Discord OAuth callback handler, which accepts the email field returned by Discord's /users/@me endpoint without ever checking that the profile's verified flag is true, then directly maps that email to a local WordPress account via get_user_by('email', $profile['email']) and issues an authenticated session cookie via wp_set_auth_cookie(). This makes it possible for unauthenticated attackers to take over any existing WordPress account — including administrator accounts — by registering a Discord account configured with an unverified email address that matches the target user's registered WordPress email and completing the standard Discord OAuth flow.

2 reference(s) · View on NVD →

SEC.co analysis · AI-assisted, reviewed against source

Technical summary

The vulnerability resides in the loginpress_on_discord_login() function, which processes Discord's OAuth callback. The function extracts the email field from Discord's /users/@me endpoint response and directly uses it to look up a WordPress user via get_user_by('email', $profile['email']), then issues an authenticated session cookie without validating the verified flag in Discord's profile object. The absence of a verified email check creates a trust boundary violation: an attacker-controlled Discord account with an unverified email can be mapped to any existing WordPress user account whose email matches. Affected versions include all 6.x releases through 6.2.3.

Business impact

Account takeover of WordPress user accounts is a business-critical risk. Compromised administrator accounts grant full control over the WordPress site, enabling data exfiltration, malware installation, website defacement, and lateral movement into connected systems. For multi-user WordPress deployments (blogs, news sites, SaaS platforms), this vulnerability threatens all users equally. Even compromised contributor or editor accounts can publish malicious content. Remediation requires either immediate disabling of Discord login or upgrading to a patched version.

Affected systems

LoginPress Pro versions up to and including 6.2.3 are vulnerable. WordPress installations using LoginPress Pro with Discord OAuth authentication enabled are directly at risk. The vulnerability affects all user roles, with administrator accounts representing the highest-value targets. No version information on patched releases is provided in the advisory; verify against the vendor's official security announcements or release notes.

Exploitability

Exploitability is moderate-to-high in practice. While the CVSS score reflects AC:H (high attack complexity) due to the need for an attacker to register a Discord account and know the target's email, the barrier is low in real-world scenarios: email addresses are often public or discoverable, and Discord registration is free and instant. No user interaction is required—the attacker simply completes Discord's OAuth flow. The vulnerability is not in active KEV (Known Exploited Vulnerabilities) tracking, but the simplicity of the attack makes it attractive to threat actors once publicly disclosed.

Remediation

Immediate action: disable Discord OAuth authentication in LoginPress Pro settings if it is not essential to your WordPress deployment. Contact the LoginPress team for patched release information and timelines. Apply patches as soon as they become available. For enhanced security, consider implementing additional authentication verification layers (e.g., email confirmation on first login) or transitioning to an alternative authentication provider with stricter OAuth verification practices. Verify that your WordPress user base has not been compromised by reviewing login logs for unexpected Discord OAuth activity.

Patch guidance

Consult the official LoginPress plugin repository or vendor advisory for the specific patch version that addresses this vulnerability. No patch version number is disclosed in the CVE record. Update LoginPress Pro immediately upon availability of a patched release. Test the update in a staging environment first to ensure compatibility with your WordPress version and other plugins. After patching, review recent authentication logs and consider forcing a password reset for administrator accounts as a precautionary measure.

Detection guidance

Monitor WordPress authentication logs for successful logins originating from Discord OAuth that precede suspicious account activity or configuration changes. Check for unrecognized Discord-authenticated sessions in user management dashboards. Audit user accounts for recent login patterns, particularly administrator accounts, and cross-reference with Discord account registrations you do not recognize. Web application firewalls and WordPress security plugins can log OAuth callbacks; examine these logs for patterns consistent with account enumeration or takeover attempts. Enable two-factor authentication for all administrative accounts to add a secondary barrier against compromised credentials.

Why prioritize this

This vulnerability scores 8.1 (HIGH) under CVSS 3.1 with a vector reflecting high integrity and confidentiality impact. It permits unauthenticated account takeover of administrator accounts without user interaction or special knowledge beyond the target's email. The attack surface is broad (any WordPress site running vulnerable LoginPress Pro with Discord OAuth enabled) and exploitation is straightforward. While not yet in KEV tracking, the severity and simplicity warrant immediate prioritization for any affected deployment. Organizations relying on Discord authentication for access control should treat this as critical.

Risk score, explained

The CVSS 3.1 score of 8.1 reflects: (1) Network attack vector—no local access required; (2) High attack complexity—the attacker must register a Discord account and know/guess the target email, but both are low-friction steps; (3) No privileges required; (4) No user interaction required once the OAuth flow is initiated; (5) Scope unchanged; (6) High confidentiality, integrity, and availability impact—full account control grants unrestricted access to the WordPress site and its data. The score is calibrated to the severity of account takeover but acknowledges that exploitation requires some minimal reconnaissance or email enumeration.

Frequently asked questions

Can this vulnerability be exploited if Discord OAuth is enabled but not actively used?

No. The vulnerability only manifests when an attacker initiates a Discord OAuth login for a target email address. If Discord OAuth is configured but no one uses it, the attack surface is minimal. However, disabling the feature entirely eliminates risk entirely and is recommended until patches are applied.

Does this affect WordPress sites that do not use Discord for authentication?

No. Sites that do not have LoginPress Pro installed or that do not use Discord OAuth authentication are not affected. The vulnerability is specific to the Discord OAuth callback handler in LoginPress Pro.

What should I do if I suspect my WordPress account has been compromised via this vulnerability?

Immediately change your WordPress password and any connected service passwords (email, Discord). Enable two-factor authentication. Audit your site's login logs and recent actions performed on your account. If you have administrative access, force re-authentication for all active sessions. Consider engaging a WordPress security specialist to check for backdoors or persistent access.

Is there a workaround if I cannot patch immediately?

Yes. Disable Discord OAuth login in LoginPress Pro settings until a patch is available. This eliminates the attack vector while you prepare for the upgrade. Document the change so it is not accidentally re-enabled.

This analysis is provided for informational purposes and reflects publicly available CVE data as of the publication date. No exploit code or weaponized proof-of-concept is provided. Patch availability, version numbers, and timelines should be verified directly with the LoginPress vendor or official plugin repository. Readers are responsible for assessing risk within their own environments and applying appropriate mitigations. SEC.co does not guarantee the accuracy of vendor responses or patch timelines and recommends independent verification of all remediation steps. Source: NVD (public-domain), retrieved 2026-08-17. Analysis generated by SEC.co (claude-haiku-4-5).