CVE-2019-25750: SQL-fejl i Joomla J-MultipleHotelReservation
Sårbarhed i Joomla-komponenten J-MultipleHotelReservation lader angribere hente databaseoplysninger uden login. Deaktivér komponenten, indtil den er rettet.
Hvad er det?
CVE-2019-25750 er en SQL-indsprøjtning i Joomla-komponenten J-MultipleHotelReservation version 6.0.7. SQL-indsprøjtning betyder, at en angriber kan snige egne databasekommandoer ind gennem et inputfelt, som webstedet ikke tjekker ordentligt. I dette tilfælde sender angriberen et POST-kald til funktionen search-hotels med en manipuleret værdi i parameteren hotel_id. Ved at bruge SQL-kommandoen UNION SELECT kan angriberen få systemet til at udlevere data fra andre tabeller i databasen, for eksempel tabelnavne og kolonneindhold.
Hvem rammer det?
Sårbarheden rammer websteder bygget på Joomla, som har installeret komponenten J-MultipleHotelReservation i version 6.0.7. Det er typisk hoteller, bed and breakfasts, feriecentre og bureauer, der bruger komponenten til at tage imod online reservationer. Alle installationer med den offentligt tilgængelige søgefunktion for hoteller er potentielt sårbare, uanset hvor mange brugere webstedet ellers har.
Hvad kan ske?
En angriber kan uden at logge ind hente følsomme oplysninger fra databasen, herunder gæstedata, bookinger, kontaktoplysninger og i værste fald administratoroplysninger, hvis de ligger i samme database. For en dansk hotelvirksomhed betyder det risiko for læk af kundedata, som kan udløse pligt til at anmelde bruddet til Datatilsynet efter databeskyttelsesforordningen. Angriberen kan ikke ændre eller slette data med denne konkrete sårbarhed, men kan bruge de udtrukne oplysninger til videre angreb, for eksempel målrettede phishingmails mod gæster.
Hvor alvorligt er det?
CVSS-score er 8,2 ud af 10, hvilket er alvorligt. Angrebet kræver ikke login og ingen handling fra en bruger, og det kan udføres over internettet med lav teknisk kompleksitet. Konsekvensen er høj for fortrolighed, altså udlæsning af data, men sårbarheden giver ikke mulighed for at ændre data eller lukke systemet ned. Der er ikke oplysninger om, at sårbarheden aktivt udnyttes i angreb, men den tekniske beskrivelse er detaljeret nok til, at et angreb kan gennemføres af en person med begrænset erfaring.
Hvad gør jeg nu?
Følg disse trin, hvis jeres website bruger Joomla med hotelreservationer:
- Tjek om komponenten J-MultipleHotelReservation er installeret, og find versionsnummeret. Er det 6.0.7, er I berørt.
- Deaktivér komponenten eller bloker adgang til endpointet search-hotels, indtil der findes en rettet version.
- Undersøg leverandørens hjemmeside for en opdateret udgave. Der er ikke oplysning om en officiel rettelse pr. offentliggørelsesdatoen.
- Opsæt en regel i jeres webapplikationsfirewall, der blokerer SQL-mønstre som UNION SELECT i parameteren hotel_id.
- Gennemgå webserverens logfiler for usædvanlige POST-kald til search-hotels for at vurdere, om sårbarheden allerede er forsøgt udnyttet.
- Hent hjælp udefra, hvis I ikke selv kan vurdere omfanget, eller hvis I finder tegn på, at data allerede er udtrukket.
Håndtér inden for 48 timer
Vi anbefaler, at I straks tjekker, om jeres Joomla-website bruger J-MultipleHotelReservation, og deaktiverer komponenten eller søgefunktionen, indtil der findes en rettet version. Det er ikke forsvarligt at vente, da angrebet kan udføres uden login af enhver med adgang til internettet. Har I ikke selv ressourcer til at vurdere eller lukke hullet, bør I hente ekstern hjælp, særligt hvis komponenten håndterer gæsteoplysninger.
Tidslinje
Konkrete eksempler
Bed and breakfast med online booking
Et dansk bed and breakfast bruger Joomla med J-MultipleHotelReservation til at tage imod bookinger via egen hjemmeside. En angriber sender manipulerede søgeforespørgsler til search-hotels og trækker gæsteoplysninger og bookingdata ud af databasen. Virksomheden opdager først hændelsen, da gæster begynder at modtage målrettede phishingmails med kendskab til deres bookingdetaljer.
Ofte stillede spørgsmål
Hvordan finder vi ud af, om vi bruger den sårbare komponent?
Log ind i Joomla-administrationen og tjek listen over installerede komponenter under Udvidelser. Søg efter J-MultipleHotelReservation og se versionsnummeret. Er det 6.0.7, er I berørt.
Kan vi vente med at gøre noget til weekenden?
Nej. Angrebet kræver hverken login eller brugerhandling og kan udføres automatisk. Jo længere komponenten er tilgængelig, jo større er risikoen for, at data er udtrukket, inden I reagerer.
Findes der en opdatering, vi bare kan installere?
Der er ikke oplysninger om en officiel rettelse fra leverandøren pr. offentliggørelsesdatoen. Indtil videre er den sikreste løsning at deaktivere komponenten eller blokere adgangen til søgefunktionen.
Hvordan tjekker vi, om sårbarheden allerede er udnyttet?
Gennemgå webserverens logfiler for POST-kald til search-hotels med usædvanligt lange eller mistænkelige værdier i hotel_id-parameteren, især forekomster af ordene UNION og SELECT.
Skal vi anmelde det til Datatilsynet?
Hvis I finder tegn på, at persondata faktisk er blevet udtrukket, kan I have pligt til at anmelde bruddet efter databeskyttelsesforordningen. Vi anbefaler, at I får en juridisk vurdering, hvis I finder spor af misbrug.
Rammer det kun store hoteller?
Nej. Sårbarheden rammer alle websteder med komponenten, uanset virksomhedens størrelse. Mindre bed and breakfasts og feriecentre med samme Joomla-opsætning er lige så udsatte.
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 J-MultipleHotelReservation 6.0.7 contains an SQL injection vulnerability that allows unauthenticated attackers to execute arbitrary SQL queries by injecting malicious code through the hotel_id parameter. Attackers can send POST requests to the search-hotels endpoint with crafted SQL UNION SELECT statements to extract sensitive database information including table names and column data.
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.