CVE-2017-20253: SQL-injection i Joomla My Projects 2.0
SQL-indsprøjtning i Joomla-komponenten My Projects 2.0 lader uautoriserede hente data fra databasen. Fjern eller afskærm komponenten nu.
Hvad er det?
CVE-2017-20253 er en sårbarhed i Joomla-komponenten My Projects version 2.0. Sårbarheden er en SQL-indsprøjtning, det vil sige en fejl, hvor et system ikke tjekker input godt nok, så en angriber kan sende egne databasekommandoer gennem et almindeligt inputfelt. Fejlen sidder i parameteren VerAyari, som komponenten bruger til at slå oplysninger op i databasen. En angriber kan sende et specialkonstrueret kald til komponenten og få databasen til at udlevere data, den ikke skulle udlevere, uden at skulle logge ind først.
Hvem rammer det?
Det rammer Joomla-installationer, der har komponenten My Projects i version 2.0 installeret. Det gælder typisk mindre virksomheder og foreninger, der bruger komponenten til at vise projektoversigter eller referencer på deres hjemmeside. Er komponenten ikke installeret, er I ikke ramt af denne konkrete sårbarhed.
Hvad kan ske?
En angriber kan uden login hente indhold fra jeres database, herunder brugernavne, adgangskodehash og andre systemdata, som komponenten har adgang til. I praksis kan det bruges til at skaffe adgangskoder, som senere bruges til at logge ind som administrator eller til at gætte adgangskoder til andre systemer, hvis de samme koder er genbrugt. Sårbarheden giver ikke i sig selv adgang til at ændre data eller lukke hjemmesiden ned, men den lækker fortrolige oplysninger, der kan bruges til videre angreb.
Hvor alvorligt er det?
CVSS-score er 8,2 ud af 10, hvilket er alvorligt. Angrebet kræver ingen adgangskode og ingen handling fra en bruger, og det kan udføres over internettet mod en almindelig webadresse. Det gør sårbarheden nem at udnytte automatisk med scripts. Fortrolighed er ramt hårdt, mens det ikke er muligt at ændre data eller lukke systemet ned via denne fejl. Der er ikke belæg for, at fejlen bliver udnyttet aktivt i angreb, men da metoden er offentligt beskrevet, kan det ændre sig hurtigt.
Hvad gør jeg nu?
Prioritér disse skridt:
- Undersøg om Joomla-siden bruger komponenten My Projects, og i givet fald hvilken version. Find det ud af via Joomla-administrationen under Komponenter.
- Er komponenten ikke i brug, så fjern den helt fra installationen. Det lukker hullet med det samme.
- Er komponenten nødvendig, så kontakt leverandøren for en opdateret version, da version 2.0 er sårbar.
- Kan komponenten ikke fjernes eller opdateres straks, så bloker adgang til komponentens endpoint via en webapplikationsfirewall eller webserverens konfiguration, indtil en løsning er på plads.
- Gennemgå adgangslogfiler for usædvanlige kald med parameteren VerAyari for at se, om komponenten allerede er blevet udnyttet.
- Har I ikke selv ressourcer til at gennemgå Joomla-installationen eller sætte en midlertidig blokering op, bør I hente hjælp udefra til det.
Fjern eller afskærm komponenten inden en uge
Vi anbefaler, at I straks fjerner komponenten My Projects, hvis den ikke er i aktiv brug, da det er den enkleste og mest effektive løsning. Er komponenten nødvendig for jeres hjemmeside, bør I kontakte leverandøren for en sikker version og i mellemtiden blokere adgang til komponenten. Det er ikke forsvarligt at vente, da angrebet kan udføres uden login og med enkle midler.
Tidslinje
Konkrete eksempler
Foreningshjemmeside med Joomla
En dansk brancheforening bruger Joomla med komponenten My Projects til at vise samarbejdsprojekter på hjemmesiden. En angriber finder komponenten via en almindelig søgning, sender et specialkonstrueret kald til VerAyari-parameteren og henter administratorens adgangskodehash fra databasen. Da adgangskoden er genbrugt til foreningens mailsystem, får angriberen også adgang dertil.
Ofte stillede spørgsmål
Hvordan finder vi ud af, om vi bruger komponenten My Projects?
Log ind i Joomla-administrationen og gå til listen over installerede komponenter. Står My Projects der, og er versionen 2.0, er I ramt.
Kan vi vente med at handle til efter weekenden?
Det kan I gøre, hvis I i mellemtiden blokerer adgang til komponenten via jeres webserver eller en webapplikationsfirewall. Uden en sådan blokering bør I ikke vente, da sårbarheden er let at udnytte.
Kan vi se, om vi allerede er blevet angrebet?
Gennemgå jeres webserverlog for kald til komponentens endpoint, hvor parameteren VerAyari indeholder usædvanlige tegn som citationstegn eller SQL-kommandoer. Det er et tegn på, at nogen har forsøgt at udnytte sårbarheden.
Skal vi anmelde dette til myndighederne?
Er der tegn på, at persondata eller kundeoplysninger er blevet udtrukket fra databasen, kan det udløse en anmeldelsespligt til Datatilsynet efter reglerne om databeskyttelse. Kontakt jeres databeskyttelsesansvarlige for en vurdering.
Findes der en officiel opdatering til My Projects?
Der er ikke oplysninger om, at leverandøren har udgivet en opdateret version, der retter fejlen. Indtil videre er fjernelse af komponenten eller blokering af adgangen den sikreste løsning.
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 My Projects 2.0 contains an SQL injection vulnerability that allows unauthenticated attackers to execute arbitrary SQL queries by injecting malicious code through the VerAyari parameter. Attackers can craft requests to the component endpoint with SQL injection payloads to extract sensitive database information including credentials and system 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.