De ene na de andere belangrijke website ging offline na de ontdekking van een kwetsbaarheid in de internetcode PHP. De Nederlandse informaticus Derick Rethans, een van de vijftien leden van het PHP-kernteam, vertelt hoe hij de afgelopen dagen beleefde. ‘Normaal gesproken ziet bijna niemand ons werk.’
is techredacteur van de Volkskrant. Hij schrijft onder meer over digitale autonomie, sociale media en games.
De ene na de andere belangrijke website ging offline na de ontdekking van een kwetsbaarheid in de internetcode PHP. De Nederlandse informaticus Derick Rethans, een van de vijftien leden van het PHP-kernteam, vertelt hoe hij de afgelopen dagen beleefde. ‘Normaal gesproken ziet bijna niemand ons werk.’
is techredacteur van de Volkskrant. Hij schrijft onder meer over digitale autonomie, sociale media en games.
Een spoedcursus in mediatraining, zo omschrijft de Nederlandse PHP-ontwikkelaar Derick Rethans (47) zijn afgelopen week. Net als zijn collega’s gaf hij interviews aan kranten, persbureaus, tv-zenders en youtubers. ‘Op live-tv moet je korte antwoorden geven, dat heb ik wel geleerd’, zegt hij.
Zelf spreekt hij van een ‘mediastorm’: ‘Dat is wel even wat anders voor ons. Normaal gesproken ziet bijna niemand ons werk. Nu stond het plotseling overal in de schijnwerpers, in Europa en daarbuiten.’
PHP is een opensourceproject: de code is openbaar beschikbaar en iedereen kan in principe bijdragen. Hoewel honderden programmeurs dat doen, heeft de PHP Foundation, een non-profitorganisatie, slechts vijftien leden, onder wie Rethans. Zij beheren de PHP-code en evalueren suggesties van anderen. Het project is gedecentraliseerd: net als zijn collega’s van de PHP Foundation werkt Rethans thuis. De ‘crisis’, als je het zo kunt noemen, maakte hij mee vanuit zijn thuiskantoor in Londen.
Alle media-aandacht zag Rethans niet aankomen: ‘Elke software bevat fouten, dus we vonden het wel vreemd dat het zoveel in het nieuws was.’ Hoewel, voegt hij direct toe: ‘Misschien komt het doordat PHP zo’n groot marktaandeel heeft.’
Dat lijkt aannemelijk: zo’n 70 procent van het hele web maakt gebruik van PHP, een code die informatie tussen servers en websites verscheept. De weeffout die vorige week aan het licht kwam gaf kwaadwillenden de gelegenheid om zich nagenoeg volledige toegang tot PHP-websites te verschaffen. Die dreiging bestaat nog steeds voor websites die verzuimen de update te installeren die het PHP-project afgelopen woensdagmiddag beschikbaar stelde.
De stichting werkte al langer aan het probleem, en had ook een oplossing klaarstaan. Maar een van de betrokken partijen, beveiligingsbedrijf Chainguard, trad uit angst voor misbruik vroegtijdig en geheel zelfstandig naar buiten met het nieuws. Daardoor was opeens voor iedereen duidelijk dat er een fundamenteel probleem was, nog voordat de oplossing online stond. Vandaar dat onder meer DigiD, MijnOverheid, de Tweede Kamer, het computernetwerk van het hoger onderwijs en verschillende nieuwsmedia offline gingen.
Waar was u toen het misging?
‘Thuis, ik was net terug van vakantie. We hadden organisaties al laten weten dat er een belangrijke update aan zat te komen. Maar net nadat ik thuis was gekomen, hoorde ik dat een van die organisaties de kwetsbaarheid al had bekendgemaakt. Dat leidde tot de tijdsdruk waardoor al die websites uit voorzorg offline gingen. We hebben toen besloten om de patch (de veiligheidsupdate, red.) een dag te vervroegen, maar konden niet nóg eerder publiceren. En de organisaties waar wij mee samenwerken hadden natuurlijk ook tijd nodig om de patch te installeren voor hun klanten.’
Woensdag om 15.45 uur ging de update online. Hoe zag die dag er voor u uit?
‘In de ochtend hadden we online een vergadering. Ik nam de verantwoordelijkheid voor de website waarop de update zou komen te staan. We hadden al een kort bericht gepubliceerd om mensen op te roepen de update direct te downloaden zodra die beschikbaar kwam. Mijn taak: ervoor zorgen dat die site de verwachte piek aan verkeer zou aankunnen.
‘Ik kon me de rest van de dag op die taak richten. Dat gaf me stress, maar geen paniek. Daar schiet je niets mee op. Van paniek ga je alleen maar fouten maken. Je moet je ook voorstellen: voor de mensen uit ons team die aan de update hadden gewerkt, was er niet veel werk meer. Zij richtten zich gewoon op de volgende rapporteringen van securityproblemen.’
De PHP Foundation wist al sinds 2024 van het probleem. Waarom wachten tot 2026 om een oplossing door te voeren?
‘Ja, in 2024 wisten we dat er kwetsbaarheden waren. We ontwikkelden toen ook al verschillende oplossingen, maar je moet begrijpen dat die allemaal voor- en nadelen hebben. Bovendien moet je voor elk stukje PHP-code testen of een beoogde oplossing geen onbedoelde bijwerkingen heeft. We zijn een klein team met veel verantwoordelijkheden, en oordeelden dat de kwetsbaarheden niet makkelijk konden worden misbruikt. Daarom was het voor ons minder urgent om al die oplossingen te testen.
‘Dat veranderde toen OpenAI een initiatief organiseerde voor bedrijven om kwetsbaarheden in kritieke software te vinden, Patch the Planet. Wij wisten PHP in de poule van software te krijgen die zou worden bekeken. Met behulp van AI-tools toonden deelnemers van Patch the Planet aan dat misbruik van die kwetsbaarheden uit 2024 wél mogelijk was.
‘Met hun middelen slaagden ze er bovendien in om onze oplossingen te testen. Ik kan zien dat die tests zijn gegenereerd met behulp van AI. Maar de uiteindelijke update, die van afgelopen woensdag, bestaat voor 95 procent uit code die wij hebben geschreven.’
Maar dan heeft PHP in dit geval wel veel te danken aan AI, toch?
‘AI is goed in het vinden van kwetsbaarheden in code en het uitvoeren van tests. Dat was hierin de inbreng van AI. Maar de oplossing zelf kwam van ons. Ik vind het belangrijk om te zeggen dat mensen hartstikke goed zijn in softwareontwikkeling: wij weten hoe PHP in z’n geheel werkt, en kunnen daarom gezamenlijk best snel oplossingen vinden voor problemen.
‘AI-modellen, daarentegen, geven in mijn ervaring vaak incomplete oplossingen. In een van mijn eigen stukken PHP-code, bijvoorbeeld, vond het securityteam onlangs ook problemen, waarvan één in drie verschillende situaties naar boven kon komen. Het AI-model dat het securityteam gebruikte kwam met een oplossing voor maar een van die situaties.
‘Ik zie dat steeds meer werkgevers hun ontwikkelaars aansporen zoveel mogelijk AI te gebruiken. Stel je voor dat iemand dat bij mijn code had gedaan: die krijgt te horen dat er inderdaad een probleem is, en krijgt ook gelijk een oplossing. En snel ook. Maar voert hij het dan door, zijn er nog twee onopgeloste situaties. Het antwoord van AI is misschien overtuigend en snel, maar snel is niet altijd goed.’
U zegt dat jullie een klein team zijn. Wat bedoelt u precies?
‘Alleen de directeur, Elizabeth Barron, werkt fulltime bij de stichting. Voor de rest zijn we bijna allemaal parttimers. Ik werk weliswaar fulltime aan PHP, maar ook ‘voor mezelf’: ik maak sinds 2002 PHP’s debugger (een programma dat aangeeft wanneer een stuk nieuwe code niet werkt, red.) waarmee andere ontwikkelaars hun werk doen, en ontvang daarvoor een klein beetje sponsoring.
‘Sommige teamleden ken ik al jaren, anderen ken ik eigenlijk niet. De collega’s uit India en Japan heb ik bijvoorbeeld nooit ontmoet.’
Hoe bent u betrokken geraakt bij PHP?
‘Ik kom oorspronkelijk uit Dieren, een dorp bij Arnhem, en studeerde informatica aan de hogeschool van Arnhem en Nijmegen. Met een aantal klasgenoten maakte ik websites met PHP. Op een gegeven moment hadden we behoefte aan nieuwe functies, en hadden we een paar fouten in de codetaal gevonden. Omdat PHP open source is, konden we onze tips en verlangens gewoon delen met de rest van de PHP-gemeenschap. Dat sociale aspect van PHP is altijd heel belangrijk voor me geweest.
‘Ik ging spreken op PHP-conferenties en werkte van 2004 tot 2009 aan PHP als medewerker van een bedrijf in Noorwegen. Dat was leuk, ik woonde er graag, maar er was niet heel veel te doen. Ik wilde in een grotere stad wonen, en kende van conferenties gelukkig wat mensen in Londen. Met hen heb ik zo’n drie jaar samengewoond, in een echt PHP-huis, met hier en daar een feestje. Het zijn nog steeds goede vrienden, maar als veertigers is dat van die feestjes wel wat gematigd.
‘Uiteindelijk wilden we het hele PHP-project beter organiseren, en was ik betrokken bij de oprichting van de PHP Foundation. Mijn taak werd om alle servers, websites en toegangsrechten van allemaal verschillende personen en bedrijven onder één paraplu te brengen. Dat duurde ruim een jaar.’
Uw inkomen komt via sponsoring en de PHP Foundation, die weer afhankelijk is van donaties. Dat klinkt als een onzekere inkomstenbron.
‘Veel bedrijven gebruiken opensourceprojecten zoals PHP. Die zijn gratis te gebruiken, ze kosten de bedrijven niets. Maar ze leunen daarbij op ontwikkelaars zoals ik, of anderen die hun opensourcewerk in de avonden doen. Als zo’n bedrijf met honderden miljoenen op zak opensourcesoftware gebruikt die is gemaakt door vrijwilligers zonder iets terug te geven, vind ik dat eigenlijk een vorm van uitbuiting.’
‘De PHP Foundation krijgt donaties, maar slechts van een klein deel van de bedrijven die onze code gebruiken. Ik denk dat de meeste bedrijven niet eens beseffen hoe afhankelijk ze zijn van opensourcesoftware. Onze hoop is dat alle media-aandacht voor het lek van vorige week daar iets aan verandert.’
Critici van opensourceprojecten wijzen op kwetsbaarheden, zeker wanneer het kritieke software betreft. Wat is het risico dat bijvoorbeeld een inlichtingendienst een opensourceproject infiltreert en kwetsbaarheden invoegt?
‘Voor kleinere projecten is dit een risico. Sterker nog, in 2024 wist ene ‘Jia Tan’ – we weten nog steeds niet wie dit was – de solobeheerder van het opensourceproject XZ Utils te overtuigen het project te overhandigen. Daarna ontdekte een medewerker van Microsoft dat er een kwetsbaarheid in XZ was geprogrammeerd dat een nog veel groter probleem had kunnen zijn dan het PHP-lek. Dankzij de oplettendheid van één persoon is het daar nooit van gekomen. Wat mij betreft is dit geen argument tegen open source, maar juist nog een reden om de kleine ontwikkelteams beter te ondersteunen.
‘Dit had ook kunnen gebeuren in gesloten software, en dan had het probleem nooit van buitenaf kunnen worden opgelost. Bovendien is deze dreiging voor PHP niet aannemelijk: je krijgt alleen stemrecht om invloed te hebben op de toekomst van de taal als je lang bekend bent in de gemeenschap. En zelfs als je dat weet te omzeilen, blijft de code open en kan iedereen meekijken of alles wel goed gaat.’
Hoe veilig is het internet nu, na vorige week?
‘Voor zover ik kan zien, downloaden te weinig partijen onze PHP-update. Tegelijkertijd zien we wel dat cybercriminelen de kwetsbaarheid proberen uit te buiten. Wij zien daarentegen nog geen bewijs van geslaagde hacks.
‘Het lijkt erop dat de kwetsbaarheid heel moeilijk is te misbruiken, zoals we in 2024 ook dachten. Maar ‘niet makkelijk’ betekent niet ‘onmogelijk’. Ik hoop daarom echt dat iedereen snel de update installeert. Dat doe jij toch ook, als Windows je vraagt te updaten?’
Luister hieronder naar onze podcast de Volkskrant Elke Dag. Kijk voor al onze podcasts op volkskrant.nl/podcasts.
Geselecteerd door de redactie
Source: Volkskrant