CVE-2017-20255: SQL-fejl i Joomla JB Visa 1.0
Kritisk SQL-injektionsfejl i Joomla-komponenten JB Visa 1.0 giver angribere adgang til hele din database uden login.
Hvad er det?
CVE-2017-20255 er en SQL-injektionssårbarhed (en fejl hvor angribere kan sende skadelige databasekommandoer) i Joomla-komponenten JB Visa version 1.0. Fejlen sidder i parameteret visatype, som ikke tjekker om det modtagne input er sikkert. En angriber kan sende en særligt udformet webadresse til din hjemmeside og dermed få databasen til at udlevere oplysninger, som aldrig var tiltænkt offentligheden — herunder brugernavne, adgangskoder og andre følsomme data. Det kræver ingen forudgående login eller særlige rettigheder at udnytte fejlen.
Hvem rammer det?
Sårbarheden rammer alle hjemmesider og webshops der kører Joomla og har installeret tilføjelsen JB Visa 1.0. Det er typisk virksomheder inden for rejse- og visabranchen, der bruger denne komponent til at håndtere visaansøgninger eller bookinger. Hvis du ikke ved om du bruger JB Visa, kan din webmaster eller it-leverandør tjekke det for dig under Joomla-administrationspanelet under Udvidelser.
Hvad kan ske?
Hvis en angriber udnytter denne fejl, kan vedkommende:
- Udtrække alle brugernavne og adgangskoder fra din database
- Tilgå kundedata, ordrehistorik og andre fortrolige oplysninger
- Potentielt overtage administratorkontoen på din Joomla-hjemmeside
- Sælge eller misbruge de stjålne data til phishing eller identitetstyveri
Fortroligheden af dine data er i høj risiko. Angribere kan ikke direkte slette eller ændre data via denne specifikke fejl, men de kan bruge de stjålne oplysninger som springbræt til yderligere angreb.
Hvor alvorligt er det?
Sårbarheden er vurderet til CVSS-score 8.2 ud af 10, hvilket placerer den i kategorien Alvorlig. Den er særligt bekymrende fordi:
- Den kan udnyttes direkte over internettet uden forudgående adgang
- Den kræver ingen login eller særlige rettigheder
- Den kræver ingen handling fra dig eller dine brugere for at virke
- Konsekvensen er høj eksponering af fortrolige data
En angriber med basale tekniske færdigheder kan udnytte fejlen ved blot at sende en GET-forespørgsel (en normal webanmodning) med ondsindet indhold.
Hvad gør jeg nu?
Følg disse trin hurtigst muligt for at beskytte din hjemmeside:
- Tjek om du bruger JB Visa 1.0: Log ind i dit Joomla-administrationspanel og gå til Udvidelser → Administrer. Søg efter ‘JB Visa’ eller ‘bookpro’.
- Deaktivér eller afinstallér komponenten midlertidigt: Hvis du finder JB Visa, deaktivér den straks indtil en sikker opdatering er tilgængelig. Det er bedre at have en ikke-fungerende funktion end en kompromitteret hjemmeside.
- Skift adgangskoder: Skift adgangskoder til alle Joomla-administratorkonti samt adgangskoder til databasen. Gør det samme for eventuelle andre tjenester, der bruger samme adgangskoder.
- Kontrollér dine logs: Bed din webmaster om at gennemgå serverlogfiler for usædvanlige forespørgsler til index.php med parametrene option=com_bookpro og view=popup. Det kan afsløre om nogen allerede har forsøgt at udnytte fejlen.
- Kontakt komponentudvikleren: Undersøg om der findes en opdateret version af JB Visa, og installér den så snart den er tilgængelig.
- Overvej en WAF: En Web Application Firewall (et sikkerhedslag foran din hjemmeside) kan blokere SQL-injektionsforsøg automatisk, mens du venter på en patch.
Handle inden for 24-48 timer
Vi anbefaler at du straks deaktiverer JB Visa-komponenten på din Joomla-hjemmeside, indtil en officiel opdatering er tilgængelig. Sårbarheden er nem at udnytte og kræver ingen teknisk viden fra angriberens side. Kontakt din webmaster eller it-leverandør i dag og bed dem gennemgå serverlogfiler for tegn på misbrug. Overvej desuden at indføre en Web Application Firewall som et ekstra sikkerhedslag på din hjemmeside fremover.
Tidslinje
Konkrete eksempler
Udtræk af administratoroplysninger
En angriber besøger din Joomla-hjemmeside og sender en manipuleret webadresse til index.php med et SQL-kommando skjult i visatype-parameteret. Databasen reagerer ved at returnere alle brugernavne og krypterede adgangskoder fra administratortabellen. Angriberen kan derefter forsøge at knække adgangskoderne og overtage din hjemmeside.
Masseudtræk af kundedata
En angriber bruger et automatiseret scanningsprogram til at identificere alle Joomla-hjemmesider med JB Visa installeret og sender systematisk SQL-forespørgsler til dem. På få minutter har angriberen udtrukket navne, e-mailadresser og eventuelle betalingsoplysninger fra din kundeliste og videresolgt dem på et mørkt forum (dark web).
Springbræt til videre angreb
Efter at have stjålet databaseoplysninger via JB Visa-fejlen finder angriberen databasebrugerens adgangskode i klartekst. Denne adgangskode bruges til at logge direkte ind på din databaseserver og plante ondsindet kode i andre dele af hjemmesiden, som eksempelvis omdirigerer dine besøgende til falske betalingssider.
Ofte stillede spørgsmål
Hvad er SQL-injektion, og hvorfor er det farligt?
SQL-injektion er en angrebsmetode, hvor en angriber indsætter skadelige databasekommandoer i et felt på din hjemmeside — i dette tilfælde i webadressen. Hvis hjemmesiden ikke filtrerer inputtet, sender den kommandoen videre til databasen, som så adlyder. Det svarer til at nogen sniger sig ind i dit regnskabsprogram ved at skrive et trick-password. Resultatet er at angriberen kan læse, ændre eller i nogle tilfælde slette data.
Kan jeg se om nogen allerede har angrebet min hjemmeside?
Det er muligt, men kræver at du eller din webmaster gennemgår serverlogfiler. I dette tilfælde skal I lede efter GET-forespørgsler til index.php som indeholder option=com_bookpro og view=popup kombineret med usædvanlige tegn som enkeltcitater (‘), bindestreger (–) eller SQL-nøgleord som SELECT eller UNION. Kontakt os, hvis du har brug for hjælp til at tolke logfilerne.
Hvad sker der hvis jeg deaktiverer JB Visa-komponenten?
Hvis du deaktiverer komponenten, vil den funktionalitet som JB Visa leverer — typisk visaansøgningsformularer eller bookingpopups — holde op med at virke for dine besøgende. Det er en midlertidig ulempe, men klart at foretrække frem for risikoen for at få din database kompromitteret. Du kan genetablere funktionaliteten, så snart en sikker opdatering er installeret.
Er jeg forpligtet til at anmelde et eventuelt databrud?
Ja, hvis du opbevarer personoplysninger om kunder eller medarbejdere og har grund til at tro at de er blevet tilgået af uvedkommende, har du som udgangspunkt pligt til at anmelde det til Datatilsynet inden for 72 timer. Det gælder under GDPR (EU’s databeskyttelsesforordning). Kontakt eventuelt en juridisk rådgiver, hvis du er i tvivl om din konkrete situation.
Findes der allerede en opdatering til JB Visa?
På tidspunktet for offentliggørelsen af denne sårbarhed er der ikke bekræftet en officiel patch fra udvikleren af JB Visa 1.0. Vi anbefaler at du holder øje med komponentens officielle kanal og Joomla’s udvidelsesdatabase (JED) for opdateringer. Kontakt os, hvis du har brug for hjælp til at finde et alternativ eller implementere en midlertidig løsning.
Ramte produkter
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 JB Visa 1.0 contains an SQL injection vulnerability that allows unauthenticated attackers to execute arbitrary SQL queries by injecting malicious code through the visatype parameter. Attackers can send GET requests to index.php with the option=com_bookpro and view=popup parameters, injecting SQL commands in the visatype parameter to extract sensitive database information including credentials and table contents.
Brug for hjælp med jeres sikkerhed?
Vi hjælper SMV’er med at omsætte trusler som denne til konkrete handlingsplaner.
