CVE-2026-93985: Sandkasse-hul i OpenPanel js-runtime
CVE-2026-93985: Sandkasse-hul i OpenPanel js-runtime lader brugere med skriveadgang køre vilkårlig kode. Opdatér til version efter commit bad75bdd.
Hvad er det?
CVE-2026-93985 er en sårbarhed i OpenPanel js-runtime, en komponent der kører brugerdefineret JavaScript-kode i et hostingkontrolpanel. Fejlen sidder i den valideringsfunktion, der skal godkende webhook-skabeloner, altså skabte regler for automatiske notifikationer. Valideringen blokerer ikke for computed member access, en måde at tilgå objektegenskaber via variabel navngivning i klammer i stedet for punktum. Det gør det muligt at komme uden om sandkassen, det isolerede miljø der skal forhindre kode fra at røre resten af systemet, og tilgå JavaScripts Function-konstruktør. Med den kan en bruger skrive og køre helt vilkårlig kode i worker-processen, den baggrundsproces der udfører selve webhook-koden.
Hvem rammer det?
Sårbarheden rammer virksomheder og hostingudbydere, der kører OpenPanel med js-runtime-komponenten aktiveret, i versioner op til og med commit bad75bdd. Det gælder både virksomheder, der selv driver kontrolpanelet, og udbydere der stiller det til rådighed for kunder med egne projekter og webhook-funktioner.
Hvad kan ske?
En bruger, der allerede har skriveadgang til et projekt, fx en udvikler eller en kunde på en delt hostingplatform, kan oprette en webhook-skabelon der udnytter fejlen. Det giver fuld kodeudførelse i worker-processen, hvilket i praksis betyder adgang til data, filer og eventuelt andre kunders projekter på samme server. For en hostingudbyder kan det føre til, at én kundes skadelige handling kompromitterer hele platformen.
Hvor alvorligt er det?
CVSS-scoren er 9,9 af 10, kritisk. Angrebet kræver netværksadgang, men ingen brugerinteraktion fra andre, og kun lave privilegier, altså almindelig skriveadgang til et projekt, som mange almindelige brugere allerede har. Konsekvensen er fuld kompromittering af fortrolighed, integritet og tilgængelighed, fordi angriberen kan køre vilkårlig kode. Der er ikke offentliggjort oplysninger om, at sårbarheden aktivt udnyttes, men lav angrebskompleksitet og adgangskrav gør den nem at misbruge, når den er kendt.
Hvad gør jeg nu?
Følg punkterne i denne rækkefølge:
- Opdater OpenPanel js-runtime til en version efter commit bad75bdd, hvor sandkasse-valideringen af webhook-skabeloner er rettet.
- Gennemgå eksisterende webhook-skabeloner for brug af klammenotation, der tilgår constructor-kæder eller Function-objektet.
- Begræns midlertidigt, hvem der har skriveadgang til projekter og kan oprette webhook-skabeloner, indtil opdateringen er gennemført.
- Overvåg logs fra worker-processer for uventet processtart eller netværkstrafik.
- Kontakt Auroa eller en anden sikkerhedsrådgiver, hvis I ikke selv kan verificere, at rettelsen er på plads, eller hvis I finder tegn på misbrug.
Opdatér inden for få arbejdsdage
Vi anbefaler, at I opdaterer OpenPanel js-runtime til en version efter commit bad75bdd hurtigst muligt, da sårbarheden kræver kun almindelig skriveadgang og ingen brugerinteraktion. Det er kun forsvarligt at vente, hvis js-runtime-komponenten er slået fra, eller hvis ingen brugere har skriveadgang til projekter uden fuld tillid. I alle andre tilfælde bør opdateringen prioriteres over almindelig drift denne uge.
Tidslinje
Konkrete eksempler
Delt hostingplatform kompromitteres via kundeprojekt
En dansk hostingudbyder bruger OpenPanel til at give kunder eget kontrolpanel med webhook-funktioner. En kunde med almindelig skriveadgang til sit eget projekt opretter en skabelon, der udnytter sårbarheden og får kodeudførelse i worker-processen. Derfra får kunden adgang til andre kunders data på samme server, hvilket udløser en større sikkerhedshændelse for udbyderen.
Ofte stillede spørgsmål
Er vi ramt af CVE-2026-93985?
I er ramt, hvis I kører OpenPanel med js-runtime-komponenten aktiveret i en version fra før eller på commit bad75bdd. Tjek jeres versionsnummer eller commit-hash mod dette.
Hvordan tjekker vi, om sårbarheden er udnyttet hos os?
Gennemgå eksisterende webhook-skabeloner for uventet brug af klammenotation til at tilgå objektegenskaber, og se logs for worker-processer efter uventet processtart eller netværkstrafik.
Kan vi vente til weekenden med at opdatere?
Kun hvis ingen eksterne eller mindre betroede brugere har skriveadgang til projekter i mellemtiden. Har I kunder eller eksterne udviklere med projektadgang, bør opdateringen ske før weekenden.
Kræver angrebet, at angriberen logger ind?
Ja. Angriberen skal have skriveadgang til et projekt, altså en form for gyldig konto med de rettigheder. Der kræves ingen handling fra andre brugere eller administratorer.
Skal vi anmelde dette til myndighederne?
Kun hvis I konstaterer, at sårbarheden faktisk er blevet udnyttet, og persondata eller kritiske systemer er kompromitteret. Så vil det være anmeldelsespligtigt efter reglerne om databeskyttelse.
Påvirker det andre dele af vores system end OpenPanel?
Sårbarheden sidder i js-runtime-komponenten, men da angriberen får kodeudførelse i worker-processen, kan konsekvensen brede sig til andre data og systemer, som denne proces har adgang til.
CVSS-detaljer
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H
CWE-svaghedstyper
Original NVD-beskrivelse (engelsk)
OpenPanel js-runtime through commit bad75bdd contains a sandbox escape vulnerability in the JavaScript webhook template validator that fails to block computed member access to constructor chains. Attackers with project write access can create webhook templates using computed property notation to access Function constructor and execute arbitrary code in the worker process.
Referencer & kilder
Eksterne kilder
Brug for hjælp med jeres sikkerhed?
Vi hjælper SMV’er med at omsætte trusler som denne til konkrete handlingsplaner.