Woensdag gingen in Nederland tientallen websites tegelijk op slot, van de Tweede Kamer tot MijnOverheid en DigiD. De oorzaak zat niet in WordPress of een plugin, maar in PHP, de programmeertaal waar het grootste deel van de bedrijfswebsites en webshops op draait. Twee lekken maakten het mogelijk om een webserver over te nemen zonder in te loggen. Inmiddels zijn de reparaties er en hebben de grote hosters ze in de nacht naar donderdag geïnstalleerd. Toch is je site daarmee niet automatisch veilig, en daar zit voor jou als ondernemer nog wat werk.
Wat er precies lek was
Het gaat om twee kwetsbaarheden met de nummers CVE-2026-109618 en CVE-2026-109619, die allebei een score van 9,2 op 10 kregen. Een aanvaller kan met één bewerkt verzoek aan je website eigen code op de server laten draaien, nog voordat je CMS of webshopsoftware zelf iets doet. De details lekten dinsdag uit voordat er een oplossing was, en woensdagochtend zag Cloudflare de eerste aanvallen. Woensdagmiddag bracht het PHP-project de herstelde versies 8.2.35, 8.3.36, 8.4.27 en 8.5.12 uit.
Volgens het Nationaal Cyber Security Centrum is elk systeem met PHP dat vanaf het internet bereikbaar is vermoedelijk kwetsbaar zolang die update er niet op staat. Dat geldt net zo goed voor de site van een kapsalon als voor die van de Tweede Kamer. Een update van WordPress, WooCommerce of je plugins lost niets op. De reparatie moet op de server zelf gebeuren.
Wat de grote hosters al hebben gedaan
Zit je bij een gewone hostingpartij met gedeelde of beheerde hosting, dan werkt die partij PHP voor je bij. De meeste deden dat binnen een nacht, zo blijkt uit hun statusmeldingen en een overzicht van De Zaak.
| Hoster | Wat er is gedaan | Gemeld op |
|---|---|---|
| Combell | Gedeelde hosting met PHP 5.6 tot en met 8.5 volledig bijgewerkt, het cloudnetwerk op enkele uitzonderingen na | woensdag 21 oktober, 20.46 uur |
| Hostnet | Alle systemen bijgewerkt, ook oudere PHP-versies via PHP Extended Support, de tijdelijke noodmaatregelen daarna teruggedraaid | donderdag 22 oktober, 0.09 uur |
| Vimexx | PHP op alle beheerde servers bijgewerkt, een eigen niet-beheerde server moet je zelf doen | donderdag 22 oktober, 4.15 uur |
| Antagonist | Vooraf een noodmaatregel op alle servers, daarna alle PHP-versies bijgewerkt, de voortgangsbalk bij uploads is tijdelijk weg | na de release van woensdag |
Staat je site bij een andere partij, kijk dan op de statuspagina of stuur een korte mail met de vraag of beide CVE-nummers op jouw pakket zijn gedicht. Een hoster die dat niet binnen een dag kan bevestigen, zou ik eerlijk gezegd niet nog een jaar vooruit betalen.
Wanneer je zelf aan de slag moet
Er zijn drie situaties waarin je niet op je hoster kunt leunen. De eerste is een eigen VPS of server, bijvoorbeeld een webshop die je ontwikkelaar ooit op een losse server heeft gezet. Daar installeert niemand iets vanzelf. Vraag je ontwikkelaar om de PHP-pakketten bij te werken en daarna PHP en de webserver te herstarten. Een update die op de schijf staat doet niets zolang de oude processen blijven draaien.
De tweede is een site op een oude PHP-versie. PHP 8.1 en ouder krijgen van het PHP-project zelf geen officiële update meer. Er bestaan wel noodreparaties voor 7.4, 8.0 en 8.1, en sommige hosters bouwen die in, maar dat is uitstel. Je ziet je versie in WordPress onder Gereedschap en dan Sitediagnose, op het tabblad Info bij Server. Staat daar iets onder 8.2, plan dan nu de overstap met je websitebouwer en maak eerst een back-up. Versie 8.2 krijgt eind dit jaar zijn laatste beveiligingsupdates, dus kies als het even kan meteen voor 8.3 of hoger.
De derde is software die je niet als website ziet, maar die wel op PHP draait. Denk aan een klantportaal, een boekingsmodule, een webmailomgeving zoals Roundcube of de beheerpagina van een netwerkapparaat. Het NCSC noemt die categorie apart. Vraag de leverancier wanneer zijn update komt, en vraag het schriftelijk.
Bijgewerkt is nog niet hetzelfde als schoon
Dit punt blijft in de meeste berichten onderbelicht. Amazon zag in zijn lokservers al op zaterdag 17 oktober een aanvalspoging, vier dagen voordat het lek openbaar was. Het NCSC heeft op Nederlandse domeinen nog geen misbruik gezien, maar een update draait een eerdere inbraak niet terug. Een aanvaller die er al in zat, kan een achterdeur hebben achtergelaten die na de update gewoon blijft werken.
Vraag je hoster of bouwer daarom om twee dingen na te lopen, nieuwe of gewijzigde bestanden in de webmap sinds 17 oktober en onbekende beheerdersaccounts in je CMS. Bij twijfel wijzig je de wachtwoorden van je beheeraccounts en de sleutels van koppelingen met je betaalprovider of boekhoudpakket. Blijkt dat er klantgegevens zijn ingezien, dan meld je dat binnen 72 uur bij de Autoriteit Persoonsgegevens. Wat je verder meldt en bij wie, staat in het stuk over de meldplicht onder de nieuwe cyberwet.
Heb je een cyberverzekering, meld een vermoedelijke inbraak dan ook direct bij je verzekeraar, want de meeste polissen vragen dat je snel bent. En wees de komende weken extra kritisch op mails die zogenaamd van je hoster komen en over dit lek gaan. Oplichters weten ook dat iedereen het nu over PHP heeft. Log alleen in via je eigen bladwijzer, nooit via een link in een mail.
