CVE-2017-20262: SQL-sårbarhed i Joomla Ajax Quiz 1.8
SQL-indsprøjtning i Joomla-komponenten Ajax Quiz 1.8 lader uautoriserede angribere hente data fra databasen. Fjern eller opdatér komponenten.
Hvad er det?
CVE-2017-20262 er en sårbarhed af typen SQL-indsprøjtning, hvor en angriber kan indsætte egen databasekode i et websted gennem et inputfelt, der ikke bliver renset ordentligt. Fejlen findes i Joomla-tredjepartskomponenten Ajax Quiz version 1.8, som bruges til at lave quizzer på Joomla-baserede hjemmesider. Parameteren cid i webadressen bliver sendt direkte videre til databasen uden kontrol. En angriber kan derfor sende et almindeligt GET-kald til index.php med option=com_ajaxquiz og view=ajaxquiz og få databasen til at afsløre tabelnavne, kolonner og andet indhold. Der kræves hverken login eller nogen handling fra en bruger.
Hvem rammer det?
Det rammer Joomla-installationer, der har komponenten Ajax Quiz version 1.8 installeret. Det er typisk mindre og mellemstore virksomheder samt foreninger og kommunale institutioner, som bruger Joomla som CMS og har tilføjet en quizfunktion via denne tredjepartskomponent. Standard-Joomla uden komponenten er ikke berørt.
Hvad kan ske?
En angriber kan trække data ud af databasen, herunder brugernavne, adgangskodehash og andre oplysninger, der ligger i samme database som quizmodulet. Det kan bruges til at logge ind som administrator, sende phishing-mails til kunder eller kortlægge systemet til et videre angreb. For en dansk virksomhed med kundedata på hjemmesiden betyder det risiko for datalæk, som kan udløse anmeldelsespligt efter databeskyttelsesreglerne.
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, og det kan udføres over internettet med lav kompleksitet. Konsekvensen er høj for fortrolighed, da store mængder data kan hentes ud, mens integritet og tilgængelighed ikke påvirkes direkte. Der er ikke oplysninger om aktiv udnyttelse i naturen, men typen af fejl gør den enkel at afprøve, og offentliggjorte detaljer kan bruges som opskrift.
Hvad gør jeg nu?
Følg trinene i rækkefølge for at lukke hullet og begrænse skaden.
- Undersøg om jeres Joomla-installation har komponenten Ajax Quiz version 1.8 installeret, og fjern den, hvis den ikke er i brug.
- Er komponenten nødvendig, så kontakt udvikleren eller find en opdateret version uden fejlen. Findes ingen opdatering, skal komponenten deaktiveres, indtil den er rettet.
- Blokér adgang til stien index.php med option=com_ajaxquiz på webserver- eller firewall-niveau, hvis komponenten midlertidigt skal blive liggende.
- Gennemgå webserverens logfiler for kald med option=com_ajaxquiz og view=ajaxquiz for at se, om nogen allerede har forsøgt at udnytte fejlen.
- Skift adgangskoder til Joomla-administratorer og databasebrugere, hvis I finder tegn på misbrug.
- Er I usikre på, om jeres opsætning er sårbar, eller hvordan I renser data efter et muligt angreb, så få hjælp fra en, der arbejder med Joomla-sikkerhed.
Fjern eller ret inden for en uge
Vi anbefaler, at I straks kontrollerer, om Ajax Quiz 1.8 kører på jeres Joomla-side, og fjerner eller blokerer komponenten, hvis den ikke er kritisk for driften. Er komponenten en fast del af jeres kundeoplevelse, bør I sætte en midlertidig blokering op, mens I finder en erstatning. Det er kun forsvarligt at vente, hvis I med sikkerhed ved, at komponenten ikke er installeret på nogen af jeres Joomla-sider.
Tidslinje
Konkrete eksempler
Forening med Joomla-hjemmeside og quiz
En dansk brancheforening bruger Joomla til medlemssiden og har tilføjet Ajax Quiz til en årlig medlemsquiz. Foreningen har glemt komponenten efter kampagnens afslutning, og den ligger stadig aktiv på serveren. En angriber finder komponenten via en automatisk scanning af Joomla-sider, sender et par tilpassede forespørgsler til cid-parameteren og trækker medlemslistens e-mailadresser og administratorens adgangskodehash ud af databasen.
Ofte stillede spørgsmål
Hvordan finder vi ud af, om vi bruger Ajax Quiz 1.8?
Tjek listen over installerede komponenter i Joomlas administrationspanel under Extensions, eller søg efter mapper med navnet ajaxquiz i jeres filsystem. Er komponenten ikke i brug, kan I fjerne den med det samme.
Kan vi vente med at rette det til efter weekenden?
Nej, ikke hvis komponenten er installeret og tilgængelig fra internettet. Angrebet kræver hverken login eller specielle værktøjer, så risikoen løber, indtil komponenten er fjernet eller blokeret.
Er der en officiel opdatering, vi bare kan installere?
Der foreligger ikke oplysninger om en officiel rettelse fra udvikleren af Ajax Quiz. Det sikreste er derfor at fjerne komponenten eller blokere adgangen til den, indtil andet er bekræftet.
Hvordan tjekker vi, om nogen allerede har udnyttet fejlen?
Gennemgå webserverens adgangslogfiler for kald til index.php med option=com_ajaxquiz og view=ajaxquiz, især med usædvanlige tegn i cid-parameteren som anførselstegn eller SQL-nøgleord.
Skal vi anmelde det til Datatilsynet?
Kun hvis I finder konkrete tegn på, at persondata er blevet hentet ud af databasen. Find først ud af, om komponenten har været tilgængelig og om logfilerne viser mistænkelige forespørgsler, før I vurderer anmeldelsespligten.
Påvirker det resten af vores Joomla-installation?
Sårbarheden ligger i selve Ajax Quiz-komponenten, men da den deler database med resten af Joomla-installationen, kan en angriber i praksis hente data fra hele databasen, herunder brugertabeller uden for komponenten.
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 Ajax Quiz 1.8 contains an SQL injection vulnerability that allows unauthenticated attackers to execute arbitrary SQL queries by injecting malicious code through the cid parameter. Attackers can send GET requests to index.php with the option=com_ajaxquiz and view=ajaxquiz parameters to extract sensitive database information including table names and column structures.
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.