The "wp2shell" exploit chain represents a critical security event targeting the fundamental architecture of the WordPress ecosystem. This is a pre-authentication Remote Code Execution (RCE) vulnerability residing entirely within WordPress Core. It requires no third-party plugins, themes, or authenticated access to execute. A single crafted HTTP request against a default, "stock" installation can result in unauthenticated attacker gaining full system control.
The severity of this threat is reflected in its CVSS score of 9.8. CISA added both CVEs to its Known Exploited Vulnerabilities (KEV) catalog after exploitation activity was observed shortly following disclosure. Data indicates that approximately 60% of organizations using WordPress were initially vulnerable at the time of disclosure, with a significant portion exposing these servers directly to the internet.
Successful exploitation can allow complete database compromise, persistent web server access via obfuscated webshells, and unauthorized administrative account creation.
Vulnerability Overview
The wp2shell exploit chain combines multiple WordPress Core vulnerabilities to achieve unauthenticated privilege escalation. The attack first abuses a flaw in REST API batch request processing to bypass request validation and authorization checks. This access is then used to exploit a SQL injection vulnerability in the WP_Query handling of the author_exclude parameter.
Using the SQL injection primitive, an attacker can manipulate cached WordPress objects and abuse the oEmbed caching mechanism to write malicious data back to the database. The exploit then leverages Customizer changeset functionality to temporarily inherit the permissions of an administrator account, ultimately creating a persistent administrative user.
In summary, the attack progresses through four stages:
When chained together, these vulnerabilities can allow an unauthenticated attacker to obtain full administrative control of a vulnerable WordPress installation.
The following WordPress core vulnerabilities are used in this exploit:
Affected vs Fixed Versions
|
Branch |
Affected Versions |
Fixed Versions |
Impact Profile |
|
WordPress 7.0.x |
7.0.0 – 7.0.1 |
7.0.2 |
Full RCE Chain |
|
WordPress 6.9.x |
6.9.0 – 6.9.4 |
6.9.5 |
Full RCE Chain |
|
WordPress 6.8.x |
6.8.0 – 6.8.5 |
6.8.6 |
SQL Injection Only |
|
WordPress 7.1 (Beta) |
7.1 Beta 1 |
7.1 Beta 2 |
Full RCE Chain |
Strategic Assessment: WordPress Risk
Historically, WordPress security focused on the "plugin perimeter." This exploitation demonstrates that significant security risks can originate within WordPress Core and not solely through third-party extensions. Organizations should ensure WordPress instances are incorporated into formal vulnerability and patch management programs.
WordPress should be considered a high-value target from a defensive perspective. Its widespread deployment across internet-facing environments makes it an attractive platform for threat actors, increasing the likelihood of vulnerability research, automated scanning, and exploitation attempts.
Strategic Governance Pillars
Threat Hunting & Indicators of Compromise (IoCs)
Network Signals
Host-Based Artifacts
Known IOCs
|
IOC Type |
Indicator |
Description |
|
IP Address |
34.81.132.62 |
Exploitation Attempt |
|
IP Address |
79.177.131.206 |
Exploitation Attempt |
|
IP Address |
15.157.135.170 |
Exploitation Attempt |
|
IP Address |
94.100.52.128 |
Exploitation Attempt |
|
IP Address |
172.235.128.52 |
Mass Scanning |
|
SHA-1 Hash |
2a1410d8e2a8337ac2171cedea8c0fdc47c647a0 |
Obfuscated CMSmap Plugin |
|
SHA-1 Hash |
58eca847e9eae9e6b08cc211f1559817b71bc4cc |
PHP Webshell |
|
SHA-1 Hash |
ebea44890f434d5d67ede22009a3f4bb5cac33f8 |
PHP Webshell |
|
SHA-1 Hash |
d9a220c8039f1c4d72cae7ccb8b3a33dec8815be |
PHP Webshell |
|
SHA-1 Hash |
e9756e2338f84746007235e4cab7a70d5b3ca47f |
PHP Webshell |
Mitigations and Remediations
Organizations must immediately update WordPress Core to versions 7.0.2, 6.9.5, or 6.8.6. While WordPress.org has pushed forced updates, administrators must "trust but verify" these installations, as auto-update completion is not guaranteed on all host configurations. Priority must be given to instances on the 6.9.x and 7.0.x branches, which are susceptible to the full RCE chain.
Temporary Mitigations
Where immediate patching is not possible, administrators should implement WAF rules to block unauthenticated access to the affected REST API batch endpoints. URL decoding should be performed prior to rule matching to detect encoded requests.
Blocked endpoints:
Post-Compromise Actions
If there is reason to believe exploitation has occurred, the following actions are recommended:
If you are worried about any of the threats outlined in this bulletin or need help in determining what steps you should take to protect yourself from the most material threats facing your organisation, please contact your account manager, or alternatively get in touch to find out how you can protect your organisation.