Sikkerhed · PHP
PHP2Shell (CVE-2026-109618 og CVE-2026-109619): kritisk PHP-sårbarhed og hvad du som WordPress-ejer skal vide
I oktober 2026 blev der offentliggjort to kritiske PHP-sårbarheder, som er kendt under fællesnavnet PHP2Shell. Begge gør det muligt at køre fjernkode uden login, og fordi PHP driver en kæmpe del af nettet, rammer de også WordPress, Drupal og utallige andre sider. I denne artikel gennemgår vi, hvad det handler om, hvad du skal gøre nu, og hvorfor en statisk side undgår hele problemet.
Aktuelt: Sårbarhederne udnyttes allerede aktivt på nettet. Driver du en PHP-baseret side, så opdatér PHP til en rettet version uden tøven. Vejledningen står nedenfor.
PHP2Shell betegner to sårbarheder i PHP-kernen, CVE-2026-109618 og CVE-2026-109619. Begge tillader fjernkørsel af kode uden login, og de er klassificeret som kritiske (CVSS 9.2). Et vellykket angreb kan føre til fuld overtagelse af serveren og til læk af adgangskoder og nøgler, der ligger i hukommelsen.
Fordi hullerne sidder i PHP-kernen, rammer de alle sider, der kører på en sårbar PHP-version: WordPress, Drupal, Laravel og skræddersyede applikationer, uanset plugins. Den vigtigste handling er at opdatere PHP til en rettet version (8.5.12, 8.4.27, 8.3.36 eller 8.2.35) og genstarte serveren.
På en statisk side køres der slet ingen PHP-fortolker, så en sårbarhed baseret på fjernkørsel af PHP-kode gælder ikke for den. Novavalo producerer netop sådanne statiske sider, så sider bygget med Novavalo er ikke udsat for denne PHP-sårbarhed.
Hvad er PHP2Shell (CVE-2026-109618 og CVE-2026-109619)?
PHP2Shell er fællesnavnet for to sårbarheder i PHP-kernen, som blev offentliggjort i oktober 2026. Begge gør det muligt at køre fjernkode (RCE) uden login, og de er vurderet som kritiske i alvorlighed (CVSS 9.2). I praksis kan en angriber køre sin egen kode på serveren, hvilket kan føre til fuld overtagelse af hele systemet.
Hullernes eksistens kom frem før den planlagte tidsplan, da oplysninger lækkede ud på nettet. PHP-udviklerne reagerede hurtigt og udgav en nødopdatering den 21. oktober 2026. Sårbarhederne blev fundet af sikkerhedsfirmaet Wiz. Desværre betød lækket også, at angriberne fik et tidligt fingerpeg: aktiv udnyttelse af hullerne er blevet observeret på nettet lige fra offentliggørelsesdagen, og fungerende angrebseksempler er offentligt tilgængelige.
Navnet PHP2Shell beskriver resultatet rammende. Angriberens mål er at komme fra PHP ind i serverens kommandofortolker, altså en shell, hvorfra han i praksis kan gøre hvad som helst på siden og serveren: installere malware, stjæle data eller bruge serveren som springbræt til de næste angreb.
Hvorfor dukkede sårbarheden først op nu?
Koden bag fejlene havde ligget i PHP i lang tid. Det nye er ikke selve fejlen, men at forskere i 2026 ved hjælp af kunstig intelligens viste, hvordan fejlene i praksis kan udnyttes. En gammel fejl, der havde ligget i dvale i årevis, blev til et reelt angreb.
Der var allerede tegn på det ene problem i 2024, men dengang blev der ikke fundet en fungerende angrebsmetode, og rettelsen trak ud. Sådan går det ofte i software: en mistanke om en mulig fejl betyder ikke, at nogen kan udnytte den. Netop derfor står nogle sårbarheder uløst i årevis, indtil nogen finder ud af, hvordan de kan bringes til at udløse sig.
I dette tilfælde blev det afgørende skridt taget ved hjælp af kunstig intelligens. Forskerne brugte kunstig intelligens til at kortlægge den komplekse angrebskæde, som for et menneske ville have krævet betydeligt mere tid. Fundet opstod i forskernes eget forskningsarbejde, ikke i efterforskningen af et opdaget datatyveri, hvilket er en god nyhed: rettelsen nåede at blive færdig før omfattende misbrug. Samtidig er sagen dog en påmindelse om, at kunstig intelligens sænker tærsklen for at bygge komplekse angreb. Gamle fejl, der længe blev anset for ufarlige, kan blive udnyttelige, og det er en af grundene til, at det nu er endnu vigtigere at reducere angrebsfladen.
Hvorfor rammer det netop WordPress og andre PHP-sider?
WordPress er bygget oven på PHP, og disse sårbarheder sidder i PHP-kernen, ikke i enkelte plugins. Derfor rammer de hver eneste WordPress-side, der kører på en sårbar PHP-version, uanset hvilke plugins eller temaer der er installeret.
Det gør situationen usædvanlig. Normalt kommer WordPress-indbrud fra plugins, temaer og svage adgangsoplysninger, som vi skrev om tidligere i artiklen WordPress-indbruddene fortsætter. Her sidder hullet dybere: det er i selve PHP, som WordPress kører på. Forskere har vist, at sårbarheden kan udnyttes mod selv de nyeste WordPress-installationer uden login.
PHP driver en kæmpe del af nettet, så virkningsfeltet er bredt. Ud over WordPress er for eksempel Drupal, Laravel og mange skræddersyede PHP-applikationer udsatte. Risikoen er særlig stor, når PHP kører med Apaches mod_php-modul, hvor en forespørgsel uden login kan udløse angrebet, før nogen beskyttelse i selve applikationen når at reagere. Også PHP-FPM, php-cgi og andre kørselsmåder er udsatte.
Hvad betyder sårbarhederne teknisk?
Begge huller handler om, hvordan PHP håndterer hukommelse mellem forespørgsler. Detaljerne er tekniske, men kerneidéen kan opsummeres klart.
| Sårbarhed | Type | Hvad det handler om |
|---|---|---|
| CVE-2026-109618 | Hukommelseskorruption når hukommelsen slipper op | Hvis serverens hukommelse slipper op, mens PHP's forespørgselsdata kun er delvist initialiseret, kan den efterfølgende oprydning behandle ufærdige data som gyldige. Det kan bruges til at køre kode. |
| CVE-2026-109619 | Brug af frigivet hukommelse (use-after-free) | En tilstand, der er efterladt fra én forespørgsel, kan pege på hukommelse, der allerede er frigivet. En forespørgsel, der behandles senere i samme arbejdsproces, kan udnytte denne forældede tilstand. |
Ud over at køre kode kan hullerne lække oplysninger. Med dem er det muligt at læse hukommelsen i PHP-arbejdsprocessen, som kan indeholde adgangskoder, sessionstokens og API-nøgler. På en WordPress-side kan det for eksempel betyde, at databaseoplysninger eller nøgler til tredjepartstjenester afsløres. Netop derfor er lapningen alene ikke altid nok, og efter lapningen bør du overveje også at skifte adgangskoder og nøgler.
Hvad skal du gøre nu?
Den vigtigste handling er én: opdatér PHP til en rettet version og genstart serveren. Opdateringen alene retter sårbarheden fuldstændigt. Alt andet er sekundært.
Tjekliste for ejeren af en PHP-side
- Opdatér PHP til en rettet version. Opdatér PHP til version 8.5.12, 8.4.27, 8.3.36 eller 8.2.35 alt efter, hvilken gren du bruger.
- Genstart tjenesten. Genstart PHP-FPM eller webserveren efter opdateringen, så gamle arbejdsprocesser ikke bliver ved med at køre på den gamle kode.
- Gammel PHP-version? Kontakt driften. Bruger du PHP 8.1 eller ældre, findes der ingen officiel binær opdatering. Bed din udbyder opdatere til en understøttet version (8.2 eller nyere).
- Brug kun midlertidige mitigeringer som nødhjælp. PHP-fondens råd, som at begrænse forespørgslens maksimale størrelse (post_max_size) og slå indstillingen session.upload_progress.enabled fra, reducerer angrebsfladen, men erstatter ikke opdateringen.
- Hold øje med afvigelser. Overvåg usædvanlige multipart-forespørgsler og fejl om overskredne hukommelsesgrænser, som kan tyde på et udnyttelsesforsøg.
- Overvej at skifte adgangsoplysninger. Fordi hukommelsen kan være læst, så skift databaseadgangskoder, API-nøgler og andre hemmeligheder efter lapningen, hvis der er grund til at mistænke eksponering.
- Stol ikke på falske plugins. Undgå uofficielle plugins, der hævder at lappe sårbarheden. Kun PHP's officielle opdatering lukker hullet.
Hvilke PHP-versioner er sårbare, og hvilke er rettet?
Sårbarheden rammer i praksis alle PHP-versioner fra årevis tilbage og helt op til PHP 8. I tabellen nedenfor kan du se, hvilken version du bør opdatere til.
| PHP-gren | Status | Anbefaling |
|---|---|---|
| PHP 8.5 | Rettet i version 8.5.12 | Opdatér til version 8.5.12 eller nyere. |
| PHP 8.4 | Rettet i version 8.4.27 | Opdatér til version 8.4.27 eller nyere. |
| PHP 8.3 | Rettet i version 8.3.36 | Opdatér til version 8.3.36 eller nyere. |
| PHP 8.2 | Rettet i version 8.2.35 | Opdatér til version 8.2.35 eller nyere. |
| PHP 8.1 og ældre | Sårbar, ingen officiel binær opdatering | Opdatér til en understøttet version (8.2 eller nyere). Kildekoderettelser er tilgængelige for versionerne 7.4 til 8.1, der er nået enden på deres livscyklus. |
Hvis du ikke ved, hvilken PHP-version din side bruger, så spørg din udbyder eller tjek det i kontrolpanelet. Hos mange kunder på delt webhotel klarer udbyderen opdateringen, men det er værd at sikre sig, at den faktisk er blevet udført.
Hvorfor undgår en statisk side det helt?
På en statisk side køres der slet ingen PHP-fortolker. Siderne er færdigbyggede HTML-filer, der leveres, som de er, via et hurtigt CDN. Fordi serveren ikke kører PHP-kode for hver eneste forespørgsel, gælder en sårbarhed baseret på fjernkørsel af PHP-kode simpelthen ikke for en sådan side.
Heri ligger lærdommen fra artiklens billede. I eventyret om de tre små grise vælter stråhytten og rishytten for ulvens pust, men murstenshuset står fast. På nettet bliver PHP'ens stråhytte og WordPress' rishytte konstant ramt af vinden, når der findes nye sårbarheder. Den statiske side er murstenshuset: der er ingen database, intet login-panel, ingen plugins og ingen kode, der køres på serveren, som et angreb kan gribe fat i.
Det er ærligt at sige, at ingen platform er trylleslag-sikret mod alt. Også en statisk side kan sættes skødesløst sammen, og formularer og eksterne tjenester kræver deres egen omsorg. Det afgørende er, at netop denne sårbarhedsklasse, fjernkørsel af PHP-kode, forsvinder helt, når der ikke er nogen PHP-fortolker på siden. Samtidig forsvinder en stor del af den angrebsflade, som netkriminelle dag ud og dag ind tester.
Bør jeg flytte væk fra WordPress?
En enkelt sårbarhed er ikke grund til panik, og den bør frem for alt lappes med det samme. Men spørgsmålet på længere sigt er relevant. Hvis din side er en helt almindelig præsentationsside for virksomheden med nogle få sider, kontaktoplysninger og måske en kontaktformular, bringer et tungt PHP-baseret publiceringssystem en angrebsflade og en vedligeholdelsesbyrde med sig, som du ikke nødvendigvis har brug for.
I et sådant tilfælde er en statisk side et lettere og sikrere alternativ. Du behøver ikke følge ugentlige sikkerhedsopdateringer eller løbe efter hver ny PHP- eller pluginsårbarhed. Til en stor platform, der kræver meget funktionalitet, kan WordPress stadig være et berettiget valg, men til en præsentationsside er det ofte overdimensioneret. Vi skrev mere udførligt om emnet i artiklen derfor forlod vi WordPress, og hele udviklingsforløbet gennemgår hjemmesidernes historie.
Byg sider uden PHP og uden opdateringsvagt
Novavalo producerer statiske sider, der hverken køres på PHP eller WordPress:
- Ingen PHP-fortolker, ingen database, ingen plugins, så en PHP-sårbarhed af denne slags rammer ikke din side.
- Du fortæller om din virksomhed, og den kunstige intelligens bygger siderne, der leveres via et hurtigt CDN.
- Ingen ugentlig sikkerhedsvedligeholdelse, så du fokuserer på indhold, ikke på at holde øje med opdateringer.
Ofte stillede spørgsmål
Hvad er PHP2Shell (CVE-2026-109618 og CVE-2026-109619)?
PHP2Shell er fællesnavnet for to kritiske sårbarheder i PHP, som blev offentliggjort i oktober 2026. Begge gør det muligt at køre fjernkode (RCE) uden login, og de er klassificeret som kritiske (CVSS 9.2). Et vellykket angreb kan føre til fuld overtagelse af serveren.
Rammer det min WordPress-side?
Ja, hvis din side kører på en sårbar PHP-version. Sårbarhederne sidder i PHP-kernen, så de rammer alle WordPress-sider uanset plugins og temaer. Forskere har vist, at sårbarheden kan bruges mod selv de nyeste WordPress-installationer uden login.
Hvad skal jeg gøre med det samme?
Opdatér PHP til en rettet version (8.5.12, 8.4.27, 8.3.36 eller 8.2.35) og genstart PHP-FPM eller webserveren. Bruger du PHP 8.1 eller ældre, så kontakt din udbyder om en opdatering til en understøttet version. Opdateringen alene retter problemet fuldstændigt.
Hvorfor er en statisk side ikke udsat for denne sårbarhed?
På en statisk side køres der slet ingen PHP-fortolker. Siderne er færdige HTML-filer, der leveres via et CDN. Fordi serveren ikke kører PHP-kode for hver forespørgsel, gælder en sårbarhed baseret på fjernkørsel af PHP-kode ganske enkelt ikke for en sådan side.
Er en midlertidig mitigering nok uden opdatering?
Nej. PHP-fonden udgav midlertidige mitigeringer, der reducerer angrebsfladen, men de gør ikke installationen sikker i sig selv. Kun en opdatering til en rettet version lukker sårbarheden. Undgå også uofficielle plugins, der hævder at lappe problemet.
Lækker sårbarheden adgangskoder og nøgler?
Ud over kørsel af kode kan disse sårbarheder bruges til at læse hukommelsen i PHP-arbejdsprocessen, som kan indeholde adgangskoder, sessionstokens og API-nøgler. For WordPress kan det for eksempel betyde, at databaseoplysninger eller tredjepartsnøgler afsløres. Derfor anbefaler mange også at skifte adgangskoder og nøgler efter lapningen.
Hvorfor er en gammel fejl først farlig nu?
Koden bag fejlene havde ligget i PHP i lang tid, og der var tegn på det ene problem allerede i 2024. Men en reel angrebsmetode blev ikke fundet dengang. I 2026 viste forskere ved hjælp af kunstig intelligens, hvordan fejlene kan udnyttes. Kunstig intelligens sænker tærsklen for at bygge komplekse angreb, så gamle fejl kan blive udnyttelige.
En sikker side uden PHP-angrebsflade
Lad den kunstige intelligens bygge en statisk hjemmeside til din virksomhed, hvor der hverken er PHP-fortolker, database eller plugins at holde øje med. Du ser resultatet på få minutter.
Kom gratis i gang →Gennemsigtighedsnote: Denne artikel er produceret med hjælp fra kunstig intelligens, og Novavalos redaktion står inde for indholdet. Artiklen er generel information om sikkerhed og erstatter ikke officielle sikkerhedsmeddelelser. Tjek altid de aktuelle råd i de officielle kilder nedenfor.