CVE-2026-81735: Kritisk sårbarhed i UI-TARS-desktop
Kritisk sårbarhed i UI-TARS-desktop giver angribere mulighed for at køre vilkårlige kommandoer på din server uden at logge ind.
Hvad er det?
UI-TARS-desktop er et AI-agent-program, der bl.a. bruges til at styre computere via kommandoer. Programmet indeholder en webserver-komponent kaldet mcp-http-server, som som standard lyttede på alle netværksgrænseflader (dvs. var tilgængelig fra hele netværket og internettet) i stedet for kun den lokale maskine.
Derudover krævede serveren ingen adgangskode eller login — godkendelse var frivillig og blev aldrig aktiveret i standardopsætningen. Det betød, at enhver der kunne nå porten, kunne sende kommandoer direkte til programmet og få dem udført på serveren.
Hvem rammer det?
Sårbarheden rammer virksomheder og enkeltpersoner, der har installeret og kører UI-TARS-desktop — særligt komponenterne @agent-infra/mcp-server-commands og @agent-infra/mcp-server-filesystem. Hvis din maskine med UI-TARS-desktop er tilgængelig fra internettet eller fra et delt netværk (fx et kontor- eller gæstenetværk), er risikoen meget høj. Pakkeversionen er 1.2.4 — men da fejlen blev rettet i en enkelt kode-ændring (commit) uden at versionsnummeret blev opdateret, er det ikke nok at tjekke versionsnummeret alene.
Hvad kan ske?
En angriber, der kan nå den åbne port på din server, kan uden at logge ind:
- Køre vilkårlige systemkommandoer med de samme rettigheder som den bruger, der kører UI-TARS-desktop — fx slette filer, installere malware eller oprette nye brugerkonti.
- Læse og skrive filer på serverens filsystem, inkl. følsomme dokumenter, adgangskoder og konfigurationsfiler.
- Etablere vedvarende adgang (bagdøre) til systemet, så angriberen kan vende tilbage selv efter genstart.
- Bruge din server som springbræt til at angribe andre systemer på dit netværk.
Hvor alvorligt er det?
Denne sårbarhed er vurderet til den højest mulige CVSS-score: 10 ud af 10 (Kritisk). Det skyldes, at:
- Angrebet kan udføres over netværket uden fysisk adgang.
- Det kræver ingen særlige tekniske færdigheder og ingen adgangskode.
- Angriberen opnår fuld kontrol over kommandoer og filer på systemet.
- Fejlen sidder i standardopsætningen, så alle berørte installationer er sårbare uden aktiv fejlkonfiguration fra brugerens side.
Den underliggende fejltype (CWE-306) handler om manglende godkendelse til kritiske funktioner — altså at programmet tillader adgang til farlige funktioner uden at kræve login.
Hvad gør jeg nu?
Hvis du eller din IT-ansvarlige kører UI-TARS-desktop, skal du handle omgående. Her er prioriterede trin:
- Stop serveren øjeblikkeligt — hvis du ikke aktivt bruger UI-TARS-desktops server-funktioner, skal du slukke for mcp-http-server-komponenten med det samme.
- Opdatér kildekoden til nyeste version — rettelsen ligger i commit c2ad42e3eb9b27830db41a3e6f51ca7179d9b168. Versionsnummeret (1.2.4) er ikke ændret, så du skal sikre dig, at din installation inkluderer denne specifikke ændring. Kontakt din IT-leverandør eller tjek GitHub-repositoriet direkte.
- Bloker porten i din firewall — sørg for, at den port, som mcp-http-server lytter på, ikke er tilgængelig fra internettet eller fra uautoriserede maskiner på dit netværk.
- Gennemgå logfiler — tjek om der har været uventede forbindelser eller kommandoer på serveren, og vurder om systemet kan være kompromitteret.
- Kontakt din IT-sikkerhedspartner — hvis du er i tvivl om din eksponering, eller hvis du mistænker et angreb, bør du få professionel hjælp til at vurdere skaden.
Handle inden for 24 timer
Auroa anbefaler, at du behandler denne sårbarhed som en akut hændelse. Stop serveren, bloker porten i firewall, og sørg for at opdatere til en version af kildekoden, der inkluderer rettelsen. Da versionsnummeret ikke er ændret, er det vigtigt, at du eller din IT-leverandør verificerer, at den konkrete kode-rettelse er på plads — det er ikke nok at tjekke versionsnummeret. Har du ikke kompetencerne internt, så kontakt os for en hurtig gennemgang af din eksponering.
Tidslinje
Konkrete eksempler
Angriber kører ransomware via kommandoserver
En angriber scanner internettet for åbne porte og finder en virksomheds server, der kører mcp-server-commands. Uden at skulle logge ind sender angriberen en HTTP-forespørgsel med en kommando, der downloader og kører et ransomware-program. Alle filer på serveren krypteres, og virksomheden modtager et krav om løsepenge for at få adgang igen.
Indsiderangreb via gæstenetværk
En person med adgang til virksomhedens gæste-Wi-Fi opdager, at en intern server kører UI-TARS-desktop med mcp-server-filesystem tilgængeligt. Via et simpelt script henter personen fortrolige kundedokumenter og økonomiske rapporter direkte fra serverens filsystem — alt sammen uden brugernavn eller adgangskode.
Server bruges som springbræt i netværket
En angriber udnytter kommandoserveren til at køre netværks-scanningsværktøjer på den kompromitterede maskine. Derved kortlægger angriberen resten af virksomhedens interne netværk og identificerer yderligere sårbare systemer — fx en NAS-enhed (netværksdrev) med kundedata — som angriberen herefter angriber indefra, hvor firewallen ikke beskytter.
Ofte stillede spørgsmål
Hvordan ved jeg, om jeg er berørt?
Du er potentielt berørt, hvis du har installeret UI-TARS-desktop og kører komponenterne @agent-infra/mcp-server-commands eller @agent-infra/mcp-server-filesystem. Da fejlen er til stede i pakkeversion 1.2.4 både før og efter rettelsen, skal du tjekke, om din installation inkluderer commit c2ad42e3eb9b27830db41a3e6f51ca7179d9b168. Spørg din IT-leverandør, hvis du er i tvivl.
Er det kun farligt, hvis serveren er tilgængelig fra internettet?
Nej — selvom risikoen er størst ved eksponering mod internettet, er sårbarheden også farlig på interne netværk. Hvis en angriber fx har adgang til dit kontor-Wi-Fi eller et gæstenetværk, og din server lytter på alle grænseflader, kan angrebet stadig gennemføres indefra. Det anbefales at begrænse adgangen via firewall uanset netværkstype.
Kan jeg bare opdatere til version 1.2.4 og så er det løst?
Nej, desværre ikke. Fejlen eksisterer i pakkeversion 1.2.4, og rettelsen er indsat i den samme version via en kode-ændring (commit) uden at versionsnummeret blev opdateret. Du skal derfor sikre dig, at din installation af kildekoden er nyere end commit c2ad42e3eb9b27830db41a3e6f51ca7179d9b168. Kontakt din IT-leverandør eller tjek det direkte i GitHub-repositoriet.
Hvad er det værste, der kan ske, hvis vi ikke handler?
Hvis serveren er tilgængelig fra netværket, kan en angriber uden login overtage fuld kontrol over den maskine, der kører programmet. Det inkluderer adgang til alle filer, mulighed for at installere malware eller ransomware (software der krypterer dine data og kræver løsepenge), og mulighed for at bruge din server til at angribe andre systemer i din virksomhed. Konsekvenserne kan være tab af data, driftsstop og potentielt store økonomiske skader.
Hvad er CWE-306, og hvorfor er det alvorligt?
CWE-306 er en anerkendt kategorisering af en type softwarefejl, der hedder manglende godkendelse til kritiske funktioner. Det betyder, at programmet giver adgang til farlige funktioner — i dette tilfælde at køre systemkommandoer og redigere filer — uden at kræve, at brugeren beviser sin identitet (fx med brugernavn og adgangskode). Det er særligt alvorligt, fordi der ikke er nogen sikkerhedsbarriere at overvinde.
Skal vi anmelde dette til Datatilsynet?
Hvis I behandler personoplysninger på den berørte server, og der er grund til at tro, at uvedkommende har haft adgang, kan I have pligt til at anmelde hændelsen til Datatilsynet inden for 72 timer efter opdagelsen — det følger af GDPR. Kontakt Auroa eller en juridisk rådgiver, hvis I er i tvivl om jeres forpligtelser.
CVSS-detaljer
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H
CWE-svaghedstyper
Original NVD-beskrivelse (engelsk)
startServer.ts in the mcp-http-server package of UI-TARS-desktop defaulted its listen address to ‘::’ when no host was given, so startSseAndStreamableHttpMcpServer bound the Streamable HTTP and SSE MCP transports to every interface, and its authentication middleware was optional: middlewares are applied only when a caller supplies them. The @agent-infra/mcp-server-commands and @agent-infra/mcp-server-filesystem entry points call startSseAndStreamableHttpMcpServer with a host and port alone and pass no middleware, so neither server required a credential. The commands server exposes a run_command tool that hands its caller-supplied command string to promisify(child_process.exec), so any unauthenticated client able to reach the port could run arbitrary commands as the user running the server, and the filesystem server exposed its file read and write tools on the same terms. The listen default became 127.0.0.1 in commit c2ad42e3eb9b27830db41a3e6f51ca7179d9b168; the package version stayed at 1.2.4 across that change, so the boundary is the commit rather than a release.
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.