Al jaren geleden voorspeld, maar nu, met wat vertraging, dan toch gesignaleerd: de airborn malware (in casu, het Cabir virus). Via mobiele technologieën weten ze zich binnen te wurmen, maar er is nog onvoldoende research gepleegd om vast te stellen wat er werkelijk mogelijk is en hoe we ons ertegen kunnen wapenen.
Nadat vorige zomer op DefCON bekend werd dat bepaalde types Nokia telefoons eenvoudig te hacken waren heb ik tweede-kamerlid Martijn van Dam laten zien hoe dat in zijn werk ging. Hij schrok hier zo van dat hij pardoes wat kamervragen stelde. Mijns inziens was die reactie een beetje overtrokken, maar toch leverde het de uitspraak op: “Als er nu nog telefoons verkocht worden met dit probleem, dan dienen naar mijn mening de klanten bij aankoop hierop gewezen te worden en op de hoogte gebracht te worden van hoe dit probleem gerepareerd kan worden”, aldus staatssecretaris van Gennip (Bron: Emerce). Natuurlijk worden de toestellen nog steeds gewoon verkocht zonder waarschuwing.
Prius
Maar goed, dat was vorige zomer, en we vervelen ons een beetje in de winter, dus zijn we maar eens op zoek gegaan naar objecten die wat interessants te bieden hebben. We zijn uitgekomen op een paar leuke mogelijkheden. Allereerst gaan we volgende week de auto van onze Corporate Security Officer onder handen nemen die hij in zijn oneindige vriendelijkheid ter beschikking heeft gesteld (onder voorwaarden :-)). Dit is een Toyota Prius met, jawel, een bluetooth interface. De bedoeling is dat je je telefoon alleen maar in de auto hoeft te leggen en de auto neemt alle functies als handsfree bellen, telefoonboek, agenda etc. over uit de telefoon. Je kunt dan op het scherm en via knoppen aan het stuur bellen, voice commando’s geven en aderen functies benaderen.
De Prius bezit een aantal ingebouwde functionaliteiten zoals GPS navigatie, ‘geheime’ diagnostics functie (start auto, houd INFO knopje ingedrukt en schakel koplampen driemaal aan en uit) en alle telemetrie gegevens. Wij zijn erg benieuwd hoe de Bluetooth stack implementatie van de Prius is, en of er nog interessante gegevens uit kunnen worden gepeuterd. We houden u op de hoogte.
Mobiele spyware
Een ander project dat we willen oppakken is het schrijven van wat bijzondere Java applets als proof-of-concept voor mobiele telefoons en/of PDA’s/smartphones. Java-enabled devices met MIDP2 functionaliteit (lijst is hier hier te vinden) bezitten een aantal bijzondere interfaces zoals de mogelijkheid om de TCP-stack aan te spreken met echte socket()’s, het cameraatje, het toetsenbord en andere I/O-devices te lezen. Deze functionaliteit zou kunnen worden ingezet voor wat spannende doeleinden; think ‘spyware goes mobile’. We dachten aan een aantal scenario’s voor mobile spyware zoals:
Java-based Man-in-the-Middle aftappen
Dit zou een Java-applet zijn, die na installatie op de telefoon (door een gebruiker te misleiden of nog-niet-ontdekte-bug) het fysieke scherm en toetsenbord overneemt, en de gebruiker in de waan laat met het originele toestel van doen te hebben. In werkelijkheid zal de spy-applet (spyplet?) alle ingevoerde toetsaanslagen opslaan en per SMS naar de aanvaller sturen. Vervolgens laat de spyplet het toestel een voice verbinding naar de aanvaller opzetten. De aanvaller belt op een andere lijn het oorspronkelijk beoogde nummer en verbindt de twee door. Er kleven wat nadelen aan deze methode. Ten eerste is het omslachtig, ten tweede zorgt nummerherkenning ervoor dat dit erg opvalt, zo niet direct dan wel bij ontvangst van de specificaties. Maar theoretisch zou je een eind kunnen komen.
Java-based timeshifted aftappen
Dit stukkie spyware zou op de telefoon geïnstalleerd worden, waarna al het geluid via het microfoontje (maar niet tijdens het gesprek, de meeste telefoons laten dan niet toe) wordt opgenomen. Opgenomen audio-bestanden kunnen dan op diverse manieren naar een aanvaller worden teruggestuurd. Bijvoorbeeld door een MMS met attachment te sturen (vereist wel gebruikersinteractie), of met bluetooth bestandsuitwisseling (eventueel zonder gebruikersinteractie, maar dan moet bluetooth wel aanstaan).
Java -based 007cam spyplet
Deze spyplet zou in principe hetzelfde doen als de vorige, maar dan met de camera van de telefoon. Elke minuut, of ander interval, maakt de telefoon een foto. Foto’s worden via een van de transportmechanismen teruggestuurd naar de aanvaller. Het nadeel is hier voornamelijk dat een aanvaller erg veel foto’s van de binnenkant van een binnenzak zal ontvangen. De informatie is eigenlijk alleen maar nuttig op het moment dat een telefoongesprek plaatsvindt, maar de meeste telefoons staan een applet niet toe om actief te zijn op het moment van een gesprek.
Streaming spyplet
Bij deze spyplet zou al het geluid dat het microfoontje opvangt worden gestreamed. Hier kleven wat praktische problemen aan. Om te connecten met de streaming server moet de aanvaller bij het toestel kunnen komen via een netwerk.
Ten eerste is het lastig om het IP adres van een telefoontje te achterhalen, dus een aanvaller die een connectie naar het toestel wil maken zal eerst het IP adres moeten vinden. In MIDP2 (niet in MIDP1) kan het IP adres worden uitgelezen en mogelijkerwijs via een SMS (gebruikersinteractie vereist) naar de aanvaller worden verstuurd. Ten tweede, en een veel directer probleem, is dat het IP adres op een intern stuk private address space ligt dat door de GPRS provider wordt toegekend. Dit is vanaf Internet niet te bereiken.
Een streaming spyplet zou dus eigenlijk alleen maar kunnen werken als het de data in HTTP requests stopt en die via een uitgaande connectie, en dus via de Proxy server van de provider, verstuurt naar een aanvaller. De overhead hiervoor is echter aanzienlijk en ik betwijfel of het op dit moment mogelijk is deze aanval uit voeren (er is aanzienlijke processing en bandbreedte nodig om dit voor elkaar te krijgen). Maar we gaan het proberen.
Browse-me spyplet
De browse-me spyplet zou feitelijk een reverse webserver zijn. De connectie zou dan uitgaand (dus van het toestel naar de aanvaller, via HTTP Proxy van de provider) zin, maar de functionaliteit zou inkomend zijn. Oftewel, hij kan na geconnect te zijn met de aanvaller, gewoon met een browser worden benaderd. Het is aan de fantasie van de aanvaller welke informatie er allemaal uit het toestel zou kunnen worden getrokken, maar te denk valt aan laatst gebelde nummers, SMS-geheugen, agenda’s, het gebruikelijke. Mogelijkerwijs zouden ook bestanden op deze manier voor download beschikbaar gemaakt kunnen worden.
Het is zeker niet gezegd dat al deze scenario’s uit te voeren zijn. De sandbox-functionaliteit van Symbian en MIDP2-functies sluiten bepaalde handelingen zonder gebruikersinteractie uit. Maar wellicht vinden we manieren om daar omheen te komen, of kunnen we eenvoudigweg gebruikers misleiden (‘click YES for chicks’). In ieder geval wordt het een leerzame periode. Eerst maar even Harry’s auto hacken….. Jullie horen meer :)
Door Ralph Moonen, manager bij de Business Unit Technology&E-business van
KPMG IRM.
Deze posting is gelocked. Reageren is niet meer mogelijk.