CVE-2026-67341: Kritisk autorisationsfejl i ArcadeDB
ArcadeDB før version 26.7.2 springer autorisationstjek over ved DEFINE FUNCTION, så alle med databaseadgang kan køre egen JavaScript-kode. Opdatér til 26.7.2.
Hvad er det?
CVE-2026-67341 er en fejl i databasesystemet ArcadeDB, hvor systemet ikke kontrollerer, om en bruger må oprette scriptfunktioner. Kommandoen SQL DEFINE FUNCTION med sprogvalget LANGUAGE js skal normalt kun kunne bruges af administratorer, fordi den lader en bruger definere og køre eget JavaScript-programmeringssprog inde i databasen. Fejlen betyder, at kontrollen mangler, så en bruger uden administratorrettigheder kan definere og afvikle sin egen kode direkte på databaseserveren. Fejltypen kaldes CWE-863, forkert autorisation, hvilket vil sige at systemet tjekker forkert eller ikke tjekker overhovedet, hvem der må udføre en given handling.
Hvem rammer det?
Det rammer virksomheder og kommuner, der kører ArcadeDB i version ældre end 26.7.2. Det gælder både selvhostede installationer og opsætninger, hvor flere brugere eller applikationer deler samme databaseserver med forskellige rettighedsniveauer. Er ArcadeDB kun tilgængelig for et enkelt betroet system uden delt brugeradgang, er risikoen mindre, men stadig til stede hvis en angriber først får fodfæste et andet sted i netværket.
Hvad kan ske?
En bruger med almindelig databaseadgang kan sende en DEFINE FUNCTION-kommando og dermed få serveren til at køre den JavaScript-kode, brugeren selv har valgt. I praksis giver det mulighed for at læse og ændre alle data i databasen, oprette nye administratorkonti, eller bruge databaseserveren som springbræt videre ind i netværket. For en dansk virksomhed kan det betyde tab af kundedata, forretningshemmeligheder eller adgang, der senere bruges til afpresning.
Hvor alvorligt er det?
CVSS-scoren er 9,8 ud af 10, kritisk. Angrebet kræver ikke gyldig administratoradgang, kun almindelig databaseforbindelse, og der skal ikke ske noget fra en bruger, som en klik på et link. Angrebet kan udføres over netværket uden særlig teknisk kompleksitet. Der er pr. offentliggørelsen ikke oplysninger om, at fejlen aktivt bliver udnyttet, men den lave kompleksitet og fraværet af krav til rettigheder gør den attraktiv at udnytte, når den bliver kendt bredt.
Hvad gør jeg nu?
Følg disse skridt for at lukke hullet og begrænse skaden, hvis noget allerede er sket.
- Opgradér ArcadeDB til version 26.7.2 eller nyere, hvor autorisationstjekket er rettet.
- Gennemgå logs for uventede DEFINE FUNCTION-kald eller usædvanlig scriptaktivitet fra brugere, der normalt ikke bruger den funktion.
- Begræns netværksadgang til ArcadeDB, så kun betroede systemer og administratorer kan nå databaseporten.
- Gennemgå brugerrettigheder i databasen, og fjern unødvendige rettigheder til at oprette scriptfunktioner.
- Hvis I ikke selv kan verificere, om opgraderingen er gennemført korrekt, eller om der er tegn på misbrug, bør I hente hjælp fra en it-sikkerhedsrådgiver.
Opdatér inden for 7 dage
Vi anbefaler, at I opgraderer ArcadeDB til version 26.7.2 hurtigst muligt, især hvis flere brugere eller applikationer har adgang til databasen. Det er kun forsvarligt at vente, hvis ArcadeDB kører fuldt isoleret uden delt brugeradgang og uden forbindelse til internettet, og selv da bør opgraderingen planlægges inden for kort tid. Er I i tvivl om, hvilke systemer der bruger ArcadeDB, bør I få det kortlagt som første skridt.
Tidslinje
Konkrete eksempler
Intern medarbejder med begrænset adgang
En dansk virksomhed lader en udviklerafdeling tilgå ArcadeDB til et internt projekt med kun læserettigheder. En medarbejder sender en DEFINE FUNCTION-kommando med JavaScript-kode og opnår derved fuld kontrol over databaseserveren. Medarbejderen kan nu læse kundedata fra andre afdelinger og oprette en administratorkonto uden at det bliver bemærket med det samme.
Ofte stillede spørgsmål
Hvordan finder vi ud af, om vi bruger den sårbare version af ArcadeDB?
Tjek versionsnummeret på jeres ArcadeDB-installation, enten via administrationskonsollen eller opstartslogfilen. Alle versioner før 26.7.2 er berørt.
Kan vi vente til weekenden med at opdatere?
Hvis databasen er tilgængelig for flere brugere eller nås fra andre systemer i netværket, bør opgraderingen ske hurtigere end det. Er den fuldt isoleret og kun brugt af et enkelt betroet system, kan I planlægge opdateringen som en almindelig driftsopgave inden for en uges tid.
Er vores virksomhed ramt, hvis vi kun bruger ArcadeDB internt?
Ja, fejlen kræver ikke adgang udefra. Enhver bruger eller applikation med almindelig databaseadgang internt kan udnytte den, hvis rettighederne ikke er begrænset.
Skal vi anmelde noget, hvis vi finder tegn på misbrug?
Hvis I finder tegn på, at persondata er blevet tilgået uretmæssigt, skal I vurdere anmeldelsespligt efter databeskyttelsesreglerne og eventuelt kontakte Datatilsynet inden for 72 timer.
Hvad koster det at vente med opgraderingen?
Ventetid betyder, at alle med databaseadgang fortsat kan køre egen kode på serveren. Konsekvensen kan være tab af data, ændrede rettigheder i systemet eller misbrug af serveren som springbræt til andre systemer.
Løser opgraderingen problemet fuldstændigt?
Ja, version 26.7.2 indfører det manglende autorisationstjek på DEFINE FUNCTION-kommandoen. I bør desuden gennemgå eksisterende brugerrettigheder for at sikre, at ingen har fået unødvendig adgang, mens fejlen var til stede.
CVSS-detaljer
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
CWE-svaghedstyper
Original NVD-beskrivelse (engelsk)
ArcadeDB versions before 26.7.2 fail to enforce scripting authorization checks on the SQL DEFINE FUNCTION statement with LANGUAGE js. Attackers with database access can execute arbitrary JavaScript code by submitting DEFINE FUNCTION statements, bypassing security controls intended to restrict scripting to administrators.
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.