In short: The WordPress PHP vulnerability currently being reported is not in WordPress but in the PHP on the server underneath. A WordPress update therefore does not close PHP2Shell. What matters is the PHP patch level, the restart of all PHP processes and a check of typical hiding places such as wp-content/uploads and mu-plugins.
Why a WordPress update does not fix PHP2Shell
WordPress is an application written in PHP. The flaws CVE-2026-109618 and CVE-2026-109619 sit one layer deeper, in the PHP interpreter itself. According to the PHP team, they allow remote code execution without authentication. With Apache and mod_php, an exploit was demonstrated before any WordPress code even runs.
A website with an up-to-date core, up-to-date plugins and strong passwords can therefore still be vulnerable if the PHP underneath is old. Conversely, patched PHP does not prove that nothing happened before. We explain the background under What is PHP2Shell?.
| Layer | Who updates it | Closes PHP2Shell? |
|---|---|---|
| WordPress core | You or your agency | No |
| Plugins and themes | You or your agency | No |
| PHP on the server | Host or server admin | Yes, together with a restart of all PHP processes |
WordPress PHP vulnerability: checking the PHP version
In the dashboard, under Tools > Site Health > Info, the "Server" section shows the PHP version your website is actually running on. That is more meaningful than php -v on the command line, because the command line often uses a different PHP installation than the web server.
The displayed number alone is still not enough. Fixed upstream versions are 8.5.12, 8.4.27, 8.3.36 and 8.2.35. However, many hosts apply the fixes as a backport; the older number then remains although the system is patched. How to determine the real status is described in Checking the PHP version and patch level correctly. Which PHP versions your WordPress version supports can be found in the system requirements on wordpress.org.
Where malicious code likes to hide in WordPress
After a successful attack, perpetrators usually leave a backdoor so they can return even after the patch. WordPress has well-known places for this:
- wp-content/uploads/: meant for images and PDFs, not for PHP files.
- wp-content/mu-plugins/: "must-use" plugins load automatically and cannot be deactivated in the dashboard.
- wp-config.php: contains the database credentials and security keys; an inserted line hardly stands out here.
- .htaccess in the main directory and in subfolders: redirects only for search engines, or execution of unusual file extensions.
- Themes, above all
functions.php, as well as deactivated, forgotten plugins. - Database: new administrators in
wp_users, foreign JavaScript inwp_optionsor in posts.
Harmless first checks with WP-CLI and built-in tools:
# Compare core files against the official checksums
wp core verify-checksums
# Check plugins from the wordpress.org directory
wp plugin verify-checksums --all
# List PHP files in the uploads folder
find wp-content/uploads -type f -name "*.php"
# Show all administrators
wp user list --role=administrator
A hit is a reason for a closer examination, not yet proof. Commercial plugins cannot be checked this way. The guide Finding backdoors in WordPress goes into more detail.
Do not delete suspicious files hastily. First secure the files, the database and the server logs from 20 October 2026 onward. Without these traces, it cannot be clarified later whether data was exfiltrated.
Plugins, themes and admin access as an additional risk
PHP2Shell does not need a plugin flaw. In everyday operation, however, plugins and themes remain the most common entry point into WordPress websites. Every plugin brings its own code, its own upload functions and its own update cycle. You should delete unused plugins rather than just deactivating them, because deactivated files remain on the server.
For wp-login.php and wp-admin, the following applies: few administrators, personal accounts instead of shared logins and two-factor authentication. If you do not need XML-RPC, it can be blocked. After a suspicion, all passwords and the security keys in wp-config.php should be renewed. You can also switch off the file editor in the dashboard there:
define( 'DISALLOW_FILE_EDIT', true );
What you should do now as a WordPress site owner
- Have your host confirm the PHP patch level and the restart of all PHP processes in writing.
- Have server logs from 20 October 2026 onward retained.
- Carry out the checks above, or have them carried out.
- Update WordPress, plugins and themes. This is the right thing to do, but no substitute for step 1.
- If anything looks unusual, do not simply keep operating the website; have it cleaned up.
A platform update can close known flaws in WordPress and plugins. It can neither repair PHP nor remove injected files that are not part of the core.
How does PHP SOS help?
- Together with you or your host, we establish the actual PHP status of your WordPress website, including backports and restart.
- We secure logs, files and database before anything is changed.
- We check core, plugins, uploads, mu-plugins,
.htaccessand user accounts for backdoors. - If we find something, our malware removal takes care of the cleanup until the incident is closed and documented; if we find nothing, we harden the installation as part of the PHP2Shell emergency help.
Frequently asked questions
Do I need to update WordPress because of PHP2Shell?
An up-to-date WordPress is always sensible, but it does not close PHP2Shell. The flaw sits in the server's PHP interpreter. That requires a PHP update or a confirmed backport from your host, plus a restart of all PHP processes.
Does a security plugin protect against PHP2Shell?
Only to a very limited extent. A plugin itself runs as PHP code inside WordPress. With mod_php, an exploit was demonstrated before any application code even starts, so a plugin may not notice such an attack at all.
Why does WordPress still show an old PHP version although my host has patched?
Many hosts and Linux distributions apply fixes as a backport to the existing version. The version number then stays the same. Ask your host to confirm the patch level in writing.
Is a PHP file allowed in wp-content/uploads?
Normally not. The uploads folder is meant for media. A PHP file there is a clear warning sign and should be secured and examined by a specialist before it is deleted.