Wouter Hoeffnagel - 18 april 2018

Applicaties versturen persoonlijke data op onveilige wijze door code van derden

Veel populaire dating-apps versturen gebruikersdata via het onveilige HTTP-protocol. Hierdoor dreigt de data aan kwaadwillenden te worden blootgesteld. Dit is mogelijk doordat deze applicaties gebruiksklare SDK’s van derden toepassen voor het weergeven van advertenties. De SDK’s maken deel uit van enkele van de meest gebruikte advertentienetwerken. Er zijn apps bij die wereldwijd miljarden keren zijn geïnstalleerd. Door deze ernstige beveiligingsfout kunnen privégegevens worden onderschept, gewijzigd en gebruikt voor verdere aanvallen.

Dit blijkt uit een analyse van populaire dating-apps door onderzoekers van Kaspersky Lab. Een SDK is een set ontwikkelingstools die meestal gratis wordt verspreid. Door code van derden toe te passen, besparen softwareontwikkelaars veel tijd: ze kunnen zich concentreren op de belangrijkste elementen van hun applicatie en andere functionaliteit aan deze kant-en-klare SDK's overlaten. Zo verzamelen advertentie-SDK's gebruikersgegevens om relevante advertenties weer te geven, wat voor de ontwikkelaars weer inkomsten genereert. De toolsets verzenden gebruikersdata naar domeinen van populaire advertentienetwerken voor een meer gerichte weergave van advertenties.

Data ongecodeerd via HTTP versturen

Diepere analyse van de betreffende applicaties heeft echter aangetoond dat data ongecodeerd en via HTTP worden verzonden. De gegevens leggen de reis naar de servers derhalve onbeschermd af. Omdat er geen sprake is van encryptie, kunnen de data in principe door iedereen worden onderschept via onbeveiligde wifi, door de internetprovider of met behulp van malware op een thuisrouter. Nog ernstiger is dat de onderschepte gegevens ook kunnen worden gewijzigd, wat betekent dat de toepassing schadelijke advertenties kan laten zien in plaats van legitieme. Gebruikers zullen dan worden verleid om een applicatie te downloaden die malware zal blijken te zijn.

Onderzoekers van Kaspersky Lab hebben logboeken en netwerkverkeer van applicaties in de interne Android Sandbox onderzocht om erachter te komen welke applicaties via HTTP onversleutelde gebruikersdata naar netwerken sturen. Ze hebben bij deze zoektocht een aantal belangrijke domeinen geïdentificeerd, waarvan de meeste deel uitmaken van veelgebruikte advertentienetwerken. Het aantal applicaties dat deze SDK’s toepast loopt in de miljoenen, waarbij het merendeel ten minste één van de volgende stukjes data onversleuteld verzendt:

  • Persoonlijke informatie: meestal gebruikersnaam, leeftijd en geslacht, soms ook het inkomen van de gebruiker. Ook telefoonnummers en e-mailadressen kunnen worden gelekt (mensen delen veel persoonlijke informatie in dating-apps, blijkt uit een ander onderzoek van Kaspersky Lab)
  • Apparaatinformatie, zoals merk, model, schermresolutie, systeemversie en de naam van de app
  • Apparaatlocatie

Omvangrijk probleem

"We dachten eerst dat we te maken hadden met een paar gevallen van onzorgvuldig applicatieontwerp, maar de omvang van dit probleem blijkt enorm te zijn”, zegt Roman Unuchek, beveiligingsonderzoeker bij Kaspersky Lab. “Miljoenen applicaties bevatten SDK's van derden, waardoor privégegevens gemakkelijk kunnen worden onderschept en gewijzigd. Dit kan leiden tot malware-infecties, chantage en andere zeer effectieve aanvalsvectoren op uw apparaten.”

Onderzoekers van Kaspersky Lab adviseren gebruikers om de volgende maatregelen te nemen:

  • Controleer uw app-machtigingen. Geef geen toegang tot iets als u niet begrijpt waarom. De meeste apps hebben geen toegang tot uw locatie nodig, dus verleen deze niet.
  • Gebruik een VPN om het netwerkverkeer tussen uw apparaat en de servers te versleutelen. Buiten de servers van de VPN blijven de data weliswaar onversleuteld, maar het risico op lekken tijdens het proces is in ieder geval kleiner.

Meer informatie over SDK's van derden is beschikbaar in de blogpost van Kaspersky Lab op Securelist.com.