New WordPress vulnerability (and not in a plugin)

Source: https://www.bleepingcomputer.com/news/security/wordpress-core-wp2shell-rce-flaws-get-public-exploits-patch-now/

J'espère que le traducteur intégré au forum va traduire l'article ci-dessous à la demande

===============================================================

WordPress Core "wp2shell" RCE flaws get public exploits, patch now

Public exploits have been released for the critical "wp2shell" remote code execution vulnerabilities affecting WordPress Core, making it imperative that administrators patch their sites immediately.

The wp2shell attack consists of two flaws, tracked as CVE-2026-63030 and CVE-2026-60137, that can be chained together to achieve pre-authentication remote code execution against WordPress installs running versions 6.9.x and 7.0.x.

The flaws were discovered by Adam Kues of Searchlight Cyber, which says an unauthenticated attacker can exploit them against a default WordPress installation.

"Searchlight Cyber's security research team has discovered a pre-authentication RCE in WordPress Core," explained Searchlight Cyber.

"The attack has no preconditions and can be exploited by an anonymous user in a stock install of WordPress with no plugins."

Searchlight Cyber estimates that more than 500 million websites use WordPress, giving the vulnerability a potentially massive impact, especially now that public proof-of-concept exploits have been released.

Due to the severity of the vulnerabilities, the WordPress security team has enabled forced automatic security updates for supported installations running affected versions, urging site owners to update to WordPress 7.0.2 or 6.9.5 immediately.

"Because this is a security release, it is recommended that you update your sites immediately," WordPress said in its security announcement.

"Due to the severity, the WordPress.org team have enabled forced updates via the auto-update system for sites running affected versions."

The issue is not a single vulnerability but rather two independent flaws that can be combined into an unauthenticated remote code execution chain.

The first flaw, CVE-2026-63030, is a REST API batch-route confusion vulnerability introduced in WordPress 6.9. According to the GitHub advisory, the flaw can be combined with the SQL injection issue to achieve remote code execution.

The second vulnerability, CVE-2026-60137, is an SQL injection flaw in the 'author__not_in' parameter of 'WP_Query'. WordPress describes it as a high-severity SQL injection vulnerability affecting WordPress 6.8 and later.

According to the WordPress advisories, the complete RCE chain affects WordPress 6.9.0 through 6.9.4 and WordPress 7.0.0 through 7.0.1.

The SQL injection vulnerability also affects WordPress 6.8.0 through 6.8.5, but cannot be chained to remote code execution because the REST API batch-route confusion bug was added in WordPress 6.9.

The full wp2shell attack chain has been fixed in WordPress 6.9.5 and 7.0.2.

Searchlight Cyber is currently withholding technical details to give administrators time to patch, instead creating the wp2shell.com website, which allows admins to test whether their WordPress installations are vulnerable.

For organizations unable to immediately update, Searchlight Cyber recommends:

  • Installing a plugin that blocks anonymous access to the REST API entirely; or
  • Blocking /wp-json/batch/v1 and ?rest_route=/batch/v1 at a WAF level.

The company warns these mitigations should only be used as a temporary measure until systems can be updated.

Cloudflare also announced that it has deployed Web Application Firewall (WAF) protections for both vulnerabilities across all plans, including free accounts, that are proxied behind its platform.

According to Cloudflare, the rules block attempts to exploit both the SQL injection flaw (CVE-2026-60137) and the REST API batch-route confusion vulnerability (CVE-2026-63030).

"WAF protections reduce exposure while customers update, but they are not a substitute for patching," Cloudflare said.

Public PoC exploits released

While Searchlight Cyber delayed releasing technical details to give administrators time to patch, multiple public proof-of-concept exploits have since been published on GitHub.

Some publicly available exploits combine the two vulnerabilities to extract WordPress password hashes via SQL injection, then crack an administrator password to log in, upload a malicious plugin, and execute commands.

However, other proof-of-concept exploits claim to achieve pre-authentication remote code execution without requiring administrator credentials, which is more in line with Searchlight Cyber's description of the flaws.

BleepingComputer has contacted Searchlight Cyber to confirm that its attack chain does not require an administrator password.

Security firm watchTowr says it has already seen in-the-wild exploitation after the public exploits were released.

"WordPress gets a bad rap for security. But the reality is that a highly impactful, unauthenticated SQL injection or remote code execution vulnerability in WordPress core is actually fairly rare," watchTowr CEO Benjamin Harris told BleepingComputer via email.

"That is exactly what makes this one different, and why everyone is scrambling to patch before widespread exploitation takes hold. The watchTowr team is already seeing PoC exploits in circulation, and we are beginning to see the first signs of in-the-wild exploitation."

Given the availability of public proof-of-concept exploits and the first reported signs of in-the-wild exploitation, administrators should ensure their sites are updated to WordPress 7.0.2 or 6.9.5 as soon as possible.

Thanks @fritz2cat, that’s going to be a mess :frowning:
Right in the middle of a great summer…

Thanks for the info.
I keep saying it, wordpress for a small showcase/personal blog site should be stopped...
astro.build + github + cloudflare worker + pagescms are good + interesting...

With the help of an AI it’s very easy to set up.

Good luck to those who have to manage wordpress sites in bulk, especially in the middle of summer.

Thanks @fritz2cat for this valuable information.

Where does this logo that I often see at the end of a message come from?

image

Out of 475 WP, 53 not up to date, 5 already hacked…

Thanks @fritz2cat
Indeed I had two automatic updates to apply on my three WordPress sites, and now I know why.
I’m on 7.0.2 everywhere.

Thanks for the info

Just to say that you have the same problem — if you click on it, it only appears in the first post of the thread.

Hello everyone,

Thank you for sharing this information!
It should be noted that this CVE is indeed exceptional in terms of its scope; it is rare to see one directly in the WordPress core.

A large portion of WordPress sites have been automatically updated by the internal automatic‑update process (when the site owner has not disabled it).
However, to best protect those who have disabled this feature, we have applied filters on the affected routes to minimise the exploitation of the CVE; these filters do not block access, as these routes are legitimately used by some of our customers, but they reduce the attack surface while waiting for your fix. It remains possible to exploit an unpatched site under certain conditions.

The news shows that CVE discoveries are happening increasingly quickly in recent weeks and the pace continues to accelerate; we strive to validate their impacts as quickly as possible and apply patches as soon as they affect our technical layers.
When your sites are impacted, we try to reduce the impact by adding these filters.

We are also preparing other tools to help you secure your applications; more information will be available at the end of summer.

--

Bruno B.
Team Lead Shared Hosting
OVHcloud

Thanks @MaryS

Hello everyone,

Thanks @fritz2cat, I’m adding the link to cert-fr:
https://www.cert.ssi.gouv.fr/alerte/CERTFR-2026-ALE-007/

^FabL

I put this in the Apache 2 configuration:

RewriteRule (^|/)wp-json/+batch/+v1 - [R=403,L]

The thing is that RewriteRule is case‑sensitive, but the WP router isn’t…
I’ve seen in the logs that some clever users use uppercase letters in the requests, so it gets through (fortunately on up‑to‑date WP installations).

RewriteRule (^|/)wp-json/+batch/+v1 - [R=403,L,NC]

solves the problem

Hello, I’m sending out a distress call; I’m not very strong in the field of IT, which is why I’m asking for help. Is there anyone who could troubleshoot this for me? I created a site on my own using my OVH host, and it worked fine until I noticed a bug. My site appeared correctly on Google, but on my own computer it was no longer the same, so I couldn’t modify the elements on it. It’s a showcase site for renting my cottage in the Larzac. After that I tried to fix things myself using AI, but I think I messed up with OVH. I went into MySQL and I believe I performed a wrong operation. I can’t access my FTP even though my password was changed. I contacted OVH and they told me I had a 501 error, I think, so now I have no connection to my WordPress and my site is no longer visible on Google. I may have been too confident in my abilities. If a forum member feels able to help me, please let me know. Thanks in advance. JM

Posting everywhere is pointless.

See my answer here: Problème PHP CGI erreur 500 - #6 par Gaston

Please edit your post to remove your phone number.
You can send a private message to Gaston directly.
Click on his avatar, and there you will have the option to write to him privately.