web analytics

Android malware Stagefright

Print Friendly, PDF & Email

Beveiligingsproblemen bij besturingssystemen zijn niet nieuw. Alles dat geprogrammeerd wordt bevat fouten of bugs. Vroeger had je Windows dat om de haverklap in het nieuws kwam met beveiligheidsfouten. Hun grootste concurrent Apple had daar veel minder last van, zo weinig zelfs dat er gezegd werd dat er geen virusscanner nodig zou zijn op hun systemen.

Nu is er een derde grote speler op de markt. Android wat op Linux draait. Je zou dan van de veronderstelling uitgaan dat je ook daar veilig zit, want de ervaring die wij, Linux OS gebruikers hebben met malware valt reuze mee. Er zijn weinig gevallen bekend van malware die je Linux OS schade toebrengen.

Maar dan krijg je plots te horen dat Google dringend patches moet uitbrengen voor Android omdat er een groot probleem is door een bug in het tooltje Stagefright.

Wat is er daar nu van aan?

Stagefright – letterlijk: plankenkoorts – is een library die de afhandeling van video- en audiobestanden verzorgt. Sinds Android 2.2 is de library op sommige toestellen aanwezig en sinds 2.3 is het de standaard-library. Mozilla gebruikt de opensource-library overigens ook voor Firefox en Firefox OS, maar die software is al gepatcht.

Eigenlijk gaat alle ophef niet over één bug in het Stagefright-framework, maar om een tiental integer overflows, buffer overreads en integer underflows. Dat zijn bugs waarbij het geheugen wordt gecorrumpeerd doordat de software niet overweg kan met aangeleverde data, waarna een aanvaller zijn eigen code naar het geheugen kan schrijven. De bugs bevinden zich in het deel van de code die mpeg4- en 3gpp-bestanden afhandelt, bijvoorbeeld voor het inlezen van metadata.

Beveiligingsonderzoeker Joshua Drake van Zimperium vond de bugs met behulp van fuzzing, waarbij een aanvaller willekeurige data aan een applicatie geeft met als doel om de applicatie te crashen. Daarnaast heeft Drake delen van de code met de hand geïnspecteerd. Dat duurde ongeveer drie weken. Daarna heeft hij patches geschreven voor de gevonden beveiligingsproblemen.

De bug laat iemand die je telefoonnummer weet te ontfutselen toe om je een afbeelding met kwaadwillige code toe te sturen om dan de controle van je telefoon over te nemen inclusief alle informatie welke er op staat. Je moet zelfs het bericht niet openen. Echt angstaanjagend.

En nu?

Op dit moment is vrijwel iedereen nog kwetsbaar voor deze specifieke bug, die iedereen sinds Android 2.3 treft. Deze week is Google wel begonnen met het uitrollen van patches naar Nexus-toestellen. Cyanogenmod heeft de bug ook al gepatcht. Daarnaast heeft HTC het lek gedicht in zijn One M9. Wie wil checken of zijn Android-toestel getroffen is, kan een app van beveiligingsbedrijf Zimperium downloaden om dat te controleren.

Volgens Google krijgen ‘honderden’ toestellen een patch, maar dat zijn lang niet alle toestellen: volgens OpenSignal zijn er rond de 24.000 verschillende types Android-toestellen in omloop. Het is de vraag hoeveel van die toestellen snel, zij het überhaupt, een update zullen krijgen. Op de lijst staan wel de populairste apparaten, waaronder de tot nu toe niet meer ondersteunde Galaxy S3 van Samsung.

Dus: wat te doen als je momenteel kwetsbaar bent – of blijft – voor deze bug? Een belangrijke stap voert Google zelf al uit: in de Hangouts-app worden vanaf eind deze week tijdelijk geen thumbnails meer getoond. Daardoor worden filmpjes niet automatisch door het Stagefright-framework verwerkt en kun je dus niet ongemerkt met een mms worden gehackt. Als je een filmpje opent, ben je nog wel kwetsbaar. Ook WhatsApp en Telegram hebben instellingen om het automatisch downloaden van video’s uit te zetten.

Voor de rest is het lastig voor gebruikers om zichzelf tegen de aanval te wapenen. Voorzichtigheid bij het openen van filmpjes is aan te raden, maar zoals Drake heeft aangetoond, is voorzichtigheid niet genoeg.

Updates?

Het Stagefright-probleem is het gevaarlijkst voor gebruikers van oudere toestellen en budgetmodellen, die niet meer worden voorzien van nieuwe Android-versies. Door de ongebruikelijke – en volgens velen onwenselijke – manier waarop Android-updates werken, blijven ze in veel gevallen voor altijd kwetsbaar. Dat geldt in elk geval totdat ze een nieuw toestel kopen of zelf een custom rom op hun toestel zetten.

Tegelijkertijd blijft Android met een fundamenteel probleem kampen. In tegenstelling tot bij iOS of Windows heeft Google bij de meeste toestellen nauwelijks controle over de firmware die erop draait. Stel je eens voor dat een update voor Windows niet door Microsoft zelf zou worden uitgegeven, maar eerst zou moeten worden aangepast en vervolgens uitgerold door Dell, Asus, HP en andere fabrikanten van Windows-hardware. En dat het maanden kan duren voordat een beveiligingsupdate naar je systeem komt, mede omdat internetproviders de update eerst moeten goedkeuren.

Sterker nog, anderhalf tot twee jaar na het kopen van een Windows-pc, zou het best kunnen zijn dat je pc dan niet meer ondersteund wordt en dat je geen beveiligingsupdates meer krijgt. Budgetlaptops zouden niet eens updates krijgen en altijd kwetsbare software draaien.

Het is een situatie die voor Windows gelukkig niet bestaat. Zelfs budgethardware wordt vele jaren ondersteund en krijgt beveiligingsupdates even snel als de duurste hardware. Toch is dit precies hoe het bij Android wel werkt.

Doordat niet Google maar telefoonfabrikanten en providers over de uitrol van updates beslissen, gebruiken op dit moment vele miljoenen mensen versies van Android die kwetsbaar zijn voor beveiligingsproblemen, waaronder de Stagefright-bug en dat terwijl er patches klaar liggen die het probleem oplossen.

“Google heeft zijn zaken erg slecht voor elkaar”, zegt beveiligingsonderzoeker Drake. “Het duurt erg lang voordat updates bij gebruikers komen.”

Maar android draait toch op Linux…

Inderdaad. Android draait op Linux. En Linux is een kernel, een openbron kernel die Google aangepast heeft en daar bovenop dan hun Android systeem hebben uitgebouwd. Die kernel is wel safe, maar wat erboven draait kan fouten bevatten. Stagefright bevindt zich in de Library [Media Framework]  en die heeft op zich niks te maken met de Linux kernel (zie diagram hieronder).

Vooral het feit dat Google geen controle heeft over wie, welke update wanneer uitdraait, maakt dat een relatief kleine bug, een mega probleem voor Android smartphone bezitters wordt.

android-architecture

 

Bronnen:

Beoordeling

Geef een reactie

%d bloggers liken dit: