Description
The Security Hardener plugin for WordPress is vulnerable to Missing Authorization in all versions up to, and including, 2.4.4. The vulnerability exists because the plugin's user-enumeration protection, which is enabled by default, hooks the rest_endpoints filter via secure_user_endpoints() and overwrites every registered handler's permission_callback on both the /wp/v2/users and /wp/v2/users/(?P<id>[\d]+) routes — including POST, PUT, PATCH, and DELETE handlers — with a bare closure that returns only is_user_logged_in(), completely stripping WordPress Core's original capability checks such as create_users, promote_user, edit_users, and delete_users that WP_REST_Users_Controller normally enforces. This makes it possible for authenticated attackers with Subscriber-level access and above to create new Administrator accounts by sending POST request to /wp/v2/users with administrator role, or to reset an existing Administrator's password by issuing a PUT/POST request to /wp/v2/users/<id>. Because the block_user_enum option defaults to enabled, no special plugin configuration is required — the overwrite is active on every request as soon as the plugin is installed.
Published: 2026-08-22
Score: 8.8 High
EPSS: n/a
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

The Security Hardener plugin for WordPress has a missing authorization flaw that overwrites the permission callbacks for the REST API routes /wp/v2/users and /wp/v2/users/<id>. This blanket change removes WordPress Core's capability checks, allowing any authenticated user who has at least Subscriber-level access to perform actions that normally require higher privileges. As a result, an attacker can create new accounts with Administrator role or reset the password of an existing Administrator by sending POST or PUT requests to those endpoints.

Affected Systems

All installations of the Security Hardener plugin for WordPress up to and including version 2.4.4. WordPress sites that have the plugin installed and have the block_user_enum option enabled (the default). No other versions are affected.

Risk and Exploitability

The vulnerability carries a CVSS score of 8.8, indicating a high severity and potential for significant impact if exploited. Because the plugin overwrites permission callbacks on every request after installation, no special configuration is required, and the flaw can be exploited by any authenticated user with minimum Subscriber rights. Although EPSS data is not available, the lack of an authorization check makes exploitation straightforward. The vulnerability is not listed in CISA's KEV catalog, but it remains a serious risk for affected sites. The attack vector is expected to be through authenticated API requests to the WordPress REST interface, which are common for site developers and administrators.

Generated by OpenCVE AI on August 23, 2026 at 00:21 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Update the Security Hardener plugin to version 2.4.5 or later, which removes the permission_callback overwrite.
  • If an immediate update is not possible, temporarily remove or disable the Security Hardener plugin to restore proper capability checks.
  • Configure your web application firewall or security plugin to block or rate‑limit accesses to the /wp/v2/users and /wp/v2/users/<id> endpoints for users without Administrator or Editor privileges.

Generated by OpenCVE AI on August 23, 2026 at 00:21 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Sat, 22 Aug 2026 23:45:00 +0000

Type Values Removed Values Added
Description The Security Hardener plugin for WordPress is vulnerable to Missing Authorization in all versions up to, and including, 2.4.4. The vulnerability exists because the plugin's user-enumeration protection, which is enabled by default, hooks the rest_endpoints filter via secure_user_endpoints() and overwrites every registered handler's permission_callback on both the /wp/v2/users and /wp/v2/users/(?P<id>[\d]+) routes — including POST, PUT, PATCH, and DELETE handlers — with a bare closure that returns only is_user_logged_in(), completely stripping WordPress Core's original capability checks such as create_users, promote_user, edit_users, and delete_users that WP_REST_Users_Controller normally enforces. This makes it possible for authenticated attackers with Subscriber-level access and above to create new Administrator accounts by sending POST request to /wp/v2/users with administrator role, or to reset an existing Administrator's password by issuing a PUT/POST request to /wp/v2/users/<id>. Because the block_user_enum option defaults to enabled, no special plugin configuration is required — the overwrite is active on every request as soon as the plugin is installed.
Title Security Hardener <= 2.4.4 - Authenticated (Subscriber+) Privilege Escalation via REST API '/wp/v2/users' permission_callback Overwrite
Weaknesses CWE-269
References
Metrics cvssV3_1

{'score': 8.8, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H'}


Subscriptions

No data.

cve-icon MITRE

Status: PUBLISHED

Assigner: Wordfence

Published:

Updated: 2026-08-22T23:27:18.750Z

Reserved: 2026-07-17T18:41:15.726Z

Link: CVE-2026-16149

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-08-23T00:16:50.233

Modified: 2026-08-23T00:16:50.233

Link: CVE-2026-16149

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-08-23T00:30:17Z

Weaknesses
  • CWE-269

    Improper Privilege Management