Wp Social Login and Register Social Counter: Authentication bypass in social login callback
Summary
The WordPress plugin Wp Social Login and Register Social Counter is affected in all versions up to and including 3.2.2. An unauthenticated attacker can obtain a fully authenticated session as any existing WordPress user, including administrators, because the social login REST endpoint matches accounts only by the email address returned by the OAuth provider and does not check a password. The attack requires that Facebook or Twitter login is configured on the site and that the attacker controls an OAuth account whose provider-returned email matches the target account's registered email address.
Affected
- Wp Social Login and Register Social Counter (slug wp-social) up to and including 3.2.2
- Exposure requires the Facebook or Twitter social login provider to be enabled
Fixed in
- Version 3.2.3 according to the plugin changelog (dated 2026-10-14). Not yet verified against the Wordfence advisory or the trac changeset.
Workaround
- Deactivate the plugin, or at least disable the Facebook and Twitter providers, until the site runs version 3.2.3 or later.
- Vendor-stated workaround: Unknown.
Exploitation
- No public proof-of-concept exploit found.
- No evidence of exploitation in the wild found; not listed in CISA KEV.
- An aggregator lists a VulnCheck KEV entry that could not be verified.
Our recommendation
- Update the plugin to version 3.2.3 or later as a priority and confirm the version afterwards.
- Until patched, disable the Facebook and Twitter social login providers or deactivate the plugin.
- Review administrator accounts: check recent logins and active sessions, and rotate passwords.
- Consider changing publicly known administrator email addresses.
- Enforce multi-factor authentication for all administrator accounts.
- Review web server logs for requests to /wp-json/wslu-social-login/.
Public exploits
PoC-in-GitHub, Metasploit and Exploit-DB list nothing for this CVE.
Research sources
- Wordfence advisory www.wordfence.com
- WordPress plugin page (changelog) wordpress.org
- Trac changeset plugins.trac.wordpress.org
- Trac: admin-create-user.php (vulnerable code, 3.2.1) plugins.trac.wordpress.org
- Trac: admin-rest-api.php (REST endpoint, 3.2.1) plugins.trac.wordpress.org
- VulDB CVE-2026-103898 vuldb.com
- VulDB vulnerability 429516 vuldb.com
- PSIRT CVE-2026-103898 psirt.com
Researched and written up in English and German by an AI (Claude by Anthropic) based on NVD, CISA, EPSS and the sources listed. The vendor information is authoritative. Researched on 1 Nov 2026, 17:43.
Original description (NVD)
The Wp Social Login and Register Social Counter plugin for WordPress is vulnerable to Authentication Bypass in all versions up to, and including, 3.2.2. This is due to the social login REST callback registered at `/wp-json/wslu-social-login/type/{provider}/` with `permission_callback => __return_true` locating an existing WordPress account solely by the email string returned from the OAuth provider and calling `wp_set_auth_cookie()` without a password check, while the only verification guard — `!empty($getProfile->emailVerified)` in `inc/admin-create-user.php` — is a no-op for the bundled Hybridauth Facebook and Twitter adapters, both of which assign the raw email string rather than a boolean verified flag to `emailVerified`. This makes it possible for unauthenticated attackers to obtain a fully authenticated session as any existing WordPress user, including Administrators, whose registered email address can be presented through a configured Facebook or Twitter login on the target site. Exploitation requires only that the attacker control an OAuth account whose provider-returned email matches the target account's registered WordPress email address; no local credentials, nonce, or prior foothold is needed.
NVD references (8)
- https://plugins.trac.wordpress.org/browser/wp-social/tags/3.2.1/inc/admin-create-user.php#L172
- https://plugins.trac.wordpress.org/browser/wp-social/tags/3.2.1/inc/admin-create-user.php#L229
- https://plugins.trac.wordpress.org/browser/wp-social/tags/3.2.1/inc/admin-create-user.php#L512
- https://plugins.trac.wordpress.org/browser/wp-social/tags/3.2.1/inc/admin-rest-api.php#L46
- https://plugins.trac.wordpress.org/browser/wp-social/tags/3.2.1/lib/composer/vendor/hybridauth/hybridauth/src…
- https://plugins.trac.wordpress.org/browser/wp-social/tags/3.2.1/lib/composer/vendor/hybridauth/hybridauth/src…
- https://plugins.trac.wordpress.org/changeset?reponame=&old=3752566%40wp-social&new=3752566%40wp-social
- https://www.wordfence.com/threat-intel/vulnerabilities/id/e961d3db-da5e-4bde-ae7e-04e6ba3ebef4?source=cve
Sources
The tracker combines official, freely usable data sources – updated continuously:
- NVD (NIST) – CVEs, rating (CVSS), affected products
- CISA KEV – vulnerabilities confirmed by CISA as actively exploited
- CISA Vulnrichment – CISA assessment (SSVC) in the official CVE record
- FIRST EPSS – probability of exploitation
- Microsoft MSRC – Patch Tuesday: vulnerabilities, severity, updates
- PoC-in-GitHub – public proof-of-concept repositories
- Metasploit (Rapid7) – modules of the Metasploit Framework
- Exploit-DB (OffSec) – archive of public exploits (links only)
- Patch days: official vendor pages (linked per vendor) (Vendor patch days)
This product uses data from the NVD API but is not endorsed or certified by the NVD. EPSS data © FIRST.org.
Affected? We can help.
We check whether your systems are affected, install updates and close the gap – continuously with the System Health Checker if you wish.
