CVE-2019-25754: SQL-injektion i Joomla vRestaurant 1.9.4
SQL-indsprøjtning i Joomla-komponenten vRestaurant 1.9.4 lader uautoriserede hente data fra databasen. Fjern eller isolér komponenten nu.
Hvad er det?
Sårbarheden er en SQL-indsprøjtning (SQL injection), en teknik hvor en angriber sender snedigt formuleret tekst ind i et inputfelt, så teksten bliver udført som en kommando i virksomhedens database i stedet for at blive behandlet som almindelig data. I dette tilfælde ligger fejlen i Joomla-komponenten vRestaurant version 1.9.4, som bruges til at vise restaurantmenuer på hjemmesider. Fejlen sidder i parameteren keysearch, som sendes via en POST-forespørgsel til endpointet menu-listing-layout. Et endpoint er den adresse på hjemmesiden, som modtager og behandler forespørgslen. Ved at indsætte skadelig SQL-kode i keysearch kan en angriber få databasen til at udlevere tabelnavne og andet indhold, uden at kende et brugernavn eller kodeord.
Hvem rammer det?
Det rammer virksomheder, foreninger og kommunale institutioner, der driver en Joomla-baseret hjemmeside med komponenten vRestaurant i version 1.9.4 eller tidligere installeret, typisk restauranter, cafeer, kantiner eller andre med en digital menu. Er komponenten ikke installeret, er I ikke berørt af denne konkrete sårbarhed.
Hvad kan ske?
En angriber kan uden login sende forespørgsler til hjemmesiden og trække data ud af databasen, for eksempel kundeoplysninger, bestillinger, administratorkonti eller andre tabeller, der ligger i samme database som vRestaurant. Da sårbarheden ikke giver mulighed for at ændre eller slette data direkte, handler risikoen primært om læk af oplysninger, ikke om at hjemmesiden går ned eller bliver ødelagt.
Hvor alvorligt er det?
CVSS-scoren er 8,2 ud af 10, hvilket er alvorligt. Angrebet kræver ikke login og ingen handling fra en bruger, det kan udføres direkte over internettet med en simpel forespørgsel. Konsekvensen er høj risiko for læk af fortrolige data, mens sårbarheden ikke giver mulighed for at ændre systemer eller lukke dem ned. Der findes en detaljeret teknisk beskrivelse af, hvordan angrebet udføres, hvilket øger sandsynligheden for, at der findes eller hurtigt kan laves færdige angrebsværktøjer.
Hvad gør jeg nu?
Vi anbefaler følgende rækkefølge:
- Undersøg om jeres Joomla-side har komponenten vRestaurant installeret, og tjek versionsnummeret i administrationspanelet.
- Er komponenten ikke i aktiv brug, deaktivér eller afinstallér den med det samme.
- Er komponenten nødvendig, spærr adgangen til endpointet menu-listing-layout via en webapplikationsfirewall eller på webserverniveau, indtil en løsning findes.
- Gennemgå webserverens logfiler for POST-forespørgsler til menu-listing-layout med usædvanligt indhold i keysearch-parameteren.
- Skift adgangskoder til database og administrationskonti, hvis I finder tegn på misbrug.
- Er I i tvivl om, hvorvidt jeres side er sårbar, eller om der allerede er sket noget, så hent hjælp udefra til en teknisk gennemgang.
Ingen opdatering findes: handl inden for dage
Vi anbefaler, at komponenten vRestaurant fjernes eller isoleres, da der ikke findes en officiel rettelse fra leverandøren. Det er ikke forsvarligt at vente, da angrebet kan udføres uden login og uden brugerinteraktion. Har I ikke mulighed for at afinstallere komponenten straks, bør adgangen til det sårbare endpoint blokeres midlertidigt, mens en permanent løsning findes.
Tidslinje
Konkrete eksempler
Restaurantkæde med digital menu på Joomla
En dansk restaurantkæde bruger Joomla med vRestaurant til at vise menuer og tage imod bordreservationer online. En angriber sender en forfalsket forespørgsel til søgefunktionen på menusiden og får derved adgang til at læse tabeller i databasen, herunder kundeoplysninger fra reservationssystemet. Kæden opdager først problemet, da de gennemgår logfiler efter at være blevet gjort opmærksom på sårbarheden.
Ofte stillede spørgsmål
Hvordan finder vi ud af, om vi bruger vRestaurant?
Log ind på jeres Joomla-administrationspanel og tjek listen over installerede komponenter under Extensions. Står vRestaurant der med version 1.9.4 eller tidligere, er I berørt.
Kan vi vente til efter weekenden med at gøre noget?
Nej. Angrebet kræver hverken login eller brugerhandling og kan udføres automatisk af scripts, der leder efter sårbare sider. Vi anbefaler at reagere samme dag, I opdager komponenten.
Findes der en opdatering, vi bare kan installere?
Der er ikke offentliggjort en officiel rettelse fra leverandøren af vRestaurant. Løsningen er derfor at fjerne komponenten eller blokere adgangen til det sårbare endpoint, indtil en alternativ løsning findes.
Hvordan ser vi, om nogen allerede har udnyttet sårbarheden?
Gennemgå webserverens logfiler for POST-forespørgsler til adressen menu-listing-layout, hvor parameteren keysearch indeholder tegn som citationstegn, UNION eller SELECT. Det kan tyde på et forsøg på SQL-indsprøjtning.
Skal vi anmelde det, hvis vi finder tegn på misbrug?
Er der læk af personoplysninger, skal I vurdere, om det udløser anmeldepligt efter databeskyttelsesforordningen til Datatilsynet inden for 72 timer. Vi anbefaler at få en juridisk og teknisk vurdering hurtigt, hvis I finder spor af misbrug.
CVSS-detaljer
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:L/A:N
CWE-svaghedstyper
Original NVD-beskrivelse (engelsk)
Joomla Component vRestaurant 1.9.4 contains an SQL injection vulnerability that allows unauthenticated attackers to execute arbitrary SQL queries by injecting malicious code through the keysearch parameter. Attackers can send POST requests to the menu-listing-layout endpoint with crafted SQL payloads in the keysearch parameter to extract database table names and sensitive information from the database.
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.