Open Source im professionellen Einsatz

Fast Race mit Golddream

Einen aktuellen Android-Trojaner beschreibt [13]: Golddream.A verbreitet sich über das Spiel "Fast Race" und protokolliert unter anderem alle ein- und ausgehenden Gespräche in einer Datei namens »ziphonecalls.txt« auf dem internen Speicher des Handys. Allein deren Anwesenheit ist ein deutliches Signal für ein kompromittiertes Gerät. [13] zeigt den Trojaner in Aktion auf zwei virtuellen Androiden und beschreibt seine Arbeitsweise im Detail. Das Spiel ist im Screenshot zwar ausgeblendet, die Websuche nach der App ist aber immer noch erfolgreich.

Abbildung 3: Das virtuelle Android zeigt die Website des Linux-Magazins.

Abbildung 3: Das virtuelle Android zeigt die Website des Linux-Magazins.

Fast Race auf virtuellen Androids zu installieren ermöglicht es, wertvolle eigene Erfahrungen zu sammeln, ohne sich in Gefahr zu begeben. Sowohl der Netzwerkverkehr als auch die logische Auswertung des Dateisystems zu Übungszwecken lassen sich so nachvollziehen. »tcptrace« zeigt die erzeugten Verbindungen, die das SDK von Android über die private IP-Adresse (192.168.0.2) des Hostsystems an das Gateway weiterreicht (Listing 1). Der Besuch der Webseite des Linux-Magazins (Abbildung 3) liefert dabei beispielsweise folgende Uniq-IPs:

Listing 1

tcptrace -n /tmp/sdk.cap | grep :80

01: 1:  192.168.0.2:59796  -  209.85.148.105:80  (a2b)    54>    28<   (complete)
02: 2:  192.168.0.2:39885  -  80.237.227.140:80  (c2d)    48>    57<   (complete)
03: 3:  192.168.0.2:56801  -  62.146.124.44:80   (e2f)     5>     5<   (complete)
04: 4:  192.168.0.2:49067  -  74.125.79.102:80   (g2h)     8>     5<   (complete)
05: 5:  192.168.0.2:51323  -  193.46.63.130:80   (i2j)     6>     5<   (complete)
06: 6:  192.168.0.2:54279  -  80.237.227.187:80  (k2l)    31>    27<   (complete)
07: 7:  192.168.0.2:39890  -  80.237.227.140:80  (m2n)    21>    19<   (complete)
08: 8:  192.168.0.2:54281  -  80.237.227.187:80  (o2p)    24>    13<   (complete)
09: 9:  192.168.0.2:54282  -  80.237.227.187:80  (q2r)     6>     4<   (complete)
10: 10: 192.168.0.2:51968  -  66.220.153.11:80   (s2t)    18>    16<   (complete)
[...]
tcptrace -n /tmp/sdk.cap | awk '{print $4}' | sort -g | uniq | awk -F":" '{print $1}'
62.146.124.44
66.220.153.11[...]

Das Dateisystem des virtuellen Android befindet sich auf dem Host im Homedirectory des Erstellers, und zwar in einem versteckten Verzeichnis namens ».android« . Eine schnelle Überprüfung der Fileheader führt zur Einsicht, dass einige Images vor dem Zugriff besonderer Behandlung bedürfen (Listing 2): Während sich die virtuelle SD-Karte als FAT-32-Image problemlos mounten lässt, sind die Images »cache.img« und »userdate-qemu.img« zunächst nicht mountbar, da sie als YAFFS2-Dateisystem vorliegen. Was der Admin vor dem erfolgreichen Mount unternehmen muss, zeigt der Kasten "Hands on YAFFS".

Listing 2

file ~/.android/*

01 cache.img:              VMS Alpha executable
02 cache.img.lock:         ASCII text, with no line terminators
03 config.ini:             ASCII text
04 hardware-qemu.ini:      ASCII text
05 hardware-qemu.ini.lock: ASCII text, with no line terminators
06 sdcard.img:             x86 boot sector, code offset 0x5a, OEM-ID
 "MSWIN4.1", sectors/cluster 4, Media descriptor 0xf8, sectors 8388608
 (volumes > 32 MB) , FAT (32 bit), sectors/FAT 16352, reserved3 0x800000,
 serial number 0xfec0e1b, label: "     SDCARD" sdcard.img.lock:        ASCII
 text, with no line terminators userdata.img:           VMS Alpha executable
07 userdata-qemu.img:      VMS Alpha executable
08 userdata-qemu.img.lock: ASCII text, with no line terminators
09 [...]

Dalvik Debug Monitor

Ein virtuelles Interface ist zwar bereits sehr gut für erste Tests geeignet, spannender ist meist die Verbindung mit einem physikalischen Device. Dafür bringt das SDK den Dalvik Debug Monitor »ddms« mit (Abbildung 4). Alle drei Testkandidaten reicht der Ubuntu-Test-PC erfolgreich über die USB-Verbindung an den Debugger durch, wenn der USB-Debug-Modus des Smartphones aktiviert ist.

Abbildung 4: Dalvik Debug Monitor hat die drei Testgeräte von HTC und LQ erfolgreich erkannt und eingebunden.

Ddms bringt einige hilfreiche Funktionen, zum Beispiel Bildschirm-Schnappschüsse (im Menü »Device | Screen capture« ) und einen »File Explorer« , der logische Filedumps von »data« , »mnt« und »system« liefert. Diese Verzeichnisse sind Partitionen innerhalb des YAFFS2-Dateisystems, auf die der physikalische Zugriff unmöglich ist. Einzige Ausnahme ist das mit FAT formatierte »/mnt/sdcard« .

Die beiden Icons »Pull File From Device« und »Push File Onto Device« ermöglichen bidirektionalen Dateitransfer. Ob die zugehörigen Zugriffsrechte ausreichen, um einen kompletten Filedump von Android auf den PC zu ermöglichen, hängt maßgeblich davon ab, ob ein gerootetes Smartphone vorliegt. In der Praxis dürfte dies wohl eher selten der Fall sein. Aber schon mit einfachen Benutzerrechten sind diverse Dumps von wichtigen Dateien möglich. Android speichert viele seiner Information in XML-Dateien oder SQLite-Datenbanken.

Diesen Artikel als PDF kaufen

Express-Kauf als PDF

Umfang: 7 Heftseiten

Preis € 0,99
(inkl. 19% MwSt.)

Als digitales Abo

Als PDF im Abo bestellen

comments powered by Disqus

Ausgabe 07/2013

Preis € 6,40

Insecurity Bulletin

Insecurity Bulletin

Im Insecurity Bulletin widmet sich Mark Vogelsberger aktuellen Sicherheitslücken sowie Hintergründen und Security-Grundlagen. mehr...

Linux-Magazin auf Facebook