On this page
October 2026 gave small businesses one fix to chase this week: PHP2Shell, two critical flaws in PHP itself (CVE-2026-109618 and CVE-2026-109619), disclosed by the PHP project on 21 October. If your site runs PHP, ask your host whether the PHP serving your domain is patched and was restarted. The other incidents only matter if you use that specific software.
| Fact | Detail | Source |
|---|---|---|
| Main issue for most sites | PHP2Shell: CVE-2026-109618 and CVE-2026-109619, remote code execution in PHP core. On CISA's known exploited list since 26 October | PHP notice, CISA KEV |
| Fixed PHP releases | 8.5.12, 8.4.27, 8.3.36, 8.2.35. PHP says 8.1 and older no longer receive project updates and need a vendor backport or an upgrade | PHP notice |
| Who is in scope | All PHP installations serving web requests, including PHP-FPM, mod_php, php-cgi, FrankenPHP and LiteSpeed | PHP notice |
| Action UK NCSC urges | Find every PHP install, update internet-facing ones first, use PHP's interim mitigations if you cannot, consider taking a system offline if you cannot mitigate | UK NCSC |
| Ransomware advisory | SafePay: joint advisory AA26-293A, 20 October, estimates at least 600 victims since August 2024 | CISA |
| Checked | 24 October 2026; CISA status re-checked 28 October 2026 | this page |
Who among small businesses is actually affected?
It depends on what you run, not on how big you are. This table covers the incidents with a vendor or government page behind them.
| If you use | Incident | What the source says | Your action |
|---|---|---|---|
| Any PHP site: WordPress, WooCommerce, Magento, Laravel | PHP2Shell | Fixed in 8.5.12, 8.4.27, 8.3.36, 8.2.35, or a vendor backport. See PHP and our PHP2Shell page | Ask your host or developer (below) |
| Self-managed GitLab | CVE-2026-110264 | GitLab rates it CVSS 3.1 10.0 and lists fixed versions 18.11.13, 19.0.10, 19.1.9, 19.2.9, 19.3.6, 19.4.3 and 19.5.1. GitLab.com already runs the patched version (GitLab) | Upgrade to the fixed version for your line |
| Plex Media Server | Four CVEs | Plex says the flaws are actively and widely exploited and fixed in 1.43.3.10861 (Plex). CISA added all four on 2026-10-20 (CISA KEV) | Update; see our Plex page |
| A Node.js app or API | Brotli CVE-2026-111497 and others | Fixed in 22.23.4, 24.22.1 and 26.12.1. The Node.js notice says nothing about active exploitation, but CISA added the Brotli flaw to its known exploited list on 27 October (Node.js, CISA KEV) | Your developer upgrades; see Node.js patches |
| Railway or Zeabur to host an app | Platform breaches | Both vendors say environment variables may have been read and tell customers to replace them (Railway, Zeabur) | Rotate secrets; see Railway steps and Zeabur guide |
| LiteLLM 1.107.0 | Malicious packages | The maintainer names exact release windows on 21 October (LiteLLM) | Developer task; only that version |
The full list, with every incident and its status, is in the status of each incident.
What is the trap for a small business?
Three mistakes show up in the way people talk about these incidents.
- Treating the news cycle as one event. These are separate vendors with separate fixes. A fix for one does nothing for another.
- Updating the wrong layer. PHP2Shell is in PHP, so updating WordPress or plugins does not close it, as the PHP notice puts it for the runtime serving web requests. On shared plans you cannot patch it yourself.
- Reading a number as proof. A version string can be a backport, and a package update does nothing for workers that were never restarted. Ask for the build and the restart time, not a reassurance. The UK NCSC also says not to limit your search to old PHP versions.
How do I fix it this week?
If a host manages your PHP
Send support this and keep the reply:
For [your domain], is the PHP runtime that serves web requests patched for CVE-2026-109618 and CVE-2026-109619? Please give the fixed package, build or backport identifier, confirm that all workers serving it have been restarted or replaced, and say whether I need to change anything.
- Send the question to your host, or to the developer who looks after the site
- Keep the written answer with the date
- If the host cannot answer, ask for a date and ask what they advise in the meantime
- Check that the site still works after any change, checkout included
If you manage the server or the code yourself
- Find every place PHP runs: web, queue workers, cron, staging, containers. The UK NCSC asks for this inventory first
- Update from your distribution or vendor and restart the workers. Rebuild container images that bundle PHP
- Upgrade GitLab, Plex or Node.js to the fixed versions in the table above
- If you host on Railway or Zeabur, replace every secret stored there, following each vendor's own list (Railway, Zeabur)
The ransomware advisory is general hygiene. CISA and its partners list multi-factor sign-in, prompt patching of internet-facing systems, and encrypted offline backups with tested restores.
Am I affected? Where you stand right now
Am I affected? Where you stand right now
A check from outside can read what your site shows. It cannot see your host's patch state or whether your workers restarted.
- Detected Your site serves PHP and the exposed version is below the fixed release for its branch. Treat it as exposed. Ask your host the question above or patch and restart today.
- Unknown The version is hidden, or could be a backport, or you cannot tell what runs behind your site. This is the common case. Get the package or build identifier from whoever runs the server.
- Confirmed by owner evidence You hold the fixed package or build identifier naming the CVE, and a restart or redeploy time after it. The patch state is settled. Whether anything got in earlier is a separate question.
No scan, ours included, moves you from "unknown" to "confirmed".
Were small businesses actually hit?
Be precise about words here. Plex says its flaws are actively and widely exploited, and CISA lists them in its catalog of known exploited vulnerabilities. The GitLab notice describes two detections for self-managed customers, and does not say a compromise was confirmed. The Node.js notice makes no statement on exploitation, but CISA added its Brotli flaw, CVE-2026-111497, to the catalog on 27 October. For PHP2Shell, CISA added both CVEs to the catalog on 26 October, so exploitation in the wild is on record. The PHP notice says a demonstrated exploit exists for the mod_php path, and we found no primary source naming a compromised business. The difference between attempts and real compromise has its own page.
The ransomware figure needs care too. AA26-293A says the group has had "at least 600 separate victims" across sectors since August 2024. That is the agencies' estimate for a campaign, not a list of small businesses and not a count for October.
If your PHP was unpatched and reachable around 21 October, ask your host or developer to look for unexpected PHP files in upload folders, scheduled tasks you did not create, and new administrator accounts. Patching does not remove anything planted earlier.
What about the certificate and platform stories?
Mozilla says it received a report on 17 October that the private keys of eight eMudhra intermediate certificates were compromised, and blocked them in Firefox within hours. Mozilla's post does not say whether any fraudulent certificate was issued. On 25 October, a commenter on Mozilla's incident bug reported 107,107 certificates signed with six of the keys in public logs on 20 and 21 October, nearly all proofs of concept for google.com, and eMudhra said it had decided to exit the public TLS business. Mozilla says Firefox users with standard settings are covered by its OneCRL blocklist without updating or restarting (at our check on 24 October 2026). Its post does not speak for other browsers. The Node.js releases also remove the CA certificate. See the eMudhra explainer.
For platform breaches, the vendor's own words limit what we can say. Railway says at most 1.85% of workspaces had some environment variables potentially compromised, asks everyone who signed up before 21 October to rotate keys stored on Railway, and says on 26 October that the incident is resolved for existing users. Zeabur calls its report preliminary. Both are vendor statements, not independent findings.
How far does one PHP bug reach?
Further than most owners expect, because so many sites sit on it. The reason is covered in why PHP matters, and the same plan applies to a store in the ecommerce version of this page. The other landscape write-ups cover startups and agencies.
Questions people ask
Do I need to do anything about PHP2Shell if I run a WordPress site?
Yes, if your site runs PHP, and WordPress always does. The fix is a patched PHP on the server and a restart of its workers, which on most shared plans is your host's job. Updating WordPress or plugins does not change the PHP underneath.
Was my small business hacked in October 2026?
Nothing here can say it about yours. Attempts and confirmed compromise are different things. If your PHP was unpatched and reachable in the days around 21 October, ask your host or developer to look for unexpected files, new admin accounts and scheduled tasks.
Does my host have to apply the PHP patch or do I?
On shared and managed hosting the host usually owns the PHP runtime, so ask them in writing. On a VPS or dedicated server you or your developer own it. If you cannot tell which you have, the answer is in your hosting plan description.
My version number looks old. Am I vulnerable?
Not necessarily, because some vendors fix a bug and keep the old version number. Equally, a new-looking number does not prove the running PHP was restarted after the update. Ask for the package or build identifier and the restart time.
Which of these incidents matter if I have no servers at all?
Fewer than the headlines suggest. Check whether your website, store or any app you use runs on PHP, whether you use Plex, GitLab, Railway or Zeabur, and whether your developer runs Node.js. If none apply, the ransomware advisory's basics (multi-factor sign-in, tested backups, patched VPNs) still do.
Sources
- PHP security notice, 21 October 2026 (php.net)CVE-2026-109618 and CVE-2026-109619, fixed releases, scope. Checked 24 October 2026.
- UK NCSC: critical security issue affecting PHPPublished 21 October 2026. Checked 24 October 2026.
- CISA, FBI and partners: joint advisory AA26-293A on SafePay ransomware (20 October 2026)Checked 24 October 2026.
- GitLab patch release 19.5.1: CVE-2026-110264Checked 24 October 2026.
- Node.js security releases, 21 October 2026Checked 24 October 2026.
- Plex forum: security update for Plex Media Server 1.43.2 and earlierUpdate post of 19 October 2026. Checked 24 October 2026.
- CISA Known Exploited Vulnerabilities catalogThe four Plex CVEs were added on 2026-10-20, both PHP2Shell CVEs on 2026-10-26 and Node.js Brotli CVE-2026-111497 on 2026-10-27 (read on 28 October 2026). GitLab CVE-2026-110264 was not listed.
- Mozilla Bugzilla 2083449: eMudhra private key compromise of intermediate certificatesComments 43 and 44 (25 October). Read on 28 October 2026.
- Railway preliminary report on the October security incident (updated 26 October 2026)Vendor statement. Scope and the 26 October resolution update.
- Mozilla Security Blog: protecting Firefox users after the eMudhra intermediate certificates compromise (20 October 2026)Checked 24 October 2026.
- Railway security disclosure, 21 October 2026Vendor statement. Checked 24 October 2026.
- Zeabur preliminary report on its October 2026 security incident (19 October 2026)Vendor statement, marked preliminary. Checked 24 October 2026.
- LiteLLM incident report, 21 October 2026Vendor statement, last updated 21 October 20:30 UTC. Checked 24 October 2026.
Facts on this page are dated and point at the primary source next to them. If a vendor status changes after the date shown, the vendor's page wins; tell us at support@run.cloud and we will update it.