Kritiske sikkerhetsoppdateringer for PHP og Node.js: Dette har vi gjort, og dette bør du gjøre

Patrick Wunderlin
Patrick Wunderlin
Kritiske sikkerhetsoppdateringer for PHP og Node.js: Dette har vi gjort, og dette bør du gjøre

I dag, 21. oktober 2026, kom det sikkerhetsoppdateringer for både PHP og Node.js. Særlig PHP-sårbarhetene er alvorlige: Oppdateringene tetter to kritiske sikkerhetshull som lar angripere kjøre kode på en webserver uten å logge inn. Det ble meldt om angrep allerede før oppdateringene var tilgjengelige.

WireBoard er allerede oppdatert. Oppdateringen ble gjennomført uten nedetid. Du trenger ikke gjøre noe med WireBoard-kontoen din eller sporingsskriptet.

Bruker nettstedet eller appen din PHP eller Node.js? Les videre, og oppdater i dag.

Kort fortalt

Oppdater til

Alvorlighetsgrad

PHP

8.5.12, 8.4.27, 8.3.36 eller 8.2.35 (eller leverandørens pakke med sikkerhetsrettelsene)

Kritisk (CVSS 9,2), ekstern kodekjøring uten autentisering

Node.js

26.12.1, 24.22.1 eller 22.23.4

Høy

  • Bruker du WordPress, Magento, Drupal, Laravel eller en annen PHP-app? Da bruker du PHP. Oppdater nå.

  • Har du delt webhotell eller administrert hosting? Da er det leverandøren som oppdaterer PHP. Sjekk at det er gjort.

  • Etter at du har oppdatert PHP, må du starte PHP-FPM eller Apache på nytt. Ellers fortsetter den gamle versjonen å kjøre.

  • Bruker du en versjon som ikke lenger støttes (PHP 8.1 eller eldre, Node.js 25, 23, 20 eller eldre)? Da får du ingen offisiell sikkerhetsoppdatering. Planlegg å bytte til en støttet versjon.


Hva har skjedd?

PHP: «PHP2Shell» (CVE-2026-109618 og CVE-2026-109619)

PHP-teamet har rettet to kritiske sårbarheter. Begge har fått en score på 9,2 på CVSS v4.0-skalaen:

  • CVE-2026-109618: ekstern kodekjøring via minnekorrupsjon når PHP går tom for minne under behandlingen av en forespørsel.

  • CVE-2026-109619: ekstern kodekjøring via global tilstand som ikke er ryddet opp i.

Begge kan utløses eksternt, uten autentisering, med standardoppsettet. Detaljer lekket på nettet dagen før den planlagte utgivelsen. Sikkerhetsselskaper registrerte derfor både angrep og forsøk på å finne sårbare PHP-nettsteder før oppdateringen var tilgjengelig. Flere selskaper tok tjenestene sine midlertidig av nett av sikkerhetshensyn til de fikk oppdatert.

Alle støttede PHP-grener er berørt i versjoner før 8.2.35, 8.3.36, 8.4.27 og 8.5.12.

Node.js: Sikkerhetsoppdateringen for oktober 2026

Node.js har sluppet oppdateringer for versjonsseriene 26.x, 24.x og 22.x. De retter 10 sårbarheter, hvorav 4 har høy alvorlighetsgrad. De viktigste er:

  • CVE-2026-111497: skriving utenfor minnegrensene ved dekomprimering av Brotli-data, noe som kan åpne for ekstern kodekjøring. Appen din kan bli berørt bare ved å kalle fetch() mot en server som returnerer Brotli-komprimerte data.

  • CVE-2026-105483 / CVE-2026-106069: muligheter for å omgå TLS-kontrollen av vertsnavn ved å skrive IP-adresser på uvanlige måter.

  • CVE-2026-105482: dns.resolve kunne slå opp et annet navn enn det koden din hadde kontrollert.

Dette har vi gjort

Vi har installert begge oppdateringene i hele infrastrukturen til WireBoard i dag. Det skjedde uten nedetid, og ingen data ble berørt. Du bruker WireBoard akkurat som før.

Er du berørt?

Du må gjøre noe hvis nettstedet, appen eller serveren din bruker:

  • PHP, enten direkte eller gjennom et CMS eller rammeverk som WordPress, WooCommerce, Magento, Drupal, Joomla, Laravel eller Symfony.

  • Node.js, for eksempel i en Next.js-, Nuxt-, Express- eller NestJS-app, en backend-tjeneste eller en byggeserver som kjører Node.

Er du usikker? Spør utvikleren eller hostingleverandøren din. Det holder å spørre: «Bruker nettstedet vårt PHP eller Node.js, og er dagens sikkerhetsoppdatering installert?»

Slik sjekker du versjonen

PHP

Det er versjonen webserveren bruker, som teller. Kjører du php -v i en terminal, ser du PHP-versjonen for kommandolinjen. Den kan være en annen.

  1. Opprett filen info.php i nettstedets rotmappe med innholdet <?php phpinfo();

  2. Åpne filen i nettleseren, og sjekk PHP Version øverst.

  3. Slett filen med en gang etterpå. Den viser hele serverkonfigurasjonen din.

Mange kontrollpaneler for hosting, som cPanel og Plesk, viser også PHP-versjonen.

Merk om pakker fra Linux-distribusjoner: Ubuntu, Debian, RHEL og lignende legger ofte sikkerhetsrettelser inn i eldre versjoner uten å endre versjonsnummeret. Da må du i stedet se etter CVE-ID-ene i pakkens endringslogg (se nedenfor).

Node.js

node -v

Sikkerhetsrettelsene er på plass hvis du ser v26.12.1, v24.22.1, v22.23.4 eller en nyere versjon i samme versjonsserie.

Slik oppdaterer du PHP

Følg avsnittet som passer til måten PHP er installert på serveren din.

Delt webhotell eller administrert hosting

Leverandøren din har ansvaret for PHP og installerer sikkerhetsoppdateringen. Sjekk statussiden eller driftsmeldingene deres. Bekreft deretter versjonen med phpinfo(), som beskrevet over. Hvis du kan velge PHP-versjon i kontrollpanelet og bruker 8.1 eller eldre, bør du bytte til 8.2 eller nyere. Sjekk først at publiseringssystemet og utvidelsene dine støtter versjonen.

Ubuntu / Debian

sudo apt update
# replace 8.3 with the PHP branch you use
sudo apt install --only-upgrade 'php8.3-*'

# confirm the fix is included
apt changelog php8.3-fpm | grep -E 'CVE-2026-10961(8|9)'

Hvis den siste kommandoen ikke gir noe resultat, er sikkerhetsrettelsene ennå ikke tilgjengelige i distribusjonens pakkebrønn. Sjekk Ubuntu Security Notices eller Debian Security Tracker, og prøv igjen senere. Bruker du PHP-pakkene til Ondřej Surý, oppdaterer du fra den pakkebrønnen på samme måte.

RHEL / AlmaLinux / Rocky Linux

dnf module list php          # see which PHP stream you're on
sudo dnf upgrade 'php*'

# confirm the fix is included
rpm -q --changelog php-fpm | grep -E 'CVE-2026-10961(8|9)'

Bruker du Remi-pakkebrønnen, oppdaterer du derfra.

Docker

Det holder ikke å hente et nytt image. Containere som allerede kjører, blir ikke oppdatert av den grunn. Hent imaget, bygg på nytt og opprett containerne på nytt:

docker pull php:8.3-fpm        # use your tag
docker compose build --pull
docker compose up -d

For å være helt sikker kan du låse versjonen til en utgave med sikkerhetsrettelsene i Dockerfile, for eksempel FROM php:8.3.36-fpm.

Kompilert fra kildekode eller installert på Windows

Last ned versjonen med sikkerhetsrettelsene fra php.net/downloads.

Start deretter PHP på nytt

Dette trinnet er lett å glemme. Prosesser som allerede kjører, fortsetter å bruke den gamle PHP-versjonen til de startes på nytt:

# PHP-FPM (Debian/Ubuntu; replace 8.3 with your branch)
sudo systemctl restart php8.3-fpm

# PHP-FPM (RHEL family)
sudo systemctl restart php-fpm

# Apache with mod_php
sudo systemctl restart apache2   # or httpd on RHEL

Sjekk så phpinfo() igjen for å bekrefte at den nye versjonen er i bruk.

«Kan jeg bare endre en innstilling i stedet?»

Nei. Det kom tidlig noen forslag til midlertidige tiltak, som å slå av session.upload_progress.enabled. Disse reduserer bare risikoen. En av utviklerne av PHP-kjernen har offentlig uttalt at oppdatering av PHP er det eneste tiltaket som faktisk løser problemet. Har du tatt i bruk et midlertidig tiltak, bør du beholde det til du har oppdatert. Men ikke la det erstatte oppdateringen.

Slik oppdaterer du Node.js

Installert via

Slik oppdaterer du

nvm

nvm install 24 (eller 22 / 26), deretter nvm alias default 24

Offisielt installasjonsprogram

Last ned den nyeste utgaven i versjonsserien din fra nodejs.org/en/download

Docker

Lås taggen til en versjon med sikkerhetsrettelsene, for eksempel FROM node:24.22.1. Kjør deretter docker pull og bygg på nytt. En flytende tagg som node:24 kan fortsatt bruke en gammel versjon hvis du bygger fra et mellomlagret image.

Homebrew

brew update && brew upgrade node (eller node@24 / node@22). Det kan ta noen timer før oppdateringen er tilgjengelig i Homebrew. Bruk nvm eller installasjonsprogrammet hvis det haster.

Pakkebehandler for Linux

Oppdater som vanlig via distribusjonens pakkebrønn eller NodeSource.

Hostingplattform (Vercel, Netlify, Heroku, Render osv.)

Sjekk plattformens innstillinger for kjøremiljø og driftsmeldinger. De fleste oppdaterer kjøremiljøene automatisk, men du kan måtte publisere appen på nytt.

Etter oppdateringen må du starte appen på nytt (eller publisere den på nytt) og bekrefte versjonen med node -v.

Hvis du bruker en versjon som ikke lenger støttes

Det kommer bare offisielle sikkerhetsoppdateringer for støttede versjoner:

  • PHP: 8.2, 8.3, 8.4 og 8.5. PHP 8.1 og eldre får ingen offisiell oppdatering. Noen Linux-distribusjoner og leverandører av betalt langtidsstøtte legger sikkerhetsrettelsene inn i eldre versjoner, så sjekk med leverandøren din. Ellers er det tryggest å oppgradere til en støttet versjonsgren. Merk at PHP 8.2 bare får sikkerhetsoppdateringer frem til 31. desember 2026.

  • Node.js: 22.x, 24.x og 26.x. Versjonsserier som 25, 23 og 20 støttes ikke lenger og får ingen sikkerhetsoppdatering.

Kan du ikke oppgradere med en gang, bør du vurdere å beskytte nettstedet med en brannmur for webapplikasjoner eller begrense tilgangen frem til du får oppgradert.

Les mer

Offisielle sikkerhetsmeldinger

Nyttige veiledninger

Del artikkelen
Patrick Wunderlin

Skrevet av

Patrick Wunderlin

Grunnlegger av WireBoard.io. Datateknisk sivilingeniør (EPFL), brenner for webanalyse, databehandling i sanntid og for å bygge verktøy som hjelper bedrifter med å vokse.

WireBoard

Følg nettstedet ditt i sanntid

Live-dashbord du bygger selv. Start gratis. Uten kredittkort, uten styr.