Onderzoekers hebben een manier gevonden om de data van gebruikers van cloudopslagdienst MEGA kunnen ontsleutelen. Het bedrijf heeft inmiddels een beveiligingsupdate uitgerold om de kwetsbaarheden te verhelpen. Voor het uitvoeren van de aanval had een aanvaller een man-in-the-middle-positie moeten hebben of de controle over de kerninfrastructuur van MEGA.
MEGA is een cloudopslagdienst met naar eigen zeggen meer dan 250 miljoen geregistreerde gebruikers, tien miljoen dagelijks actieve gebruikers en 1000 petabyte aan opslag. Het bedrijf biedt gebruikers end-to-end encryptie en claimt dat het de data van gebruikers niet kan ontsleutelen. "Zolang je ervoor zorgt dat je wachtwoord voldoende sterk en uniek is, heeft niemand toegang tot je data bij MEGA. Zelfs in het uitzonderlijke onwaarschijnlijke geval dat de volledige infrastructuur van MEGA in beslag wordt genomen", zo claimt de cloudopslagdienst.
Onderzoekers van de Applied Crypto Group van ETH Zurich hebben echter aangetoond dat het wel degelijk mogelijk is voor MEGA of een partij die de infrastructuur in handen heeft om de decryptiesleutel van gebruikers te achterhalen en zo hun bij MEGA opgeslagen data te ontsleutelen. In totaal bedachten de onderzoekers vijf verschillende aanvallen om de vertrouwelijkheid van gebruikersdata te compromitteren.
MEGA maakt gebruik van verschillende encryptiesleutels voor het versleutelen van bestanden van gebruikers. Deze zogeheten "key hierarchy" begint met het wachtwoord van de gebruiker. De MEGA-clientsoftware gebruikt het gebruikerswachtwoord voor het genereren van een authenticatie key en een encryptie key. De authenticatie key wordt gebruikt voor het authenticeren van de gebruiker als die bij MEGA inlogt. De encryptie key versleutelt een willekeurig gegenereerde master key, die weer ander key materiaal van de gebruiker versleutelt.
De onderzoekers ontdekten een praktische aanval om de RSA private key van de gebruiker te achterhalen. Dit is mogelijk doordat de integriteit van de versleutelde keys van gebruikers op de servers van MEGA niet is beschermd. Een aanvaller die controle over de MEGA-infrastructuur heeft kan de softwareclient op het systeem van de gebruiker misleiden om informatie te lekken waarmee de key is te achterhalen. Hiervoor zou een gebruiker zo'n 512 keer op zijn account moeten inloggen.
Doordat de servercode van MEGA niet beschikbaar is, konden de onderzoekers geen proof-of-concept aanval implementeren waarbij een aanvaller de controle over de cloudopslagdienst heeft. In plaats daarvan voerden ze een man-in-the-middle-aanval uit door een kwaadaardig TLS-rootcertificaat op het systeem van het slachtoffer te installeren. Hiermee kan de aanvaller zich tegenover de gebruiker als MEGA voordoen. Responses van de server zijn in real-time aan te passen, aangezien die niet afhankelijk zijn van secrets die op de server zijn opgeslagen.
In een video laten de onderzoekers zien hoe ze de eerste byte van de RSA private key van een gebruiker achterhalen. Om geen nadelige impact op de productieservers van MEGA te hebben werd de aanval hierna gestopt. "Ondanks het feit dat weinig gebruikers vaak genoeg inloggen om het scenario te laten werken, ondermijnt het probleem het meest fundamentele ontwerpdoel van MEGA, het verzekeren van de privacy van opgeslagen bestanden en berichten zolang er een uniek wachtwoord met voldoende entropie wordt gebruikt en geen van de endpoint-apparaten is gecompromitteerd", reageert MEGA in een blogpost.
Het bedrijf heeft updates uitgebracht voor de problemen die de onderzoekers aantroffen, maar de gekozen oplossing verschilt van wat de onderzoekers adviseerden. De onderzoekers stellen dat de patches van MEGA geen directe bescherming tegen twee van de uitgewerkte aanvallen bieden.
Deze posting is gelocked. Reageren is niet meer mogelijk.