Kort sagt: PHP2Shell er navnet på to kritiske sikkerhedssårbarheder i selve PHP, CVE-2026-109618 og CVE-2026-109619. Via dem kan angribere på sårbare webservere køre skadelig kode uden login. Afhjælpning giver kun opdateringen til en rettet PHP-version med efterfølgende genstart af alle PHP-processer.
Hvad er PHP2Shell?
PHP er det programmeringssprog, som en stor del af alle websites kører på: virksomhedssider med WordPress eller TYPO3, webshops med Shopware eller WooCommerce, interne portaler og egenudviklinger. Den 21. oktober 2026 offentliggjorde PHP-projektet sikkerhedsopdateringer til to sårbarheder, som er blevet kendt under navnet PHP2Shell.
Begge sårbarheder er vurderet til CVSS v4.0 9,2, altså som kritiske. Følgen er i begge tilfælde den samme: kørsel af skadelig kode på afstand, uden at angriberen skal logge ind. Fagfolk taler om »unauthenticated Remote Code Execution«. Den, der kan køre kode på serveren, kan i værste fald læse data, bygge bagdøre ind eller bruge serveren til yderligere angreb.
Vigtigt for forståelsen: Sårbarheden sidder ikke i et bestemt CMS eller plugin, men i PHP. En opdatering af WordPress, Shopware eller TYPO3 lukker den derfor ikke.
Hvorfor er sårbarheden så alvorlig?
Tre punkter gør PHP2Shell særligt kritisk set fra sikkerhedsmyndighedernes side:
- Bredde: Berørt er de gængse driftsformer for PHP, nemlig PHP-FPM, Apache med mod_php, php-cgi, FrankenPHP og LiteSpeed. Palo Alto Networks (Unit 42) talte mere end 22,6 millioner eksponerede, potentielt sårbare instanser.
- Intet login nødvendigt: Angriberen behøver hverken adgangskode eller brugerkonto.
- Tidligt tidspunkt: Ved Apache med mod_php er der ifølge PHP-teamet vist en exploit, før applikationskode overhovedet kører. Beskyttelsesfunktioner inde i websitet virker så ikke.
BSI (det tyske forbundsagentur for informationssikkerhed) har udsendt advarselsniveau 3 (orange). Det anbefaler en øjeblikkelig opdatering og, hvis det ikke straks er muligt, midlertidigt at tage de berørte webservere af nettet.
Hvilke servere er berørt af PHP2Shell?
Sårbarhederne er rettet i PHP 8.5.12, 8.4.27, 8.3.36 og 8.2.35. Ældre versioner i disse grene er berørt. For PHP 8.1 og ældre findes der ikke længere officielle opdateringer; ifølge fagpressen er næsten alle versioner helt tilbage til PHP 5.4 berørt. Det fulde overblik finder I på siden Hvilke PHP-versioner er berørt?.
En særlighed: Linux-distributioner og hostingudbydere indspiller nogle gange rettelserne som backport. Så viser f.eks. Plesk fortsat 8.2.34, selv om fejlen er rettet. Afgørende er pakkestatus og udbyderens bekræftelse. Hvordan I kontrollerer det, forklarer vi under Kontrollér PHP-version og rettelsesstatus korrekt.
Hvad er dokumenteret, og hvad er åbent?
Dokumenteret er de to CVE-numre, de rettede versioner og de midlertidige foranstaltninger, som php.net har offentliggjort. Den 23. oktober kom der en henvisning til endnu en sårbarhed, CVE-2026-115560, som kun virker ved en usædvanlig konfiguration.
Sandsynligt er, at angribere fortsat aktivt leder efter upatchede servere. Ifølge mediernes rapporter blev et første angrebsforsøg allerede observeret den 17. oktober, altså før rettelserne blev offentliggjort. Cloudflare meldte om angrebsforsøg og har udrullet beskyttelsesregler, men påpeger, at regler baseret på forespørgselsdata alene ikke er nok.
Åbent er, hvor mange servere der allerede er blevet angrebet med succes. Bekræftede vellykkede angreb i bredden var ifølge BSI først ikke kendt. Der findes ingen offentliggjorte, bekræftede Indicators of Compromise. Om en server var berørt, kan derfor kun vurderes gennem en adfærdsanalyse. Det tidsmæssige forløb sammenfatter kronologien fra 17. til 25. oktober.
Hvad virksomheder bør gøre nu
- Afklare, hvem der er ansvarlig: egen server, managed server eller hostingudbyder.
- Opdatere PHP til en rettet version eller en bekræftet backport.
- Genstarte alle PHP-processer. Nye filer alene er ikke nok, så længe gamle processer kører i hukommelsen.
- Sikre logs, og det fra og med 20. oktober. Fagpressen anbefaler at gemme disse data.
- Kontrollere for spor. En rettelse fjerner ikke skadelig software, der allerede er blevet indsmuglet, og beviser ikke, at der ikke skete noget før. Henvisninger hertil giver siden Er jeg allerede kompromitteret?.
En opdatering lukker døren, men rydder ikke op. Hvis jeres server var tilgængelig mellem den 17. oktober og rettelsen, er en kontrol for spor en pligt og ikke en ekstra.
Hvordan hjælper PHP SOS konkret?
Med PHP2Shell-akuthjælpen overtager vi de skridt, som mange virksomheder ikke kan dække internt med kort varsel:
- Opgørelse: Vi fastslår PHP-version, driftsform og pakkestatus for hver berørt server.
- Rettelse eller overgang: Vi indspiller opdateringen eller sætter, hvor det endnu ikke er muligt, de midlertidige foranstaltninger fra php.net og afklarer spørgsmålet om, hvorvidt serveren midlertidigt skal af nettet.
- Genstart og dokumentation: Vi genstarter alle PHP-processer og dokumenterer status før og efter.
- Sporkontrol: Vi sikrer logs fra og med 20. oktober og kontrollerer for uregelmæssigheder, indtil hændelsen er afsluttet og dokumenteret.
Ofte stillede spørgsmål
Er PHP2Shell en WordPress-sårbarhed?
Nej. Sårbarhederne sidder i PHP, altså i det programmeringssprog, som WordPress, Shopware, TYPO3 og mange andre systemer kører på. En opdatering af CMS'et lukker dem derfor ikke. Afgørende er PHP-status på serveren.
Skal jeg som hostingkunde selv gøre noget?
Ved shared hosting indspiller som regel hostingudbyderen PHP-opdateringen. I bør dog få skriftligt bekræftet, at den PHP-version, I bruger, er rettet og genstartet. Om der skete noget før rettelsen, besvarer opdateringen ikke.
Hvor kommer navnet PHP2Shell fra?
Navnet beskriver følgen: Via PHP kan en angriber i værste fald få en kommandolinje, altså en shell, på serveren. De officielle betegnelser er CVE-numrene CVE-2026-109618 og CVE-2026-109619.
Er mit website allerede blevet angrebet, hvis det blev taget offline?
Ikke nødvendigvis. Nogle udbydere har af forsigtighed taget websites af nettet, som BSI anbefaler, hvis en opdatering ikke er mulig med det samme. Det er en beskyttelsesforanstaltning og ikke et bevis på et angreb.