Kritieke bugs in software zijn, helaas, niets nieuws. Maar het is wel zeldzaam dat allemaal websites, waaronder Tweakers, offline gaan tot er een patch is. Hoe kon het zo misgaan? Een tijdlijn van de gebeurtenissen die wij tot nu toe weten, met een dubieuze rol voor een beveiligingsbedrijf dat de patch onder embargo al had.
10 april 2025: er is een lek, maar …
De PHP Foundation bericht over de eerste externe audit in jaren. Wat er niet bij staat: iemand heeft melding gemaakt van een out-of-memorylek, een van de lekken die de afgelopen dagen zo'n grote rol speelde. Toch kon niemand toen een proof-of-concept maken van een exploit. Er was geen manier om misbruik te maken van het lek en een fix zou voor problemen zorgen met onder meer compatibiliteit en mogelijk nieuwe aanvallen. Het team besloot het daarom te laten liggen. De bug was sinds 2019 min of meer bekend.
30 juli 2026: Patch the Planet
Als onderdeel van een project om beveiliging bij PHP te professionaliseren beginnen diverse mensen bij de stichting te werken. PHP doet mee aan Patch The Planet van OpenAI. Dat is een project om onder meer AI-budget te krijgen voor het opsporen en patchen van kwetsbaarheden bij opensourceprojecten.
5 augustus 2026: het begin van vele meldingen, met dank aan AI
Ryan A van beveiligingsbedrijf Calif vindt de eerste van de twee kritieke kwetsbaarheden in PHP. Het verschil? Calif heeft een manier gevonden om op afstand code uit te voeren met de bug. Het bedrijf was op dat moment ook bezig met een exploit van WordPress. Calif gebruikt OpenAI Codex met GPT 5.6-Sol voor dat werk. Zonder AI had een exploit veel langer geduurd, claimt Calif en dat klopt natuurlijk. Het principe van het lek was immers al lang bekend.
d935be023a55b04681eccd1d2b8385b4b295e141a5df108e5e979d8d5d7124ac
— LCFR (@lcfr_hax) 5 augustus 2026
11 augustus 2026: een tweede melding
OpenAI rapporteert dezelfde bug bij de PHP Foundation. Het is onbekend hoe de bevindingen van het AI-bedrijf verschillen van die van Calif.
19 augustus 2026: een derde bedrijf vindt een exploit
Een ander beveiligingsbedrijf, Wiz, vindt het lek ook, met hulp van OpenAI GPT 5.6-Sol en Gemini 4 Argon van Google. De rapportage volgt, na verificatie van werkende exploits op onder meer WordPress en Drupal, vijf dagen later.
Alle betrokkenen doen aan responsible disclosure: een kwetsbaarheid melden, tijd geven om lekken te dichten en vervolgens op een afgesproken datum en tijd de informatie en de patch naar buiten brengen. Bij PHP zagen ontwikkelaars in hoe ernstig de bugs waren en naar eigen zeggen werkten ze vervolgens dag en nacht en in de weekenden door om de patch op tijd klaar te krijgen. De beveiligingsbedrijven maken zich op voor publicatie.
18 september 2026: een plan voor responsible disclosure
OpenAI meldt nog meer manieren om de lekken te misbruiken. Dat verandert niets fundamenteels aan het plan, maar het laat wel zien hoe ernstig de lekken waren. Er komt een plan voor publicatie. Omdat PHP de release wil coördineren met alle bedrijven die de patches ook moeten aanbieden, als onderdeel van bijvoorbeeld Linux-distro's, komt er een datum en tijd: donderdag 22 oktober, 16.00 uur Nederlandse tijd. Alle betrokkenen werken daarnaartoe.
20 oktober 2026, 15.00 uur: een lek zonder details
Op dinsdagmiddag rond vijf uur begonnen de twee CVE-codes (Common Vulnerabilities and Exposures) online te circuleren, specifiek via een post op Hacker News. Er waren weinig details bekend, maar de post vermeldde dat de kwetsbaarheden een CVSS-score kregen van 10/10. De kwetsbaarheden hebben in werkelijkheid een score van 9.2. Die score hangt af van de impact van een lek, hoe makkelijk het te exploiteren is en hoe groot de gevolgen van een exploit zijn.
Vervolgens bevestigde Watchtowr de informatie. "Neem dit serieus", vermeldt de post nog. De PHP Foundation nam het bericht in elk geval héél serieus en ondernam actie. De post op HN van 'petecooper' had dus grote gevolgen, waarvoor degene achter het account al sorry heeft gezegd. Die zou niets geweten hebben van het embargo.
20 oktober, 20.00 uur: alvast een waarschuwing
Door de berichten besluit de PHP Foundation twee dingen. Ten eerste doet de organisatie een vooraankondiging om te voorkomen dat er meer onjuiste informatie circuleert. Ten tweede vervroegt PHP Foundation de release van de patch met een dag. Dat gebeurt nu op 21 oktober om 16.00 uur Nederlandse tijd. Eerder kan niet vanwege de afstemming met allerlei partijen.
En dan gaat het mis: Calif, het bedrijf dat de exploit in augustus als eerste vond, zette na de vooraankondiging een video online over de lekken. Die video ging al snel weer offline, maar sommige mensen hadden hem al opgeslagen en hij begon de ronde te doen. De video bevat genoeg gegevens om te achterhalen waar de lekken ongeveer zitten, al ontbreken details nog steeds.
21 oktober, 9.41 uur
Het nieuws is naar buiten gekomen. Veel mensen blijken te proberen een exploit te maken op basis van de informatie. Beveiligingsbedrijf Chainguard, dat images maakt van PHP-releases, zet de patch ruim zes uur vóór het afgesproken embargo online.
Dat is een zegen voor klanten van Chainguard, die alvast kunnen patchen, en een ramp voor vrijwel alle andere mensen op het internet. De PHP Foundation is duidelijk 'not amused'. "Chainguard heeft eenzijdig het embargo geschonden en gecompileerde images gepubliceerd die de oplossing bevatten. Net als andere distributeurs had Chainguard de patch vooraf ontvangen, zodat hun gebruikers direct konden updaten zodra de kwetsbaarheden openbaar werden gemaakt. Een aanvaller kon de oplossing nu in binaire vorm bestuderen, terwijl alle andere PHP-gebruikers nog op de officiële release wachtten. Hiermee werden weken aan werk van vele partijen, gericht op een gecoördineerde openbaarmaking, volledig genegeerd."
Op fora zijn er in de tijd na het openbaar maken van de patch ineens veel meer gegevens over de lekken beschikbaar. Het is onduidelijk of er werkende exploits in het wild zijn, maar het is duidelijk dat veel sites grote risico's lopen totdat de patch uitkomt.
21 oktober, 12.00 uur
Bedrijven en organisaties kunnen kiezen: online blijven en risico lopen dat data de volgende dag op straat ligt, of uit voorzorg offline gaan. Steeds meer overheden, organisaties en bedrijven kiezen ervoor om uit voorzorg offline te gaan. Systeembeheerders kunnen configuraties wijzigen om de gevolgen van de lekken te beperken, maar er is veel onbekend. In Nederland gaat het onder meer om een groot aantal sites. Tweakers gaat offline om 12.22 uur.
21 oktober, 15.45 uur: de patch komt
De patch komt uit. Vanwege de coördinatie is het niet alleen een patch voor PHP, maar ook voor softwarepakketten en besturingssystemen met PHP erin. Tweakers is binnen een paar minuten weer live. Bij andere sites duurt het langer. De patch verhelpt het probleem voor sites en diensten die vrij recente PHP-versies gebruiken. Voor de talloze sites met PHP 8.1 en lager was er niet onmiddellijk een patch. Een backport is vermoedelijk wel mogelijk met de info die online staat over PHP 7.4, 8.0 en 8.1. Ook zijn er al backports gemaakt door derden.
22 oktober: de lekken ijlen na
Zoals altijd volgt op groot nieuws kleiner, afgeleid nieuws. Er is een derde bug gevonden, maar die is niet kritiek. QNAP moet gebruikers adviseren om een van buitenaf bereikbare nas offline te halen. Veel sites zijn op donderdag nog offline en komen vermoedelijk in de loop van de dag of vrijdag pas weer online. Wellicht dat het op sommige plekken nog langer gaat duren.
Nu: is dit de toekomst?
Met het verschijnen van de patch rijzen ook vragen. Dit is een van de eerste incidenten waarbij de komst van AI verschil maakt. Hoewel de responsible disclosure fout ging door menselijk toedoen, namelijk het te vroeg online zetten van een video en het publiceren van een patch die nog onder embargo stond, speelde AI een grote rol in de afwegingen van systeembeheerders.
Om onze eigen systeembeheerder Kees Hoekzema te citeren: "Het grote probleem is dat er vroeger misschien tien mensen waren die binnen een paar uur een werkende exploit konden maken op basis van een patch. Tegenwoordig, met AI, zijn dat er veel meer. En zelfs met de relatief spaarzame informatie die naar buiten was gekomen konden diverse mensen de bug al reproduceren. Een paar jaar geleden was het niet bij mij opgekomen om offline te gaan voor een patch die een paar uur later beschikbaar zou zijn. De kans dat iemand in de tussentijd een werkende exploit zou maken en dat die persoon ons zou targetten was zo klein dat je het niet eens zou overwegen. Maar nu is dat risico veel groter geworden. Dan weet ik dat er in no time ineens mensen in onze servers zitten."
OpenAI lijkt te zeggen dat het de komende tijd meer lekken zal publiceren. "Hoe ernstig ook, deze fouten zijn slechts enkele van de aanzienlijke kwetsbaarheden die we al hebben gevonden en proberen te verhelpen. We verwachten de komende maanden een sterke toename van soortgelijke vondsten. Op basis van onze ervaringen tot nu toe stellen we een aanpak voor die past bij het AI-tijdperk, om te reageren op kritieke kwetsbaarheden in veelgebruikte software."
OpenAI heeft ook een commercieel belang daarbij. AI vindt allerlei kwetsbaarheden, hoe kun je je verdedigen? Met AI natuurlijk. Die AI kun je als abonnementen of via de api afnemen bij OpenAI. Dat neemt niet weg dat de kwetsbaarheden en exploits die met hulp van AI worden gevonden wel echt zijn.
Toch gaat het niet altijd zo fout als nu. Een video te vroeg online zetten kan iedereen overkomen. Welbewust een embargo breken en een patch alvast online zetten is wel een kwalijke praktijk en zal binnen de beveiligingswereld slecht zijn gevallen. Ernstige lekken met grote gevolgen zijn al erg genoeg. Het hoeft allemaal niet nóg spannender. Laten we vooral hopen dat alle sites, apps en diensten niet vaker bewust offline moeten gaan in afwachting van een patch.
:strip_exif()/i/2008469762.jpeg?f=imagenormal)
:strip_exif()/i/2008469760.jpeg?f=imagenormal)
:strip_exif()/i/2008469754.jpeg?f=imagenormal)

:strip_exif()/i/2008469776.jpeg?f=imagenormal)
:strip_exif()/i/2008468262.jpeg?f=imagenormal)

/i/2008468256.png?f=imagenormal)
:strip_icc():strip_exif()/u/43939/slotje.jpg?f=community)
/u/8/oog3.png?f=community)
:strip_icc():strip_exif()/u/132250/d1ca484677dbb1382705e67689809639.jpeg?f=community)
/u/94596/crop6ac4baab4c648_cropped.png?f=community)
/u/269377/arnoud8bit.png?f=community)
:strip_icc():strip_exif()/u/26552/1.jpg?f=community)
:strip_exif()/u/53522/crop583d477015a24.gif?f=community)
/u/271228/crop66d5c43884a5a_cropped.png?f=community)
/u/263454/crop69528a83920d8.png?f=community)
:strip_icc():strip_exif()/u/40584/Sandra4ver.jpg?f=community)