CVE-2026-1994

s2Member <= 260127 - Unauthenticated Privilege Escalation via Account Takeover

2026-02-18 18:11
Alyudin Nafiie

At a glance

CVE-2026-1994 is a critical-severity Improper Privilege Management vulnerability in the s2Member WordPress plugin, affecting versions <= 260127. It carries a CVSS score of 9.8 (reachable over the network; low attack complexity; high confidentiality, integrity, availability impact). Exploitation requires no authentication. The issue is fixed in version 260215; sites on affected versions should update now. Disclosed February 2026, reported by Alyudin Nafiie.

Vulnerability Overview

The s2Member plugin for WordPress is vulnerable to privilege escalation via account takeover in all versions up to, and including, 260127. This is due to the plugin not properly validating a user's identity prior to updating their password. This makes it possible for unauthenticated attackers to change arbitrary user's passwords, including administrators, and leverage that to gain access to their account.

Technical Analysis

The vector marks this flaw as remotely reachable over the network, with low attack complexity — no special timing or configuration is needed, and no privileges on the target site, and no interaction from a victim user. A successful exploit has high impact on confidentiality, integrity, availability — full site compromise territory.

CWE-269: Improper Privilege Management

Reaching this weakness in s2Member <= 260127 takes no account at all. Improper privilege management means the code lets an account end up with capabilities its role should not have.

It converts a low-privileged account into an administrative one, which makes every other restriction on the site irrelevant. For s2Member the fix is 260215: builds <= 260127 are affected, anything from 260215 onward is not.

Remediation

Update to version 260215, or a newer patched version

How does WordSec protect against this?

This one needs no account at all, which puts it outside what login hardening can reach; WordSec's login security narrows the account-level paths around it, and the firewall is what inspects the request itself. None of that substitutes for the fix: s2Member 260215 closes this, and updating the plugin is the step that ends it.

  • Login Security
  • Alerts

External References

Related records

Vulnerability data © Defiant, Inc., provided under the Wordfence Intelligence T&C