Beveiligingslek in PHP: waarom we Schoolkassa uit voorzorg offline haalden

Op woensdag 21 oktober om half tien haalden we uit voorzorg Schoolkassa voor een groot deel van de dag offline. De aanleiding was een wereldwijde waarschuwing voor twee ernstige beveiligingslekken in PHP, de programmeertaal waarop Schoolkassa draait. Om 20.16 uur diezelfde avond stond Schoolkassa weer online. De grondige controles van onze ontwikkelaars gaven het beeld waar we op hoopten: er zijn geen verdachte signalen of aanwijzingen voor misbruik gevonden. Scholen hoeven dus zelf geen aanvullende actie te ondernemen.

Wat er speelde: een lek in de techniek eronder

PHP is een programmeertaal waarmee wereldwijd een groot deel van de websites en webapplicaties is gebouwd. Via de twee lekken kon een aanvaller op afstand eigen code laten uitvoeren op een server en zo mogelijk bij gegevens komen. De makers van PHP kondigden daarom een beveiligingsupdate aan. Maar tot die er was, moest iedere organisatie zelf bepalen wat verantwoord was. Ook wij stonden woensdagochtend voor die vraag.

Wat wij hebben gedaan: liever offline dan risico lopen

Lang hoefden we niet na te denken. Dinsdagavond kondigden de makers van PHP een beveiligingsupdate aan voor woensdagmiddag. Kort daarna ging een video rond die liet zien dat de lekken in de praktijk te misbruiken waren, en woensdagochtend probeerden wereldwijd al veel mensen een aanval na te bouwen.

Schoolkassa gaat over betalingen tussen scholen en ouders. Zolang we niet zeker wisten dat die gegevens veilig waren, woog de bescherming ervan zwaarder dan de beschikbaarheid.

Om half tien ging daarom Schoolkassa offline, nog voordat het Nationaal Cyber Security Centrum (NCSC) liet weten dat elk PHP-systeem dat vanaf internet bereikbaar is, vermoedelijk kwetsbaar was. Later die dag zetten we om dezelfde reden het beheersysteem van onze website parnassys.nl stil, omdat die ook op PHP draait. De voorkant van de website kon in de lucht blijven, waardoor we onze gebruikers goed konden blijven informeren.

Voor ParnasSys, Parro en de andere apps en +opties uit onze suite hoefden we die afweging niet te maken. Zij gebruiken geen PHP en liepen geen risico. Daarom bleven ze de hele dag gewoon beschikbaar.

In de uren daarna volgde de rest van Nederland. Nadat het NCSC erover communiceerde en systemen zoals DigiD en MijnOverheid offline gingen kreeg de kwetsbaarheid snel meer bekendheid en gingen steeds meer websites offline.

Van eerste melding tot herstel

Een lek als dit vraagt om snel schakelen en duidelijke communicatie. Hieronder zie je hoe de dag verliep: wat er gebeurde, en welke stappen wij zetten.

Dinsdag 20 oktober

  • 17:00 uur: Online gaan de eerste berichten rond over twee ernstige lekken in PHP.
  • 20:00 uur: De makers van PHP bevestigen de lekken en kondigen een beveiligingsupdate aan voor woensdag 16:00 uur.
  • 22:00 uur: Er gaat een video rond die laat zien dat de lekken te misbruiken zijn.

Woensdag 21 oktober

  • 09:30 uur: We halen Schoolkassa uit voorzorg offline.
  • 10:00 uur: Scholen zien een melding in Schoolkassa, in ParnasSys, op onze website en op onze statuspagina.
  • 11:10 uur: De NOS bericht over de lekken. In de uren daarna gaan steeds meer websites in Nederland uit voorzorg offline.
  • 13:00 uur: Ook overheidswebsites zoals DigiD en MijnOverheid gaan offline. Het NCSC laat weten dat elk PHP-systeem dat vanaf internet bereikbaar is, vermoedelijk kwetsbaar is.
  • 15:43 uur: PHP publiceert de beveiligingsupdate.
  • 19:00 uur: De bijgewerkte versie van Schoolkassa staat klaar en wordt getest.
  • 20:16 uur: Schoolkassa is weer online.

Voorbereid op het onverwachte

Een beveiligingslek in veelgebruikte techniek kan iedere softwareleverancier overkomen. Wat telt, is wat je doet op het moment dat het gebeurt. Bij ons staat dan één vraag voorop: zijn de gegevens van scholen, ouders en leerlingen veilig? Woensdagochtend konden wij dat voor Schoolkassa niet met zekerheid zeggen, en daarom was de keuze snel gemaakt. Ons team zat er vanaf het eerste bericht bovenop en hield alle scholen de hele dag op de hoogte.

Daarnaast is ParnasSys ISO 27001-gecertificeerd. Dat betekent dat wij informatiebeveiliging volgens vaste afspraken organiseren en dat een onafhankelijke partij daar regelmatig naar kijkt. Het helpt ons om in een situatie als deze rustig en zorgvuldig te handelen.

Hoe staat het er nu voor?

Op donderdag verschenen berichten over een nieuwe bug in PHP. Volgens de makers van PHP staat die los van de twee lekken van woensdag en is hij niet urgent. We volgen de ontwikkelingen en melden het op parnassys.nl/status als er iets verandert.

Veelgestelde vragen

Wat is er aan de hand met de programmeertaal PHP?

Op 21 oktober 2026 maakten de makers van PHP twee lekken bekend, ook wel PHP2Shell genoemd (CVE-2026-109618 en CVE-2026-109619). Via die lekken kon een aanvaller op afstand code uitvoeren op een server. Op 21 oktober om 15.43 uur verscheen de beveiligingsupdate. Een dag eerder waren al details over de lekken uitgelekt.