Secure

21. oktober: Nederlandene gik i sort. Hvad PHP2Shell lærer os

DigiD, MijnOverheid og mange andre tjenester blev lukket ned af forsigtighed. Intet bekræftet hack, men en klar lære: tiden mellem en sårbarhed og misbrug er næsten væk.

  • Patrick Petronilia
  • 26. oktober 2026
  • 7 min. læsning

Onsdag den 21. oktober gik store dele af Nederlandenes digitale verden i sort. DigiD, statens digitale ID, borgerportalen MijnOverheid, det nederlandske parlaments hjemmeside og selv det nationale cybersikkerhedscenters (NCSC) egen hjemmeside gik offline. NotuBiz, rådsinformationssystemet for over hundrede kommuner, provinser og vandmyndigheder, blev lukket ned. Bogholdere kunne ikke logge ind i Exact, og webshops som EasyToys og MyJewellery lukkede midlertidigt.

På det tidspunkt var der intet bekræftet hack. Disse organisationer lukkede deres tjenester ned af forsigtighed, fordi der endnu ikke var en patch.

Kort fortalt. PHP2Shell består af to kritiske sårbarheder i selve PHP, programmeringssproget bag blandt andet WordPress, Drupal og Magento. En angriber kan bruge dem til at overtage en server uden at logge ind. Patchen har været tilgængelig siden den 21. oktober. Men tiden mellem en sårbarhed og det første misbrug er næsten forsvundet, så det er ikke nok at patche. Undersøg også, om nogen allerede var inde, udskift følsomme oplysninger, og sørg for, at du kan købe tid næste gang.

Hvad der skete, forklaret enkelt

Den 21. oktober advarede NCSC om to kritiske sårbarheder i PHP: CVE-2026-109618 og CVE-2026-109619, samlet kaldet PHP2Shell. Fejlen sidder ikke i et plugin eller et tema, men i selve motoren. Derfor kan selv en simpel 'Hello World'-side være sårbar. Ifølge NCSC kan en enkelt forespørgsel uden login være nok til at køre kode på serveren. Alle versioner fra PHP 5 og frem er ramt.

Patchen kom samme eftermiddag omkring kl. 16.00 nederlandsk tid, en dag tidligere end planlagt. De opdaterede versioner er 8.2.35, 8.3.36, 8.4.27 og 8.5.12. PHP 8.1 og ældre får ingen almindelig opdatering (der er et skift til en understøttet version den eneste rigtige løsning).

Den egentlige historie: tiden til at patche er væk

Alvoren er én ting. Den egentlige historie er tempoet.

  • Misbrug før offentliggørelsen. Amazon så allerede den 17. oktober et angrebsforsøg mod en af sine honeypots. Det var fire dage, før patchen fandtes.
  • Tusinder, så millioner. Cloudflare talte tusindvis af forsøg i de ti timer før offentliggørelsen, titusindvis i de 45 minutter efter og efterhånden millioner.
  • En patch som skattekort. Patchede PHP-versioner lå online flere timer før det aftalte tidspunkt. For en angriber er det et skattekort: patchen viser præcis, hvor fejlen sad.
  • 81 minutter. Forskere hos ELLIO så en angriber gå fra første rekognoscering til en installeret web shell, en bagdør på serveren, på 81 minutter. Prøv at få en ændring godkendt på den tid.

Den 22. oktober meldte NCSC de første tegn på, at sårbarheden også var blevet udnyttet med succes.

Og AI sætter tempoet op på begge sider. Forskere hos Wiz fandt sårbarhederne ved hjælp af AI-modeller. De nederlandske cybersikkerhedseksperter Inge Bryan og Bert Hubert forventer, at AI oftere og i bølger vil afdække den slags sårbarheder. Det betyder også, at angribere, der ikke er superhackere, kan udnytte dem.

Det, der gjorde forskellen: at kunne købe tid

Den 21. oktober så man groft sagt tre situationer.

Mange organisationer kunne kun lukke ned. Det var det fornuftige valg, og NCSC anbefalede det også. Men det kostede timers service og omsætning. EasyToys var offline i omkring otte timer.

En anden gruppe havde et beskyttelseslag, der købte tid. WordPress-hostingudbyderen Heijsen holdt sine omkring 1.000 kunder online med ekstra firewallregler og en uploadgrænse, indtil patchen var der.

Den tredje gruppe havde intet valg. Kunder hos NotuBiz og Exact var afhængige af, hvad deres leverandør gjorde. En del af sikkerhedsenhederne på markedet viste sig desuden selv at bruge PHP. Der måtte kunden vente på en opdatering til netop den enhed, der skulle beskytte den.

Køb tid, indtil du selv har patchet

En patch, der findes, er endnu ikke en patch, der kører. Hos mange organisationer ligger der stadig test, en ændring og et servicevindue imellem. Og netop i den periode meldte NCSC de første tegn på vellykket misbrug.

Det er dér, et beskyttelseslag i netværket gør en forskel. Med AI-understøttet trusselsforskning udviklede Cato nye IPS-signaturer mod de kendte angrebsscenarier. Den 21. oktober gik de først live i silent mode, til validering. Fra den 22. oktober fulgte udrulningen i blokeringstilstand, og den 23. oktober var den ifølge Cato bekræftet i hele netværket.

Ærligt talt: selve den 21. oktober hjalp det endnu ikke. Den blokerende beskyttelse kom en dag efter patchen. Men patchen fandtes, selv om den ofte endnu ikke var installeret.

For kunder med IPS slået til virker signaturerne automatisk. Der skal ikke indstilles noget, og der skal ikke opdateres noget pr. server eller enhed. Selve Cato-platformen var ikke ramt; ifølge Cato bruger kernekomponenterne, herunder Sockets, ikke PHP.

Det her er en bro, ikke en løsning. Den køber tid, indtil du selv har patchet, for den trafik, der går gennem Cato.

Patrick PetroniliaPatrick Petronilia, Senior Solution Architect Netherlands

Det forbehold er vigtigt. IPS-beskyttelsen virker kun for trafik, som Cato inspicerer, og kun når IPS er slået til. Indgående trafik er også dækket, men Cato foretager ikke TLS-inspektion af indgående forbindelser. En offentlig hjemmeside, der er tilgængelig via HTTPS, falder derfor uden for disse signaturer. Dertil kræves en web application firewall (WAF). Og patching er nødvendig under alle omstændigheder.

Med patchen er du ikke i mål

Selv hvis du har patchet nu, er du ikke færdig:

  • Se tilbage. Undersøg, om angribere allerede var inde før patchen, mindst tilbage til den 17. oktober.
  • Udskift hemmeligheder. En af sårbarhederne kan blotlægge hukommelse fra andre forespørgsler. Udskift derfor adgangskoder, tokens og API-nøgler på servere, der var sårbare.
  • Hold øje med usædvanlig adfærd. En webserver, der pludselig starter en shell eller et netværksværktøj eller uventet forbinder sig udadtil, er et stærkt signal. Bloker udgående trafik fra servere som standard, og tillad kun det nødvendige.
  • Behold grænserne. Grænser for størrelsen på forespørgsler og uploads er stadig nyttige, også efter patchen.

Efternølerne

Ifølge en undersøgelse fra den nederlandske public service-kanal NOS kan omkring 145.000 nederlandske hjemmesider stadig være sårbare, selv om det ikke kan fastslås med sikkerhed udefra. Bert Hubert anslår, at 47 procent af de hjemmesider, der kører PHP, bruger en version, som ikke længere får support.

Og PHP 8.2 får ingen sikkerhedsopdateringer efter den 31. december 2026. Om godt to måneder kommer der altså endnu en version uden patches.

Det næste PHP2Shell er kun et spørgsmål om tid. Spørgsmålet er, hvor meget tid du så kan købe.

Patrick PetroniliaPatrick Petronilia, Senior Solution Architect Netherlands

Fem spørgsmål til din organisation

NIST Cybersecurity Framework er et godt spejl her. Fem af dets seks funktioner, anvendt på den 21. oktober:

  1. Identify. Ved du, hvor PHP kører, også hos dine SaaS-leverandører og i sikkerhedsenheder?
  2. Protect. Hvad beskytter dig mellem det øjeblik, en sårbarhed slipper ud, og det øjeblik, du patcher?
  3. Detect. Ville du opdage det, hvis en server pludselig begyndte at ringe hjem?
  4. Respond. Hvem beslutter at lukke ned, og på hvilket grundlag?
  5. Recover. Hvordan ved du, at det er sikkert at tænde igen?

Hvor Momentum står

Momentum er specialiseret implementeringspartner for Cato Networks i EMEA. Bruger du Cato via Momentum, kigger vi gerne sammen med dig på, om IPS er slået til, hvilken trafik Cato inspicerer, og hvor dine offentlige applikationer desuden har brug for en WAF. Står du ved begyndelsen, kortlægger vi sammen, hvor PHP kører i dit miljø, og hvor en bro kan købe dig tid næste gang.

En samtale er uforpligtende. Hellere nu i ro og mag end under den næste.

Kilder: NCSC, NOS, Binnenlands Bestuur, DutchBrief, Quote, The Register, The Next Web, CSO Online, ELLIO, Wiz, Qualys, EenVandaag, Help Net Security, PHP, Cato Networks.

FAQ

Spørgsmål vi ofte får

Hvad er PHP2Shell?

PHP2Shell er samlebetegnelsen for to kritiske sårbarheder i PHP, CVE-2026-109618 og CVE-2026-109619. De sidder i selve PHP, ikke i et plugin, og lader en angriber køre kode på en server uden at logge ind. Alle versioner fra PHP 5 og frem er sårbare.

Er jeg sikker, når jeg har patchet?

Ikke nødvendigvis. Der var misbrug før patchen. Undersøg, om angribere allerede var inde, mindst tilbage til den 17. oktober. Udskift adgangskoder, tokens og API-nøgler på sårbare servere, og hold øje med servere, der uventet forbinder sig udadtil.

Hvilke PHP-versioner er opdateret?

De opdaterede versioner er 8.2.35, 8.3.36, 8.4.27 og 8.5.12. PHP 8.1 og ældre får ingen almindelig opdatering; der er det nødvendigt at skifte til en understøttet version. PHP 8.2 får ingen sikkerhedsopdateringer efter den 31. december 2026.

Beskytter Cato mod PHP2Shell?

Cato har rullet IPS-signaturer ud mod de kendte angrebsscenarier, i blokeringstilstand siden den 22. oktober og bekræftet i hele netværket den 23. oktober. For kunder med IPS slået til virker de automatisk, også på indgående trafik, men ikke på krypteret indgående HTTPS-trafik. De erstatter ikke patching, og offentlige webapplikationer har desuden brug for en WAF.

Var selve Cato-platformen sårbar?

Nej. Ifølge Cato var produktionsmiljøet ikke ramt; kernekomponenterne, herunder Sockets, bruger ikke PHP.

Tal med os

Vil du vide, hvor du står efter PHP2Shell?

Vil du vide, hvor PHP kører i dit miljø, og hvordan du køber tid næste gang? Book et uforpligtende møde med en sikkerhedsspecialist hos Momentum.