CVE-2026-9178: WP Forms Connector Authentication Bypass Exposes User Password Hashes
The WP Forms Connector plugin for WordPress has a flaw that allows attackers to steal sensitive user information without needing valid credentials. The plugin exposes a REST API endpoint that is supposed to require authentication, but its password check is broken—it accepts any password as long as you know an admin username (typically 'admin'). This means an attacker can retrieve password hashes, email addresses, and other private data for any user on the site by making a simple web request.
Source data · NVD / CISA · public domain
- CVSS
- 3.1 · 7.5 HIGH · CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
- Weaknesses (CWE)
- CWE-862
- Affected products
- 0 configuration(s)
- Published / Modified
- 2026-06-24 / 2026-06-25
NVD description (verbatim)
The WP Forms Connector plugin for WordPress is vulnerable to Information Exposure in all versions up to, and including, 1.8. The plugin registers the REST route wp/v3/user/list/<id> (callback userDetail()) with permission_callback set to '__return_true', and the function's home-grown authentication only verifies that the supplied 'Username' HTTP header maps to an administrator account and that a 'Password' HTTP header is non-empty. It never validates the password with wp_check_password() (unlike the sibling delete_wc_user() function which does). This makes it possible for unauthenticated attackers to retrieve sensitive information for any registered user ID — including the WordPress password hash (user_pass) and email address — by sending a request with a valid administrator login name (commonly the default 'admin') and any arbitrary password value.
5 reference(s) · View on NVD →
SEC.co analysis · AI-assisted, reviewed against source
Technical summary
CVE-2026-9178 affects WP Forms Connector through version 1.8. The vulnerable REST endpoint wp/v3/user/list/<id> uses permission_callback set to __return_true, disabling WordPress's native permission checks. The userDetail() callback implements custom authentication that validates the 'Username' header matches an administrator account but critically fails to verify the 'Password' header using wp_check_password(). Instead, it only checks that the Password header is non-empty. This is inconsistent with the sibling delete_wc_user() function in the same codebase, which correctly validates passwords. An unauthenticated attacker can enumerate user IDs and retrieve the wp_users table fields user_pass (password hash) and user_email by supplying a known admin username and arbitrary password.
Business impact
Password hashes for all registered users can be extracted and subjected to offline cracking attacks, potentially compromising admin and user accounts site-wide. Email addresses are exposed, enabling targeted phishing campaigns. The attack requires no interaction from legitimate users and can be automated at scale across multiple WordPress installations using this plugin. Credential compromise can lead to full site takeover, data theft, malware injection, and reputational damage.
Affected systems
WP Forms Connector plugin for WordPress, all versions up to and including 1.8. The vulnerability affects any WordPress installation where this plugin is installed and activated, regardless of other security configurations. Default WordPress installations with the 'admin' user are at highest risk due to predictable username enumeration.
Exploitability
Exploitation is trivial. The attack requires network access to the WordPress REST API and knowledge of a valid administrator username—neither of which is confidential. No authentication is needed, no CSRF tokens or user interaction, and no special tools beyond a web client. An attacker can retrieve any user's sensitive data with a simple HTTP GET request. The vulnerability is readily exploitable by unauthenticated remote attackers.
Remediation
Update WP Forms Connector to a version that fixes the authentication bypass. Verify the patch properly implements wp_check_password() to validate the Password header and aligns with WordPress security best practices. As a temporary mitigation, disable the plugin or restrict REST API access via web application firewall rules blocking requests to wp/v3/user/list/* endpoints until patched.
Patch guidance
Contact the WP Forms Connector vendor or check the plugin repository for version 1.9 or later. Verify against the official vendor advisory before deploying. Standard WordPress plugin updates via the dashboard should be available once a patch is released. After updating, test the REST endpoint to confirm the authentication check now validates passwords correctly.
Detection guidance
Monitor web server logs for HTTP requests to /wp-json/wp/v3/user/list/ with numeric ID parameters and the 'Username' and 'Password' headers. Legitimate administrative use of this endpoint should be rare or non-existent. Alert on successful 200 responses that contain user_pass or user_email fields. Network detection can identify characteristic patterns: requests from unexpected source IPs, multiple sequential user ID requests, or requests with default admin usernames paired with mismatched passwords.
Why prioritize this
A CVSS 7.5 (HIGH) vulnerability combining zero authentication requirements, high information impact, and trivial exploitability demands urgent patching. Password hash theft directly enables account compromise and lateral movement. The fix is straightforward but the exposure window is critical because password hashes are valuable and long-lived assets. Organizations running WP Forms Connector should treat this as a priority remediation item.
Risk score, explained
The CVSS 7.5 score reflects high impact (confidentiality breach of sensitive user data), no authentication requirement (PR:N), network-based attack vector, and low attack complexity. The score does not account for password cracking time or secondary attack likelihood, but the direct exposure of password hashes and emails—combined with unauthenticated access—justifies the HIGH severity rating. This is not an edge-case flaw; it is a fundamental authentication bypass in a public API endpoint.
Frequently asked questions
Does this affect all WordPress sites?
No. Only WordPress installations with the WP Forms Connector plugin version 1.8 or earlier installed and activated are affected. Check your Plugins page in the WordPress admin dashboard or use wp-cli to confirm. If you do not use this plugin, you are not at risk from this CVE.
Can attackers modify or delete user accounts with this vulnerability?
This specific CVE permits only reading sensitive user data (password hashes and email addresses). The CVSS vector confirms no integrity impact (I:N). However, password hash disclosure is a stepping stone to account compromise. Once cracked offline, stolen credentials could be used for unauthorized access.
What should I do right now if I use WP Forms Connector?
First, verify your installed version. If it is 1.8 or below, disable the plugin immediately to eliminate exposure. Monitor access logs for suspicious requests to /wp-json/wp/v3/user/list/. Then monitor the vendor's website or plugin repository for a patched version and apply it as soon as it is available and tested in a staging environment.
Why did the developer miss this if a similar function does the check correctly?
The codebase contains delete_wc_user(), which properly uses wp_check_password() to validate passwords. The userDetail() function in the same plugin implements custom authentication that omits this validation, suggesting a code review oversight or inconsistency between different endpoints. This inconsistency is a red flag in security audits and underscores the importance of consistent authentication patterns.
This analysis is based on disclosed vulnerability information available as of the published date. Version numbers, patch status, and vendor advisory details should be verified against official sources before deployment decisions. SEC.co does not provide legal, compliance, or insurance guidance. Organizations are responsible for assessing their own risk and applying patches according to their change management procedures. Password hash theft risk varies by hash algorithm and organizational security posture; offline cracking difficulty depends on password strength and computational resources available to attackers. Source: NVD (public-domain), retrieved 2026-07-30. Analysis generated by SEC.co (claude-haiku-4-5).
Weaknesses (CWE)
Related vulnerabilities
- CVE-2018-25391HIGHHaPe PKH 1.1 Authorization Bypass – Unauthorized Record Deletion Vulnerability
- CVE-2024-32949HIGHMissing Authorization in Prince Integrate Google Drive — HIGH Risk
- CVE-2025-26418HIGHAndroid CarDevicePolicyService Privilege Escalation (CVSS 7.8)
- CVE-2025-48617HIGHAndroid CarrierConfigLoader Privilege Escalation Vulnerability
- CVE-2025-48640HIGHAndroid Passkey Permission Bypass Privilege Escalation
- CVE-2025-53345HIGHThimPress Thim Core Missing Authorization Leads to Code Execution
- CVE-2025-69189HIGHEMV JobBank Missing Authorization Vulnerability
- CVE-2026-0071HIGHAndroid SettingsLib Privilege Escalation Vulnerability