Server rack undergoing maintenance in a data center

Cybersecurity

Critical PHP Vulnerabilities in October 2026: Is Your Website at Risk?

Published Updated 14 min read
Jump to a section
Critical security update

PHP released fixes on October 21, 2026 for CVE-2026-109618 and CVE-2026-109619. Affected web-serving runtimes can potentially permit unauthenticated remote code execution. Check the PHP build serving your site and apply the supported fixed release now. An affected version is not evidence that your site has been hacked.

What happened, and what should you do first?

The PHP security team disclosed two critical runtime vulnerabilities and issued fixes for the maintained 8.2 through 8.5 branches. Remote code execution means an attacker may be able to make the server run code that the site owner never approved. The risk is to the web server and, depending on the application and privileges, potentially to customer accounts or stored information.

If you own a business website, ask your hosting provider which web-serving PHP version is active and whether its build includes both fixes. If the answer is an affected version without a vendor backport, arrange the update urgently. Keep the application, framework and plugins current too, but those updates do not substitute for a PHP runtime fix.

Website owner

Administrator

This checklist is local to this page and is not saved or sent anywhere.

Which websites could be affected?

PHP runs behind WordPress, Drupal, Joomla, Laravel applications, custom PHP sites and products that embed PHP. The affected component is the server-side PHP runtime, not any one CMS or plugin. A site needs an actual runtime/version and environment check; using one of these platforms alone does not prove exposure.

PHP identifies web-serving integrations including PHP-FPM, Apache mod_php, php-cgi, FrankenPHP and LiteSpeed. Its advisory considers mod_php especially urgent because a demonstrated path can occur before application code executes. Prioritize internet-facing sites and ask vendors about PHP bundled into appliances or managed products.

This is a risk pathway, not a claim that every vulnerable installation was compromised.

What are the two PHP vulnerabilities?

CVE-2026-109618

Out-of-memory state corruption

During some memory-exhaustion paths, PHP can abort while internal request data is only partly initialized. Cleanup may then use invalid state. The PHP project describes a path to remote code execution; the exact exposure depends on the server integration and configuration.

CVE-2026-109619

Stale global state

Request-owned internal state can remain after its memory is freed. A later request handled by the same worker may touch that stale state before ordinary initialization resets it. This is a use-after-free condition that can be escalated to remote code execution.

Both issues are in PHP's request lifecycle. A well-written application cannot assume its own validation will prevent every runtime-level attack. The official advisories contain deeper technical details; this guide deliberately omits exploit payloads.

How to check and patch the version serving your site

Look in your hosting control panel's PHP selector or version view, or ask managed-hosting support for the running build. In WordPress, Tools → Site Health → Info → Server can report the site's PHP version. An authorized administrator can inspect the web-server integration, PHP-FPM pool or container image and package changelog. A terminal's php -v may refer to a different CLI binary, so verify the process handling actual web requests. Do not publish a public, unrestricted phpinfo() page to discover it.

PHP project fixed releases for both CVEs, October 21, 2026
PHP branchFixed releaseAction
8.28.2.35Update to 8.2.35 or later supported build
8.38.3.36Update to 8.3.36 or later supported build
8.48.4.27Update to 8.4.27 or later supported build
8.58.5.12Update to 8.5.12 or later supported build

PHP 8.1 and older are outside PHP project's current supported branches. Some downstream distributions and long-term-support vendors may supply backports, and PHP published minimal source backports for selected older branches. A version string alone may not reveal a vendor backport: request the vendor's security bulletin or package changelog.

A safe update sequence

  1. Identify every PHP runtime, service integration and container serving the website.
  2. Coordinate the maintenance window with your host or operations team.
  3. Take a backup and verify that restoration is possible.
  4. Check application and extension compatibility against the destination release.
  5. Install the vendor-supported patched release or documented backport.
  6. Restart or replace affected PHP workers and containers.
  7. Verify the version or patched package used by live web traffic, not just CLI.
  8. Test sign-in, forms, checkout, scheduled jobs and key integrations.
  9. Review web, PHP, authentication and endpoint logs.
  10. Investigate unusual files, accounts, processes or outbound connections.

A runtime update does not remove malware from a server already compromised. If you have suspicious evidence, use an incident-response process rather than treating a successful version check as a clean bill of health.

When patching is delayed: PHP documents measures that reduce specific attack paths, but says only an update is a complete solution. Work with your administrator on temporary isolation and vendor guidance; do not assume a firewall rule or configuration change fully closes either CVE.

How to protect customer accounts and information

Start with evidence. Determine whether application data, account sessions or secrets were actually exposed, rather than assuming either that they were stolen or that no harm occurred. Review user roles and look for unauthorized administrator accounts, changed permissions and unusual access to customer records.

  • Accounts: protect administrator access with MFA and review privileged users. If credentials may have been exposed, reset them and rotate relevant service secrets.
  • Sessions: invalidate sessions when compromise of session material is credible, then monitor for renewed anomalous sign-ins.
  • Data: identify what customer information the site stores and whether logs show access, export or alteration.
  • Resilience: keep restorable backups and verify recovery on a trusted system.
  • Communication: tell affected users what is known, what remains under investigation and what protective action is appropriate. Assess breach-notification obligations for the relevant jurisdiction and facts; there is no universal response that fits every incident.

If you suspect the site was already compromised

Engage the hosting team and incident responders. Contain affected systems as appropriate while preserving logs, disk evidence and a timeline. Examine unexpected accounts, processes, web files, scheduled jobs and outbound connections; identify the entry point and any persistence. Patch the vulnerable runtime, remove attacker footholds, rotate exposed secrets, then validate recovery from a trusted state. Determine whether customer information was accessed or modified and follow applicable reporting requirements.

Do not destroy evidence by repeatedly reinstalling components before the incident team has captured what it needs. Likewise, do not announce a confirmed breach solely because an affected PHP version appeared in an inventory.

Hardening beyond this incident

The emergency action is the PHP security update. Longer-term controls make future vulnerabilities less damaging but are not substitutes for the two CVE fixes.

  • Keep the runtime, framework, CMS, extensions and plugins supported and updated.
  • Use prepared SQL statements, appropriate output encoding and server-side input validation.
  • Restrict uploads by type, size and storage location; never trust a filename alone.
  • Use secure sessions, TLS and appropriate browser security headers.
  • Apply least privilege and MFA to administrators, hosts and deployment systems.
  • Manage secrets outside source code and rotate them when exposure is suspected.
  • Scan dependencies, collect useful logs and alert on anomalous behavior.
  • Test backups and rehearse incident recovery.

The OWASP Cheat Sheet Series is a useful reference for these defense-in-depth practices.

Frequently asked questions

Is PHP itself unsafe?

No language is inherently safe or unsafe in every deployment. These are critical defects in affected PHP runtime releases. Supported, patched versions and a maintained application reduce risk.

Is WordPress affected?

A WordPress site uses PHP on the server and may be exposed if its serving PHP build is affected. These CVEs are in PHP, not WordPress core. Confirm the actual PHP build and hosting environment.

Does updating WordPress also update PHP?

Usually not. WordPress core, themes and plugins have their own update process; the host or server administrator typically manages the PHP runtime. Check both separately.

Can a firewall stop these vulnerabilities?

A firewall or request-size controls may reduce exposure to some attack paths, but PHP says only the security update is a complete solution. Do not treat a filtering rule as proof of safety.

Does shared hosting change the response?

The host may control the PHP binary and restart schedule. Ask for the exact patched build serving your site, whether a vendor backport is installed, and when all workers were refreshed.

What if my host controls PHP updates?

Open a support ticket citing both CVEs and request confirmation of the serving version or vendor backport. If there is no timely fix, discuss temporary isolation and migration options.

How can customers protect their accounts?

Use unique passwords and MFA where offered. If the site operator confirms account or session exposure, follow its instructions to reset credentials and sign out active sessions; avoid assuming exposure without evidence.

What should a business do after suspected compromise?

Engage incident response and hosting teams, preserve evidence, contain affected systems, establish what was accessed, remove persistence, rotate affected secrets, recover from a trusted state and assess applicable notification duties.

Sources and verification

Primary sources were checked on October 22, 2026. Follow the linked vendor pages for updates after that date.

  1. PHP project security advisory and fixed releases — Primary release guidance, affected integrations and mitigation limits
  2. PHP advisory: CVE-2026-109618
  3. PHP advisory: CVE-2026-109619
  4. ENISA joint statement
  5. Canadian Centre for Cyber Security alert AL26-026 — Reports no active exploitation identified at the time of its October 21 alert
  6. OWASP Cheat Sheet Series