Ny WordPress-sårbarhet i xmlrpc.php: kan slå ut nettsiden din. Dette bør du gjøre
En feil i komprimeringsbiblioteket Brotli gjør at én forespørsel til xmlrpc.php kan krasje en WordPress-side, uten innlogging. Oppdatering av WordPress hjelper ikke. Her er hva CVE-2026-111497 betyr, og hvordan du stenger XML-RPC og pingbacks.
Rett etter WordPress 7.1.4 kommer neste sak, og denne gangen hjelper det ikke å oppdatere WordPress. «One unauthenticated POST to xmlrpc.php can take down a PHP worker on a stock WordPress install», skriver sikkerhetsselskapet Patchstack. Altså: én forespørsel, uten innlogging, kan krasje en helt vanlig WordPress-side.
Feilen har nummeret CVE-2026-111497. Den sitter ikke i WordPress, men i et bibliotek som ligger under, på serveren. Derfor er det lett å tro at man er trygg fordi WordPress er oppdatert.
Hva er CVE-2026-111497?
Brotli er et komprimeringsformat fra Google. Det brukes til å gjøre filer og nettsider mindre når de sendes over nett, og biblioteket som pakker dem ut, finnes i svært mye programvare: Node.js, .NET, Python, Envoy og verktøyet curl, for å nevne noen. Feilen gjør at en spesiallaget Brotli-fil kan skrive utenfor minneområdet sitt når den pakkes ut. Google har gitt den en score på 9,2.
Brotli 1.0.10, 1.1.1 og 1.2.1 med fiks kom 21. oktober. 27. oktober la den amerikanske sikkerhetsetaten CISA feilen på listen over sårbarheter som utnyttes i angrep, og trusselselskapet ELLIO melder at de har sett angrepstrafikk. Den mest alvorlige varianten, der angriperen kan kjøre egen kode, er vist mot Node.js og Bun, og senere også mot WordPress i testmiljø.
Hvorfor rammer det WordPress?
WordPress har ikke Brotli selv. Men når WordPress henter noe fra en annen nettside, bruker det curl, og curl bruker Brotli-biblioteket som følger med operativsystemet på serveren. Patchstack beskriver angrepet slik:
- Angriperen sender en pingback til
xmlrpc.php. Pingback er en gammel funksjon der en blogg sier fra til en annen at den har lenket til den. Det krever ingen innlogging. - WordPress gjør det pingbacks skal: det henter adressen angriperen oppga, for å sjekke lenken.
- Angriperens server svarer med et ødelagt Brotli-komprimert svar.
- Når serveren pakker ut svaret, krasjer PHP-prosessen som behandler forespørselen.
Én slik forespørsel tar ned én prosess. «A few hundred can keep a site down», skriver Patchstack: noen hundre kan holde siden nede. Det er ikke et innbrudd, men for en bedrift som lever av at kundene finner den, er en side som ikke svarer, ille nok.
Da Patchstack skrev om saken 30. oktober, stoppet de offentlige angrepene mot WordPress ved krasj. Det har endret seg.
Oppdatert 3. november: Wordfence har nå gjenskapt kodekjøring uten innlogging gjennom WordPress i et lukket testmiljø, med den offentlige angrepskoden. Det virket på nøyaktig det serveroppsettet koden var laget for, og ikke etter at Brotli ble oppdatert. På en litt annen PHP-versjon krasjet den bare. Wordfence har ikke funnet noen offentlig dokumentert sak der en WordPress-side faktisk er tatt over på denne måten, men anbefaler å behandle oppdateringen som haster. Les mer i artikkelen om HTTP2Shell.
Dette bør du gjøre
- Spør webhotellet om Brotli er oppdatert. Det er den egentlige fiksen. Spør konkret om biblioteket libbrotli på serveren er oppdatert etter CVE-2026-111497. Patchstack påpeker at også det offisielle Docker-bildet for WordPress fortsatt installerte en sårbar versjon, så selv en nyinstallert server kan være rammet.
- Sjekk om xmlrpc.php er åpen. Skriv inn adressen til siden din med
/xmlrpc.phptil slutt. Svarer den «XML-RPC server accepts POST requests only.», er den åpen. Mange webhotell blokkerer filen allerede, men sjekk heller enn å anta. - Blokker xmlrpc.php hvis du ikke bruker den. De fleste bedriftssider trenger ikke XML-RPC. Det brukes av enkelte utvidelser, som Jetpack, og av eldre publiseringsapper. Bruker du ikke noe av det, kan webhotellet eller den som drifter siden, blokkere filen på webserveren.
- Slå av pingbacks i koden. Må xmlrpc.php være åpen, kan du fjerne bare pingback-funksjonen. Mange tips på nett anbefaler filteret
xmlrpc_enabled, men det stopper ikke pingbacks, ifølge Patchstack. Det gjør heller ikke valget «Disable XML-RPC authentication» i Wordfence, og innstillingen for pingbacks under Innstillinger og Diskusjon gjelder bare nye innlegg. Dette gjør det:
Koden legges i et lite eget tillegg eller i temaetsadd_filter( 'xmlrpc_methods', function ( $methods ) { unset( $methods['pingback.ping'] ); return $methods; } );functions.php. Er du usikker, la den som drifter siden gjøre det. - Se over utvidelser som henter adresser. Utvidelser som henter innhold fra adresser besøkende oppgir, for eksempel forhåndsvisning av lenker eller import, går gjennom det samme biblioteket.
Hvorfor statiske Astro-sider ikke er rammet
En statisk nettside bygget med Astro ligger ferdig som filer. Det finnes ingen xmlrpc.php, ingen pingbacks og ingen PHP som henter adresser når noen ber om det. Angrepet over har rett og slett ingenting å treffe.
For å være ærlig: Brotli-feilen rammer også Node.js, og mange moderne sider, også mine, bruker små serverfunksjoner til for eksempel skjemaer. Sidene jeg drifter, ligger hos Vercel. De la inn brannmurregler mot angrepet samme dag som feilen ble kjent, og ruller ut oppdaterte Node.js-versjoner i miljøene sine. Det er sånn det bør være: feilen ble håndtert av noen som følger med, uten at kunden måtte gjøre noe.
Slipp å følge med selv
Dette er tredje sikkerhetssak om WordPress og PHP på under to uker, etter PHP2Shell og WordPress 7.1.4. NSM har samtidig hevet cyberrisikonivået til «høyt». Å ha en WordPress-side betyr nå i praksis at noen må følge med hver uke.
Med Website-vaktmester er det min jobb. Jeg bygger nettsiden statisk, uten PHP og CMS, drifter den med hosting inkludert, og publiserer det dere sender meg. Det koster fra 2 450 kr/mnd eks. mva. ved årsbetaling, med 30 dagers oppsigelse.
Vil du først vite hvordan siden din står seg, kan du kjøre den gjennom den gratis nettsjekken. Den viser blant annet om siden kjører WordPress, om versjonen er utdatert, og om den ser vedlikeholdt ut.
Kilder
- Patchstack: WordPress doesn't ship Brotli. It's still exposed to CVE-2026-111497
- Wordfence: HTTP2Shell: What the Critical Brotli Vulnerability Means for WordPress Sites
- Help Net Security: Brotli bug reaches far beyond Node.js
- Canadian Centre for Cyber Security: Critical vulnerability impacting Google Brotli
- Vercel: Node.js security advisory (CVE-2026-111497)
