CVE-2026-54386: XSS-sårbarhed i marimo forklaret
Sårbarhed i marimo giver angribere mulighed for at køre skadelig kode i din browser via et snydefuldt link.
Hvad er det?
CVE-2026-54386 er en såkaldt reflected cross-site scripting-sårbarhed (XSS) i det Python-baserede notebook-værktøj marimo (versioner før 0.23.9). XSS betyder, at en angriber kan få en webside til at udføre ondsindet JavaScript-kode i en besøgendes browser.
Fejlen opstår fordi marimo ikke håndterer særlige tegn (enkelt-anførselstegn) korrekt i en URL-parameter kaldet file. Angriberen laver et specialdesignet link, som narrer marimos server til at sende skadelig kode tilbage til den bruger, der klikker på linket — og koden kører uden de normale sikkerhedsbegrænsninger.
Hvem rammer det?
Sårbarheden rammer dig, hvis du eller dine medarbejdere kører marimo som notebook-server — typisk til dataanalyse eller Python-udvikling — og serveren er tilgængelig via et netværk. Angriberen behøver ingen konto eller adgangskode; det eneste krav er, at en bruger klikker på et ondsindet link. Det gælder uanset om serveren er eksponeret mod internettet eller blot internt på virksomhedens netværk.
Hvad kan ske?
Hvis en medarbejder klikker på et manipuleret link, kan angriberen:
- Stjæle sessionscookies (adgangsnøgler til marimo-sessionen) og overtage brugerens session.
- Udføre handlinger på vegne af brugeren i marimo — fx ændre, slette eller eksfiltrere notebooks og data.
- Omdirigere brugeren til falske login-sider for at stjæle adgangskoder.
- Sprede yderligere angreb internt i virksomhedens netværk via brugerens browser.
Det er vigtigt at understrege, at angrebet kræver, at en bruger aktivt klikker på et ondsindet link — det sker ikke automatisk.
Hvor alvorligt er det?
Sårbarheden er vurderet til CVSS 6.1 — Moderat. Det betyder, at den ikke er kritisk, men heller ikke ubetydelig. Angriberen behøver ingen forudgående adgang eller konto, og angrebet er teknisk enkelt at udføre. Den vigtigste begrænsning er, at en bruger skal klikke på et ondsindet link. Konsekvenserne er begrænset til den ramte brugers session og data — serveren eller operativsystemet kompromitteres ikke direkte.
Hvad gør jeg nu?
Følg disse trin for at beskytte din virksomhed:
- Opdatér marimo til version 0.23.9 eller nyere. Kør kommandoen
pip install --upgrade marimoi dit Python-miljø. Dette er den vigtigste handling. - Tjek hvilken version du kører. Kør
marimo --versioni terminalen. Er du på en version under 0.23.9, er du sårbar. - Begræns adgang til marimo-serveren. Sørg for at serveren ikke er eksponeret mod internettet uden grund. Brug firewall eller VPN (krypteret netværksforbindelse) til at begrænse adgangen til betroede brugere.
- Informér dine medarbejdere. Gør dem opmærksomme på ikke at klikke på links til marimo-serveren fra ukendte afsendere eller mistænkelige e-mails.
- Gennemgå adgangslogge. Tjek om der har været usædvanlig aktivitet på marimo-serveren inden for den seneste periode.
Opdatér inden for 7 dage
Opdatér marimo til version 0.23.9 eller nyere så hurtigt som muligt — det løser problemet fuldstændigt. Sørg desuden for, at marimo-serveren ikke er åbent tilgængelig fra internettet uden adgangskontrol. Har du brug for hjælp til at vurdere, om din installation er sårbar, eller til at gennemføre opdateringen sikkert, er du velkommen til at kontakte os.
Tidslinje
Konkrete eksempler
Det falske hjælpe-link
En angriber sender en e-mail til en dataanalytiker i virksomheden, der indeholder et link der ser ud til at pege på virksomhedens marimo-server — måske forklædt som et delt notebook-projekt. Når analytikeren klikker, kører skadelig JavaScript-kode i browseren og sender analytikerens session-cookie til angriberen, som herefter kan overtage sessionen og tilgå alle notebooks og data.
Phishing via intern chat
En angriber, der kender virksomhedens interne URL til marimo-serveren, poster et manipuleret link i en offentlig Slack-kanal eller Teams-besked. En kollega klikker på linket i god tro. JavaScripten kører og omdirigerer brugeren til en falsk loginside, hvor vedkommende afgiver sine adgangsoplysninger til angriberen.
Ondsindet QR-kode eller kort URL
En angriber skjuler det ondsindede marimo-link bag en URL-forkorter eller QR-kode og distribuerer det fx på et fagligt arrangement eller via sociale medier. En medarbejder scanner koden med sin telefon eller laptop, og angrebet udføres automatisk ved sideindlæsning — uden at brugeren aner, at noget er galt.
Ofte stillede spørgsmål
Skal jeg være bekymret, hvis marimo kun kører lokalt på min computer?
Hvis marimo udelukkende kører på din egen computer og ikke er tilgængeligt for andre via netværket, er risikoen meget lav. En angriber skal have mulighed for at sende et ondsindet link til en bruger med adgang til serveren. Vi anbefaler dog stadig at opdatere for en sikkerheds skyld.
Kan jeg se, om jeg allerede er blevet angrebet?
Det kan være svært at opdage uden teknisk overvågning. Se efter usædvanlige aktiviteter i marimo — fx notebooks der er ændret eller slettet uden grund, eller ukendte logins. Kontakt os, hvis du er bekymret for, om din server kan have været kompromitteret.
Hvad er cross-site scripting (XSS) egentlig?
XSS er en teknik, hvor en angriber sniger skadelig kode ind på en ellers legitim hjemmeside eller webapplikation. Koden kører i offerets browser og kan fx stjæle loginoplysninger eller overtage brugerens session — alt imens brugeren tror, de er på en sikker side.
Er det svært for en angriber at udnytte denne sårbarhed?
Selve angrebet er teknisk set ikke særlig kompliceret. Angriberen skal blot konstruere et specialdesignet link og få en bruger til at klikke på det. Det kræver ingen adgangskode eller særlig adgang til systemet. Derfor er det vigtigt at opdatere hurtigt og gøre medarbejderne opmærksomme på risikoen.
Hjælper det at bruge marimo bag et login?
Et login mindsker angrebsoverfladen, fordi færre personer kan tilgå serveren. Men det løser ikke sårbarheden i sig selv — en angriber kan stadig sende et ondsindet link til en bruger, der er logget ind. Opdatering er den eneste rigtige løsning.
Ramte produkter
CVSS-detaljer
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N
CWE-svaghedstyper
Original NVD-beskrivelse (engelsk)
marimo before 0.23.9 contains a reflected cross-site scripting vulnerability in the notebook page that allows unauthenticated attackers to inject arbitrary JavaScript by exploiting improper escaping of single quotes in the file query parameter reflected into an inline JavaScript string literal. Attackers can craft a malicious link with a payload beginning with __new__ to bypass the 404 check and inject JavaScript into the page, which executes without Content-Security-Policy restrictions in the origin of a victim’s marimo server.
Brug for hjælp med jeres sikkerhed?
Vi hjælper SMV’er med at omsætte trusler som denne til konkrete handlingsplaner.
