On 21 October 2026 the PHP project fixed two critical flaws, CVE-2026-109618 and CVE-2026-109619. They can let anyone on the internet run their own code on a web server, without logging in. NCSC-NL tracks them as php2shell. PHP is widely used for websites, and it also sits inside appliances and hosted products. Three questions matter: are you updated, is any of your PHP too old to get a fix, and where does PHP run that you don't manage yourself? Op 21 oktober 2026 heeft het PHP-project twee kritieke lekken gedicht: CVE-2026-109618 en CVE-2026-109619. Daarmee kan iedereen op internet eigen code uitvoeren op een webserver, zonder in te loggen. Het NCSC volgt ze onder de naam php2shell. PHP wordt veel gebruikt voor websites, en het zit ook in apparaten en gehoste producten. Drie vragen tellen: bent u bijgewerkt, is een deel van uw PHP te oud voor een fix, en waar draait PHP dat u niet zelf beheert?
Both flaws sit in PHP itself, not in your application. PHP says every installation that serves web requests is at risk, including PHP-FPM, Apache with mod_php, php-cgi, FrankenPHP and LiteSpeed. The risk is highest with mod_php: PHP has seen a working exploit in which one request, without a login, triggers the attack before any of your own code runs. Both flaws are rated 9.2 out of 10 on CVSS v4.0, which is critical. The fixed versions are 8.5.12, 8.4.27, 8.3.36 and 8.2.35.
Business impact: whoever runs code on the web server can read what the website reads: customer data, database passwords, payment flows. That can also be a personal-data breach. The GDPR requires you to report it to the Autoriteit Persoonsgegevens within 72 hours of becoming aware of it, unless it is unlikely to risk people's rights and freedoms. PHP is clear that settings in php.ini reduce some attack paths but do not make a server safe; only the update does. CERT-EU reports that proof-of-concept code is circulating and considers exploitation likely. On 21 October 2026 neither flaw was yet on CISA's list of known exploited vulnerabilities.
Beide lekken zitten in PHP zelf, niet in uw applicatie. Volgens PHP loopt elke installatie die webverzoeken afhandelt risico, waaronder PHP-FPM, Apache met mod_php, php-cgi, FrankenPHP en LiteSpeed. Het risico is het hoogst bij mod_php: PHP heeft een werkende aanval gezien waarbij één verzoek, zonder inlog, de aanval start voordat er ook maar iets van uw eigen code draait. Beide lekken scoren 9,2 op 10 op CVSS v4.0, en dat is kritiek. De versies met de fix zijn 8.5.12, 8.4.27, 8.3.36 en 8.2.35.
Bedrijfsimpact: wie code draait op de webserver, kan lezen wat de website leest: klantgegevens, wachtwoorden van de database, betaalstromen. Dat kan ook een datalek zijn. De AVG verplicht u dat binnen 72 uur nadat u ervan kennis heeft gekregen te melden bij de Autoriteit Persoonsgegevens, tenzij het waarschijnlijk geen risico oplevert voor de rechten en vrijheden van personen. PHP is duidelijk: instellingen in php.ini verkleinen sommige aanvalspaden, maar maken een server niet veilig; alleen de update doet dat. CERT-EU meldt dat er proof-of-conceptcode rondgaat en acht misbruik waarschijnlijk. Op 21 oktober 2026 stond nog geen van beide lekken op de CISA-lijst van bekend misbruikte kwetsbaarheden.
The fixes are public code. AI tools help attackers read a fix, work out the flaw behind it and build an attack in days rather than weeks.De fixes zijn openbare code. AI-tools helpen aanvallers een fix te lezen, het lek erachter te begrijpen en binnen dagen in plaats van weken een aanval te bouwen.
AI assistants suggest php.ini tweaks copied from the web as "the fix". PHP itself says those settings reduce exposure but do not make a server safe.AI-assistenten stellen php.ini-aanpassingen van internet voor als "de oplossing". PHP zegt zelf dat die instellingen het risico verkleinen, maar een server niet veilig maken.
AI-assisted scanning and log tools can list every PHP version you run and flag odd requests to PHP before and after the update.Scan- en logtools met AI kunnen elke PHP-versie die u draait in kaart brengen en vreemde verzoeken aan PHP signaleren, voor en na de update.
PHP 8.1 reached its end of life on 31 December 2025, and 8.0 and 7.4 earlier. The PHP project gives them no official release with this fix. It did publish minimal source patches for 7.4, 8.0 and 8.1, but someone has to build and test them. Linux distributions and long-term-support vendors may ship them as packages. Older versions get no patch from the PHP project at all. On PHP's own calendar, security support for 8.2 ends on 31 December 2026.
Business impact: a site on end-of-life PHP stays open until someone upgrades it or builds a patch. That is rarely a one-day job, because old PHP usually means an old application that breaks on a new version. So it is a project with a budget, an owner and a date. Until it is done, CERT-EU suggests isolating internet-facing systems that cannot be patched.
PHP 8.1 bereikte op 31 december 2025 het einde van zijn levensduur, 8.0 en 7.4 al eerder. Het PHP-project geeft ze geen officiële release met deze fix. Het publiceerde wel minimale broncodepatches voor 7.4, 8.0 en 8.1, maar iemand moet die bouwen en testen. Linuxdistributies en leveranciers van langdurige ondersteuning leveren ze mogelijk als pakket. Oudere versies krijgen van het PHP-project helemaal geen patch. Volgens de eigen kalender van PHP stopt de beveiligingsondersteuning voor 8.2 op 31 december 2026.
Bedrijfsimpact: een site op verouderde PHP blijft open tot iemand hem bijwerkt of een patch bouwt. Dat is zelden werk van één dag, want oude PHP betekent meestal een oude applicatie die stukgaat op een nieuwe versie. Het is dus een project met een budget, een eigenaar en een datum. Tot het klaar is, raadt CERT-EU aan systemen aan het internet die niet te patchen zijn te isoleren.
Old PHP versions and old frameworks are easy to recognise from the outside. Automated scanning finds them first, and they stay open the longest.Oude PHP-versies en oude frameworks zijn van buitenaf makkelijk te herkennen. Geautomatiseerd scannen vindt ze als eerste, en ze blijven het langst open.
Under pressure, a team lets an AI tool port an old application overnight. Untested code on the internet is a new risk of its own.Onder druk laat een team een AI-tool een oude applicatie in één nacht overzetten. Ongeteste code aan het internet is een nieuw risico op zich.
With tests and review in place, AI coding assistants can take on much of the dull work of moving an old application to a supported PHP version.Met tests en review erbij kunnen AI-codeassistenten veel van het saaie werk doen om een oude applicatie naar een ondersteunde PHP-versie te brengen.
PHP is not only on your own web servers. It runs in hosted websites and web shops, in content-management plugins and container images, and inside appliances, network devices and management interfaces. There you often cannot update PHP yourself; you wait for the vendor or the host. NCSC-NL keeps a public list of software products with a PHP dependency, and CERT-EU points to it. The list is still being expanded.
Business impact: the open question is rarely "did IT patch?". It is "which suppliers run PHP for us, and have they confirmed the update?". If you make a product with PHP inside and the flaw is actively exploited in it, the CRA requires you, as manufacturer, to report it: early warning within 24 hours, notification within 72 hours, via ENISA's Single Reporting Platform.
PHP staat niet alleen op uw eigen webservers. Het draait in gehoste websites en webwinkels, in plug-ins voor contentbeheer en in containerimages, en in apparaten, netwerkapparatuur en beheerinterfaces. Daar kunt u PHP vaak niet zelf bijwerken; u wacht op de fabrikant of de hostingpartij. Het NCSC houdt een openbare lijst bij van softwareproducten die PHP gebruiken, en CERT-EU verwijst daarnaar. De lijst wordt nog aangevuld.
Bedrijfsimpact: de open vraag is zelden "heeft IT gepatcht?". Het is "welke leveranciers draaien PHP voor ons, en hebben zij de update bevestigd?". Maakt u een product met PHP erin en wordt het lek daarin actief misbruikt, dan verplicht de CRA u als fabrikant tot melden: vroegtijdige waarschuwing binnen 24 uur, melding binnen 72 uur, via het Single Reporting Platform van ENISA.
Attackers unpack appliance firmware with AI help and find the PHP inside. The gap between the PHP fix and the vendor's update is their window.Aanvallers pakken met hulp van AI de firmware van apparaten uit en vinden de PHP erin. De tijd tussen de PHP-fix en de update van de fabrikant is hun kans.
AI plugins and add-ons for a website bring their own PHP code and dependencies, often installed without anyone listing them.AI-plug-ins en uitbreidingen voor een website brengen hun eigen PHP-code en afhankelijkheden mee, vaak geïnstalleerd zonder dat iemand ze vastlegt.
With a software bill of materials from each supplier, a tool can answer "where do we run PHP?" in minutes instead of weeks.Met een softwarestuklijst van elke leverancier kan een tool de vraag "waar draaien wij PHP?" in minuten beantwoorden in plaats van weken.
| Control | Addresses | In one line |
|---|---|---|
| Update now | Update (01) | 8.5.12, 8.4.27, 8.3.36 or 8.2.35, or your Linux distribution's patched package. Restart every PHP worker afterwards. |
| Compromise check | Update (01) | For servers that were reachable before the update: look for unknown files, new accounts and odd outbound traffic. NCSC-NL collects detection material. |
| Interim settings | Update (01) | Only where the update takes longer: PHP's own php.ini measures. PHP says they reduce exposure but do not make a server safe. |
| Version list | Old PHP (02) | Every server, image and site with its PHP version and the end-of-support date from php.net. Kept current, not made once. |
| Upgrade plan with a date | Old PHP (02) | For 8.1 and older now, and for 8.2 before its support ends. What cannot move in time is isolated from the internet. |
| Supplier confirmation | Suppliers (03) | Hosting providers and appliance vendors confirm in writing which version they run and when they updated. |
| Software bill of materials | Suppliers (03) | Asked for in contracts, so the next "do we run this?" is answered from a list, not a survey. |
| Maatregel | Pakt aan | In één zin |
|---|---|---|
| Nu bijwerken | Bijwerken (01) | 8.5.12, 8.4.27, 8.3.36 of 8.2.35, of het gepatchte pakket van uw Linuxdistributie. Start daarna elk PHP-proces opnieuw. |
| Controle op inbraak | Bijwerken (01) | Voor servers die vóór de update bereikbaar waren: zoek naar onbekende bestanden, nieuwe accounts en vreemd uitgaand verkeer. Het NCSC verzamelt detectiemateriaal. |
| Tijdelijke instellingen | Bijwerken (01) | Alleen waar de update langer duurt: de php.ini-maatregelen van PHP zelf. PHP zegt dat die het risico verkleinen, maar een server niet veilig maken. |
| Versielijst | Oude PHP (02) | Elke server, image en site met zijn PHP-versie en de einddatum van ondersteuning volgens php.net. Bijgehouden, niet één keer gemaakt. |
| Upgradeplan met datum | Oude PHP (02) | Voor 8.1 en ouder nu, en voor 8.2 voordat de ondersteuning stopt. Wat niet op tijd over kan, wordt van het internet geïsoleerd. |
| Bevestiging leverancier | Leveranciers (03) | Hostingpartijen en fabrikanten van apparaten bevestigen schriftelijk welke versie zij draaien en wanneer zij bijwerkten. |
| Softwarestuklijst | Leveranciers (03) | Gevraagd in contracten, zodat de volgende "draaien wij dit?" uit een lijst komt, niet uit een rondvraag. |
No login needed, reachable from the internet, and the details are public. CERT-EU considers exploitation likely.Geen inlog nodig, bereikbaar vanaf internet, en de details zijn openbaar. CERT-EU acht misbruik waarschijnlijk.
Code running on the web server: data theft, a defaced or skimmed site, and a foothold for ransomware. It can become a notifiable incident.Code die draait op de webserver: datadiefstal, een bekladde website of afgeroomde webwinkel, en een opstap naar ransomware. Het kan een meldplichtig incident worden.
Low for your own updated and checked servers. It stays medium while old PHP and supplier systems lag behind.Laag voor uw eigen bijgewerkte en gecontroleerde servers. Het blijft gemiddeld zolang oude PHP en systemen van leveranciers achterlopen.
The CISO owns the response; each application owner owns their PHP version, and vendor management chases the suppliers.De CISO is eigenaar van de aanpak; elke applicatie-eigenaar van zijn PHP-versie, en leveranciersbeheer volgt de leveranciers op.
% of internet-facing PHP on a fixed version · systems on end-of-life PHP · suppliers without written confirmation · days from the advisory to the last update.% van PHP aan het internet op een versie met de fix · systemen op verouderde PHP · leveranciers zonder schriftelijke bevestiging · dagen tussen het advies en de laatste update.
“An unpatched, end-of-life or supplier-managed PHP installation is exploited through php2shell, letting an attacker run code on a web server without logging in, which can lead to data theft, ransomware and a notifiable incident.”“Een ongepatchte, verouderde of door een leverancier beheerde PHP-installatie wordt via php2shell misbruikt, waardoor een aanvaller zonder inlog code op een webserver uitvoert, wat kan leiden tot datadiefstal, ransomware en een meldplichtig incident.”
| Framework | What it requires of you | When a supplier hands you their report | When this incident happens |
|---|---|---|---|
| NIS2 | NIS2 requires vulnerability handling (Art. 21(2)(e)) and supply-chain security (Art. 21(2)(d)). In the Netherlands this runs through the Cyberbeveiligingswet, in force since 15 August 2026. | Ask whether the service you use runs PHP, on which version, and when it was updated for these two flaws. | An exploited PHP server can count as a significant incident if it meets the thresholds. Early warning within 24 hours of becoming aware, incident notification within 72 hours, final report within one month. |
| DORA | The RTS on ICT risk require an asset inventory that records the end dates of vendor support (Art. 4) and vulnerability and patch management with set timeframes (Art. 10). DORA has applied since 17 January 2025. | A hosted site or appliance with PHP belongs to an ICT third party in your register. Ask for its fixed version and the date. | Classify promptly. Initial notification within 4 hours of classifying it as major (at most 24 hours after becoming aware), intermediate report within 72 hours of the initial notification, final report within one month. |
| SOC 2 | Criterion CC7.1 covers detecting new vulnerabilities; CC9.2 covers managing the risk of vendors and business partners. | Check that the web tier is in scope and that patch timelines are tested, not only described. Check whether the hosting provider is carved out. | An exploited or late-patched PHP server in scope will likely appear as an exception in the next report. |
| ISAE 3402 | The focus is financial reporting. Web servers appear only as general IT controls where they support the financial process. | The report rarely names PHP versions. Ask for them in the contract instead. | ISAE 3402 creates no duty to notify user auditors. Expect a deviation in the next report, and ask for interim disclosure in the contract. |
| Kader | Wat het van u vraagt | Als een leverancier u zijn rapport geeft | Als dit incident u treft |
|---|---|---|---|
| NIS2 | NIS2 vraagt omgang met kwetsbaarheden (art. 21 lid 2 onder e) en beveiliging van de toeleveringsketen (art. 21 lid 2 onder d). In Nederland loopt dit via de Cyberbeveiligingswet, van kracht sinds 15 augustus 2026. | Vraag of de dienst die u gebruikt PHP draait, op welke versie, en wanneer die voor deze twee lekken is bijgewerkt. | Een misbruikte PHP-server kan als significant incident gelden als het de drempels haalt. Vroegtijdige waarschuwing binnen 24 uur na ontdekking, incidentmelding binnen 72 uur, eindverslag binnen een maand. |
| DORA | De RTS over ICT-risico vragen een inventaris van bedrijfsmiddelen met de einddata van ondersteuning door de leverancier (art. 4) en kwetsbaarheids- en patchbeheer met vaste termijnen (art. 10). DORA geldt sinds 17 januari 2025. | Een gehoste site of apparaat met PHP hoort bij een ICT-derde in uw register. Vraag naar de versie met de fix en de datum. | Classificeer snel. Eerste melding binnen 4 uur na classificatie als ernstig (uiterlijk 24 uur na ontdekking), tussenrapport binnen 72 uur na de eerste melding, eindrapport binnen een maand. |
| SOC 2 | Criterium CC7.1 gaat over het ontdekken van nieuwe kwetsbaarheden; CC9.2 over het beheersen van het risico van leveranciers en zakenpartners. | Controleer of de weblaag binnen scope valt en of patchtermijnen zijn getest, niet alleen beschreven. Controleer of de hostingpartij buiten het rapport is gelaten. | Een misbruikte of te laat gepatchte PHP-server binnen scope komt waarschijnlijk als afwijking in het volgende rapport. |
| ISAE 3402 | De focus ligt op de financiële verslaggeving. Webservers komen alleen voor als algemene IT-beheersmaatregelen waar ze het financiële proces ondersteunen. | Het rapport noemt zelden PHP-versies. Vraag daar in het contract naar. | ISAE 3402 schept geen meldplicht aan de auditors van gebruikers. Verwacht een afwijking in het volgende rapport en vraag in het contract om tussentijdse melding. |
Checked against: php.net security advisory (21 Oct 2026), php.net supported versions and end-of-life table (Oct 2026), CVE records CVE-2026-109618 and CVE-2026-109619 (21 Oct 2026), CERT-EU SA 2026-018 (21 Oct 2026), NCSC-NL php2shell (21 Oct 2026), CISA KEV (21 Oct 2026), NIS2 Art. 21 and 23, RTS (EU) 2024/1774 Art. 4 and 10, RTS (EU) 2025/301 Art. 5, CRA reporting (European Commission), GDPR Art. 33, NCSC-NL (Aug 2026), AICPA Trust Services Criteria CC7.1 and CC9.2 (2017, points of focus 2022) · October 2026.
Gecontroleerd tegen: beveiligingsadvies php.net (21 okt 2026), ondersteunde versies php.net en tabel einde levensduur (okt 2026), CVE-records CVE-2026-109618 en CVE-2026-109619 (21 okt 2026), CERT-EU SA 2026-018 (21 okt 2026), NCSC php2shell (21 okt 2026), CISA KEV (21 okt 2026), NIS2 art. 21 en 23, RTS (EU) 2024/1774 art. 4 en 10, RTS (EU) 2025/301 art. 5, CRA-meldplicht (Europese Commissie), AVG art. 33, NCSC (aug 2026), AICPA Trust Services Criteria CC7.1 en CC9.2 (2017, aandachtspunten 2022) · oktober 2026.