{
    "dataType": "CVE_RECORD",
    "dataVersion": "5.2",
    "cveMetadata": {
        "cveId": "CVE-2026-16149",
        "assignerOrgId": "b15e7b5b-3da4-40ae-a43c-f7aa60e62599",
        "state": "PUBLISHED",
        "assignerShortName": "Wordfence",
        "dateReserved": "2026-07-17T18:41:15.726Z",
        "datePublished": "2026-08-22T23:27:18.750Z",
        "dateUpdated": "2026-08-22T23:27:18.750Z"
    },
    "containers": {
        "cna": {
            "providerMetadata": {
                "orgId": "b15e7b5b-3da4-40ae-a43c-f7aa60e62599",
                "shortName": "Wordfence",
                "dateUpdated": "2026-08-22T23:27:18.750Z"
            },
            "affected": [
                {
                    "vendor": "marc4",
                    "product": "Security Hardener",
                    "versions": [
                        {
                            "version": "0",
                            "status": "affected",
                            "lessThanOrEqual": "2.4.4",
                            "versionType": "semver"
                        }
                    ],
                    "defaultStatus": "unaffected"
                }
            ],
            "descriptions": [
                {
                    "lang": "en",
                    "value": "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",
            "references": [
                {
                    "url": "https://www.wordfence.com/threat-intel/vulnerabilities/id/64f1a71f-e210-4191-bfb4-56f8568180ed?source=cve"
                },
                {
                    "url": "https://plugins.trac.wordpress.org/browser/security-hardener/tags/2.4.4/security-hardener.php#L107"
                },
                {
                    "url": "https://plugins.trac.wordpress.org/browser/security-hardener/tags/2.4.4/security-hardener.php#L180"
                },
                {
                    "url": "https://plugins.trac.wordpress.org/browser/security-hardener/tags/2.4.4/security-hardener.php#L204"
                },
                {
                    "url": "https://plugins.trac.wordpress.org/browser/security-hardener/tags/2.4.4/security-hardener.php#L428"
                },
                {
                    "url": "https://plugins.trac.wordpress.org/browser/security-hardener/tags/2.4.4/security-hardener.php#L433"
                },
                {
                    "url": "https://plugins.trac.wordpress.org/browser/security-hardener/tags/2.4.4/security-hardener.php#L439"
                },
                {
                    "url": "https://plugins.trac.wordpress.org/changeset/3630896/security-hardener"
                }
            ],
            "problemTypes": [
                {
                    "descriptions": [
                        {
                            "lang": "en",
                            "description": "CWE-269 Improper Privilege Management",
                            "cweId": "CWE-269",
                            "type": "CWE"
                        }
                    ]
                }
            ],
            "metrics": [
                {
                    "cvssV3_1": {
                        "version": "3.1",
                        "vectorString": "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H",
                        "baseScore": 8.8,
                        "baseSeverity": "HIGH"
                    }
                }
            ],
            "credits": [
                {
                    "lang": "en",
                    "type": "finder",
                    "value": "zickzick2"
                }
            ],
            "timeline": [
                {
                    "time": "2026-08-22T11:09:38.000Z",
                    "lang": "en",
                    "value": "Disclosed"
                }
            ]
        }
    }
}