CVE-2017-20279: SQL-injektion i Joomla Payage 2.05
SQL-indsprøjtning i Joomla-udvidelsen Payage 2.05 lader angribere uden login stjæle data fra databasen. Fjern eller opdatér komponenten straks.
Hvad er det?
CVE-2017-20279 er en sårbarhed i Payage, en betalingsudvidelse til Joomla version 2.05. Fejlen er en SQL-indsprøjtning, hvor en angriber indsætter egen databasekode i et webformular-felt eller en webadresse for at få systemet til at udføre kommandoer, det ikke burde. I dette tilfælde sker det gennem parameteren aid, som sendes med en almindelig GET-forespørgsel til index.php under funktionen make_payment. Angriberen kan bruge såkaldt blind SQL-indsprøjtning, hvor svaret fra systemet enten er sandt eller falsk, eller hvor svartiden afslører information, til gradvist at hente data ud af databasen uden at have en konto på systemet.
Hvem rammer det?
Sårbarheden rammer Joomla-installationer, der bruger betalingsudvidelsen Payage i version 2.05. Det gælder typisk mindre webshops, foreninger og virksomheder, der har tilføjet Payage som betalingsmodul til deres Joomla-side. Er komponenten ikke installeret, er jeres side ikke ramt af denne konkrete sårbarhed.
Hvad kan ske?
En angriber kan uden at logge ind hente følsomme oplysninger fra databasen bag jeres hjemmeside. Det kan være kundeoplysninger, betalingsdata, adgangskoder eller administratoroplysninger, afhængigt af hvad databasen indeholder. For en dansk virksomhed betyder det risiko for læk af persondata, som skal håndteres efter databeskyttelsesreglerne, samt risiko for at oplysningerne bruges til videre angreb, for eksempel identitetstyveri eller misbrug af kundedata.
Hvor alvorligt er det?
CVSS-score er 8,2 ud af 10, hvilket er alvorligt. Angrebet kræver ingen adgangskode, ingen handling fra en bruger og kan udføres over internettet med lav teknisk kompleksitet. Konsekvensen er høj fortrolighed, det vil sige at data kan læses, mens integritet og tilgængelighed kun i begrænset eller ingen grad påvirkes. Der er ikke bekræftet aktiv udnyttelse i angreb, men den tekniske beskrivelse er offentligt tilgængelig og detaljeret nok til, at en angriber let kan udnytte den.
Hvad gør jeg nu?
Reager i denne rækkefølge:
- Undersøg om jeres Joomla-side bruger betalingsudvidelsen Payage, og i så fald hvilken version. Findes version 2.05 eller ældre, skal komponenten fjernes eller deaktiveres, indtil en sikker version er bekræftet.
- Er komponenten ikke længere nødvendig, bør den afinstalleres helt fremfor blot at blive deaktiveret.
- Gennemgå webserverens logfiler for usædvanlige forespørgsler til index.php med parameteren aid og task=make_payment, som kan indikere forsøg på udnyttelse.
- Skift adgangskoder til databasen og administratorkonti, hvis der er tegn på misbrug.
- Vurder om hændelsen skal anmeldes til Datatilsynet, hvis persondata kan være kompromitteret.
- Er I i tvivl om, hvorvidt jeres side er ramt, eller mangler I ressourcer til at undersøge logfiler og rydde op, bør I hente ekstern hjælp til en sikkerhedsgennemgang.
Fjern eller opdatér komponenten inden for 48 timer
Vi anbefaler at afinstallere Payage-udvidelsen, hvis den ikke er i aktiv brug, da der ikke foreligger en officiel rettelse. Er udvidelsen nødvendig for driften, bør I sætte en midlertidig beskyttelse op i webserveren, der blokerer mistænkelige forespørgsler til make_payment, mens I finder et alternativ. Det er kun forsvarligt at vente, hvis I med sikkerhed kan bekræfte, at Payage ikke er installeret på jeres side.
Tidslinje
Konkrete eksempler
Mindre webshop med Joomla og Payage
En dansk håndværksvirksomhed driver sin webshop på Joomla med Payage installeret til at håndtere betalinger. En angriber finder siden via en automatisk scanning, sender manipulerede forespørgsler med parameteren aid og henter gradvist kundedata og administratoroplysninger ud fra databasen uden at logge ind. Virksomheden opdager først hændelsen, da kunder rapporterer mistænkelige transaktioner på deres betalingskort.
Ofte stillede spørgsmål
Hvordan finder vi ud af, om vi bruger Payage 2.05?
Tjek jeres Joomla-administrationspanel under Udvidelser og Komponenter, eller søg efter mappen com_payage på webserveren. Er I i tvivl om versionsnummeret, kan I kontakte jeres webbureau eller den udbyder, der har opsat siden.
Kan vi vente til weekenden med at fjerne komponenten?
Nej. Angrebet kræver hverken login eller brugerhandling og kan udføres automatisk af scanningsværktøjer, der løbende leder efter sårbare Joomla-sider. Jo længere komponenten er tilgængelig, jo større er risikoen for, at data allerede er hentet ud.
Er vi ramt, hvis vi ikke bruger Payage til betaling længere, men den ligger stadig på serveren?
Ja. Sårbarheden ligger i selve komponentens kode og udnyttes uanset om I aktivt bruger betalingsfunktionen. Ligger filerne stadig tilgængelige på webserveren, kan de tilgås direkte via webadressen.
Findes der en opdateret version af Payage, der løser problemet?
Der er ikke offentliggjort en officiel rettelse for denne sårbarhed. Vi anbefaler derfor at fjerne komponenten helt eller erstatte den med en aktivt vedligeholdt betalingsløsning.
Skal vi anmelde hændelsen til Datatilsynet?
Det afhænger af, om der er tegn på, at persondata faktisk er blevet hentet ud. Find spor i logfilerne og vurder omfanget sammen med jeres databeskyttelsesrådgiver eller en ekstern sikkerhedsrådgiver, hvis I er i tvivl.
Hvordan tjekker vi, om vi allerede er blevet angrebet?
Gennemgå webserverens adgangslogfiler for gentagne GET-forespørgsler til index.php med parameteren aid, der indeholder usædvanlige tegn som anførselstegn, UNION eller SLEEP. Mange ens forespørgsler over kort tid er et typisk tegn på automatiseret udnyttelse.
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 Payage 2.05 contains an SQL injection vulnerability that allows unauthenticated attackers to manipulate database queries by injecting SQL code through the aid parameter. Attackers can send GET requests to index.php with malicious aid values in the make_payment task to extract sensitive database information using boolean-based blind or time-based blind techniques.
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.