WPDeeply
Download free plugin
Hardening

Security Hardener

CVE-2026-16149 is a high-severity Security Hardener flaw where user-enumeration protection can overwrite WordPress REST user endpoint capability checks, allowing Subscriber-level users to perform privileged user actions. Update to 2.4.5 immediately.

Security Hardener WordPress plugin privilege escalation vulnerability advisory

Wordfence Intelligence published CVE-2026-16149 on August 22, 2026 for Security Hardener, a WordPress hardening plugin with 200+ active installations. The flaw is serious because it affects the plugin’s own user-enumeration protection, a default hardening feature that is intended to protect REST user endpoints.

In affected versions, the plugin hooks the WordPress REST endpoint registry and changes the permission callback for the core /wp/v2/users routes. The result is that normal WordPress capability checks for creating, editing, promoting, or deleting users can be replaced by a much weaker logged-in check.

Vulnerability Summary

  • Plugin: Security Hardener
  • Slug: security-hardener
  • CVE: CVE-2026-16149
  • Severity: CVSS 8.8 high
  • Attack class: improper privilege management / missing authorization
  • Required access: authenticated Subscriber-level account or higher
  • Affected versions: all versions up to and including 2.4.4
  • Fixed version: 2.4.5

What Goes Wrong

Security Hardener includes a REST user-enumeration protection feature. According to Wordfence, that feature is enabled by default and uses the rest_endpoints filter through the plugin’s user endpoint hardening code. Instead of only tightening public user enumeration, vulnerable versions can overwrite the permission callbacks for both collection and single-user REST routes.

WordPress core normally requires strong capabilities such as create_users, promote_user, edit_users, and delete_users before allowing privileged user operations. If those callbacks are replaced with a logged-in-only check, a low-privilege user may reach administrator-level user management behavior.

Immediate Fix

  • Update Security Hardener to 2.4.5 or newer.
  • If you cannot update immediately, deactivate Security Hardener until the patched build is deployed.
  • Review all administrator accounts for unexpected users, email changes, and recent password resets.
  • Invalidate active sessions if any suspicious account change is found.
  • Review access logs for unexpected authenticated writes to WordPress REST user endpoints.

WP-CLI Checks

wp plugin get security-hardener --fields=name,version,status
wp plugin update security-hardener
wp plugin get security-hardener --field=version

Use a read-only administrator account review after patching. The first query lists administrator users, and the second highlights accounts created during the last 14 days.

wp db query "SELECT u.ID,u.user_login,u.user_email,u.user_registered FROM {prefix}users u JOIN {prefix}usermeta m ON m.user_id=u.ID WHERE m.meta_key='{prefix}capabilities' AND m.meta_value LIKE '%administrator%';"
wp db query "SELECT ID,user_login,user_email,user_registered FROM {prefix}users WHERE user_registered >= DATE_SUB(NOW(), INTERVAL 14 DAY);"

Temporary Mitigation

The recommended mitigation is the vendor patch. If patching has to wait, deactivate the plugin or block authenticated non-administrator write methods to /wp-json/wp/v2/users at the edge. Test any edge rule before production deployment because legitimate admin workflows and integrations can use the REST users endpoint.

# Conceptual WAF rule, not a replacement for updating:
# if path starts with '/wp-json/wp/v2/users'
# and method in POST, PUT, PATCH, DELETE
# and requester is not an approved administrator context:
#     block or challenge

Sources

WPdeeply

WPDeeply is the site's editorial account for WordPress security advisories, plugin risk research, and remediation guides. Articles under this byline are checked against vendor changelogs, CVE records, vulnerability database entries, and the WPDeeply editorial policy before publication.