Een lek in PHP en sites gaan massaal uit voorzorg op zwart
Nieuwssites, overheidsdiensten en ziekenhuizen haalden woensdag uit voorzorg hun websites offline. Twee uitgelekte fouten in PHP, de programmeertaal onder het grootste deel van het web, maken het mogelijk een server op afstand over te nemen. De reparatie kwam iets voor 16.00 uur, en beide lekken bleken met AI gevonden.
Dit artikel is geschreven door AI.

Update: de reparatie is er, en AI vond de lekken
Bijgewerkt op woensdag 21 oktober, 20.30 uur.
PHP bracht de reparatie iets voor 16.00 uur uit, als versie 8.5.12, 8.4.27, 8.3.36 en 8.2.35. Voor de oudere versies 7.4, 8.0 en 8.1 maakte het beveiligingsteam minimale reparaties in de broncode, voor wie PHP zelf bouwt. Een officiële release komt er voor die versies niet. Daarna kwamen de eerste sites terug, zoals RTL en Tweakers, en om 18.11 uur MijnOverheid, meldt de NOS. Minister Van Weel van Justitie en Veiligheid zag nog geen signalen van actief misbruik. Ook in België, Frankrijk en Finland gingen overheidssites offline, waaronder alle Vlaamse overheidswebsites.
Beide lekken zijn met AI gevonden. Beveiligingsbedrijf Calif meldde het eerste op 11 augustus, schrijft de PHP Foundation, en OpenAI meldde dezelfde oorzaak op dezelfde dag. Calif gebruikte daarvoor GPT-5.6 Sol, een model van OpenAI, binnen een programma van dat bedrijf. Wiz, eigendom van Google, vond de lekken los daarvan, ook met AI. Een PHP-ontwikkelaar zag de eerste tekenen van het geheugenprobleem al in 2024. Dat een oplossing daarna maandenlang bleef liggen, noemt de PHP Foundation zelf “a structural failure”: het kleine beveiligingsteam werd het niet eens over de juiste aanpak.
Calif, een van de ontdekkers, publiceerde volgens Tweakers een dag te vroeg een video met aanvallen. Beveiligingsbedrijf Chainguard brak daarna het embargo door zijn updates zes uur voor de afgesproken release te publiceren.
Gebeurt dit vaker? OpenAI verwacht van wel, en schrijft dat het “similar findings” de komende maanden sterk ziet toenemen. Volgens metingen van W3Techs die Tweakers aanhaalt, draait bovendien minstens 37,7 procent van de sites met PHP een versie die niet meer wordt ondersteund.
Woensdagmiddag, voor de reparatie
“RTL.nl is tijdelijk niet bereikbaar, omdat we een dringende beveiligingsupdate uitvoeren”, stond er woensdag iets na 13.00 uur op de site van RTL, meldt de NOS. Wie de app opende, kreeg alleen een foutmelding. RTL Nieuws bleef wel nieuws brengen via sociale media, tv en een liveblog.
RTL stond niet alleen. Moederbedrijf DPG Media haalde uit voorzorg ook een aantal andere sites offline. “Ook een aantal van onze sites en apps draaien op PHP”, zei een woordvoerder tegen het ANP, blijkt uit het liveblog van het RD. Bij de DPG-kranten konden lezers geen abonnement afsluiten of beheren. Omroep Flevoland plaatste geen nieuwe artikelen en het ANP zette zelf systemen uit, schrijft de NOS. Ook Tweakers en Security.NL gingen uit de lucht, aldus beveiligingsbedrijf Sansec. De Telegraaf maakt voor zijn nieuwssites vrijwel geen gebruik van PHP, liet hoofdredacteur Kamran Ullah weten.
Intussen verdwenen bronnen waar redacties dagelijks op leunen. De sites van de Tweede Kamer, het NCSC, de Autoriteit Persoonsgegevens en een reeks politieke partijen waren onbereikbaar. Leverancier NotuBiz schakelde zichzelf uit. Daardoor was een commissievergadering in Groningen niet live te volgen en kon Gelderland zijn vergaderstukken niet tonen. MijnOverheid lag eruit; over DigiD spraken de berichten elkaar tegen. Beheerder Logius zei dat inloggen nog kon, de provincie Zuid-Holland meldde dat het niet te gebruiken was.
Wat PHP doet
PHP is de taal waarmee websites worden gebouwd die meer doen dan informatie tonen. Ze regelt het inloggen, voert betalingen uit en praat met databases, legt het NCSC uit. Ook WordPress draait erop. Circa 70 procent van alle websites gebruikt PHP of een variant daarop, meldt de NOS.
Wat een aanvaller ermee kan
De lekken vallen in een van de zwaarste categorieën: een aanvaller kan zijn eigen code op de server laten draaien. Het NCSC waarschuwt dat daar een eenvoudige handeling voor nodig is. “Organisaties die PHP gebruiken op hun webservers lopen een zeer hoog risico op volledige overname van het systeem door externe aanvallers”, schrijft het centrum. Peter Mosmans van Radically Open Security wijst op de stap daarna: “Afhankelijk van hoe deze servers verder intern verbonden zijn, kunnen aanvallers bijvoorbeeld proberen om verder een bedrijfsnetwerk op te komen.”
Het PHP-beveiligingsteam gaf beide fouten een score van 9,2 op 10. Ze treffen elke server met PHP 5.4 of later. De informatie lag onder embargo, maar lekte op 20 oktober uit. Daarbij zat een screenshot van een aanvalsprogramma genaamd PHP2Shell, toegeschreven aan Calif.IO. Het ziekenhuis Bravis noemde die naam letterlijk in zijn storingsmelding. Welk onderdeel van PHP precies kwetsbaar is, zou PHP pas bij de reparatie bekendmaken.
Waarom repareren nog niet kon
De officiële oplossing stond gepland voor woensdag 21 oktober om 16.00 uur. Tot dan was er niets te installeren. De site zelf aanpassen hielp ook niet, want het lek zit in PHP op de server. Zelfs de onderhoudspagina van WordPress beschermt niet, omdat PHP elk verzoek al verwerkt voordat die pagina verschijnt. PHP-ontwikkelaar Gina Peter Banyard noemde een server een dag offline halen de verstandigste keuze. Het NCSC adviseerde per systeem af te wegen of uitschakelen nodig was.
Geen misbruik gezien, wel de eerste aanvallen
Het NCSC had woensdag nog geen actief misbruik gezien, en de PHP Foundation evenmin. Toch meldde Cloudflare, dat voor veel grote sites als firewall dient, om 9.43 uur Nederlandse tijd de eerste aanvallen. Het bedrijf zette voor al zijn klanten filterregels in, ook op het gratis abonnement. Technisch directeur Dane Knecht noemt die regels zelf een noodoplossing, en volgens de NOS zijn ze niet waterdicht.
Ethisch hacker Wouter van Dongen verbaasde het niet dat Cloudflare al aanvallen zag: “Hier gaan hackersgroepen vol op inzetten.” Sansec, dat zelf beveiligingssoftware verkoopt, verwachtte grootschalige aanvallen binnen een kwartier nadat de reparatie verschijnt.
Het NCSC adviseert de updates direct te installeren zodra ze verschijnen. Niet elke beheerder kan dat meteen. Veel servers met Red Hat Linux halen PHP uit Remi’s repository, een pakketbron die door vrijwilligers wordt beheerd. Die krijgt de reparatie volgens Sansec op 21 oktober niet. Wie nog op PHP 8.1 of ouder draait, krijgt geen officiële release: PHP ondersteunt alleen versie 8.2 en later. Die beheerders moeten hun provider vragen de oplossing alsnog in te bouwen, of overstappen.


