CVE-2026-12360: SQL-indsprøjtning i WordPress-plugin JetEngine
SQL-indsprøjtning i WordPress-plugin’et JetEngine (CVE-2026-12360) lader angribere uden login læse data fra jeres database. Opdatér JetEngine nu.
Hvad er det?
Sårbarheden er en SQL-indsprøjtning (CWE-89), hvor en angriber snyder databasen til at udføre kommandoer, den ikke burde. Fejlen sidder i JetEngine-pluginnet til WordPress, i funktionen listing_load_more, som henter flere resultater, når en besøgende klikker ‘indlæs mere’ på en liste over boliger, kurser eller andre poster. Funktionen bruger en parameter kaldet filtered_query, som med vilje er undtaget fra en sikkerhedstjek (HMAC-signatur), fordi den skal kunne tilpasses af forsiden. Værdier i denne parameter bliver dog ikke renset, før de sættes ind i databasekaldet. Det gør det muligt at gætte sig frem til data i databasen bit for bit, ved at sende specielt formede forespørgsler og aflæse svartider eller sand/falsk-svar.
Hvem rammer det?
Alle WordPress-sider med JetEngine installeret i version 3.8.10.1 eller ældre. Det gælder typisk virksomheder, der bruger JetEngine til at bygge dynamiske oversigter, for eksempel boligannoncer, kursuslister, medlemslister eller produktkataloger med et ‘indlæs mere’-filter. Er der en offentlig Listing Grid-side på hjemmesiden, er den relevant for denne sårbarhed, uanset om der kræves login for at se selve siden.
Hvad kan ske?
En angriber kan uden at logge ind sende manipulerede forespørgsler til hjemmesiden og trække oplysninger ud af databasen, for eksempel kundeoplysninger, brugernavne, adgangskodehash eller andre data, der ligger i samme database som WordPress. Angrebet ændrer ikke data og lukker ikke hjemmesiden ned, men det kan lække fortrolige oplysninger, hvilket i Danmark kan udløse en anmeldelsespligt efter databeskyttelsesreglerne, hvis persondata er involveret.
Hvor alvorligt er det?
CVSS-scoren er 7,5 ud af 10, alvorlig. Angrebet kræver hverken login eller nogen handling fra en bruger, og det kan udføres over internettet med lav kompleksitet. Konsekvensen er begrænset til fortrolighed, altså at data kan læses, mens data ikke kan ændres eller slettes, og hjemmesiden fortsætter med at virke. Der er ingen oplysninger om, at sårbarheden aktivt bliver udnyttet, men den er offentligt beskrevet ned til parameternavn og angrebsmetode, hvilket gør den let at afprøve.
Hvad gør jeg nu?
Sådan lukker I hullet, hvis jeres WordPress-side bruger JetEngine:
- Opdatér JetEngine til den nyeste version fra WordPress-pluginarkivet eller Crocoblocks eget site, hvor sårbarheden er rettet efter version 3.8.10.1.
- Kan opdateringen ikke ske straks, så deaktivér midlertidigt Listing Grid-funktioner med ‘indlæs mere’, eller sæt siden bag en webapplikationsfirewall, der blokerer SQL-indsprøjtningsforsøg.
- Gennemgå server- og adgangslogs for usædvanligt mange AJAX-kald til listing_load_more, især med lange eller mistænkelige parameterværdier.
- Skift adgangskoder for administratorer og databasebrugere, hvis I finder tegn på misbrug.
- Vurdér, om der er lækket persondata, og om det udløser anmeldelsespligt til Datatilsynet.
- Er I i tvivl om, hvorvidt jeres opsætning er ramt, eller om der allerede er sket misbrug, så få en ekstern gennemgang af loggene og databasen.
Opdatér inden for få dage
Vi anbefaler, at I opdaterer JetEngine til nyeste version så hurtigt som muligt, da angrebet ikke kræver login og kan gennemføres automatiseret. Det er kun forsvarligt at vente, hvis jeres site slet ikke bruger Listing Grid-funktionen eller pluginnet er deaktiveret. Er I i tvivl om, hvilken version I kører, bør I tjekke det i dag frem for at vente til en planlagt opdateringsrunde.
Tidslinje
Konkrete eksempler
Ejendomsmæglers boligoversigt
Et dansk ejendomsmæglerfirma bruger JetEngine til at vise en filtrerbar liste over boliger på hjemmesiden med et ‘indlæs mere’-filter. En angriber optager den AJAX-forespørgsel, som knappen sender, ændrer filtered_query-parameteren og sender gentagne forespørgsler for at aflæse databasens indhold bit for bit. Over tid lykkes det angriberen at udtrække tabeller med kundehenvendelser og kontaktoplysninger, uden at have logget ind på siden.
Ofte stillede spørgsmål
Hvordan finder vi ud af, om vi bruger JetEngine?
Gå ind i WordPress-administrationen under Plugins, og se om JetEngine står på listen, samt hvilken version der er installeret. Er versionen 3.8.10.1 eller ældre, er I berørt.
Kan vi vente med opdateringen til den næste planlagte vedligeholdelse?
Det frarådes, fordi angrebet kan udføres uden login og over internettet. Vi anbefaler at opdatere inden for få dage, ikke til næste planlagte vindue.
Kræver angrebet, at nogen klikker på et link eller åbner en fil?
Nej. Angrebet sker direkte mod hjemmesidens AJAX-funktion og kræver hverken brugerinteraktion eller login.
Kan angriberen ændre eller slette data på vores side?
Nej, sårbarheden giver kun mulighed for at læse data fra databasen. Hjemmesiden og dens data forbliver intakte, men fortrolige oplysninger kan blive læst af en uvedkommende.
Skal vi anmelde noget til Datatilsynet?
Kun hvis I finder konkrete tegn på, at persondata faktisk er blevet udtrukket. Vi anbefaler at gennemgå logs for mistænkelig aktivitet, før I vurderer anmeldelsespligten.
Er andre WordPress-plugins eller selve WordPress ramt af denne sårbarhed?
Nej, sårbarheden findes specifikt i JetEngine-pluginnet, ikke i WordPress-kernen eller andre plugins, medmindre de også bygger på samme kodebase.
CVSS-detaljer
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
CWE-svaghedstyper
Original NVD-beskrivelse (engelsk)
The JetEngine plugin for WordPress is vulnerable to SQL injection in all versions up to and including 3.8.10.1. The listing_load_more AJAX handler accepts a filtered_query parameter that is intentionally excluded from the HMAC query signature check to support front-end filter integration. However, meta_query row values within filtered_query are not sanitized before being merged into SQL construction. This makes it possible for unauthenticated attackers to perform time-based or boolean blind SQL injection by appending a malicious meta_query value to a Load More AJAX request captured from any public Listing Grid page.
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.