Android-Malware-Apps: Mit Tricks der Entdeckung entgehen

IT-Sicherheitsforscher haben Android-Malware-Apps untersucht und sind dabei auf einige Tricks gestoßen, mit denen sie der Entdeckung entgehen wollen.

In Pocket speichern vorlesen Druckansicht 11 Kommentare lesen
Hände am Smartphone, alles gehüllt in rotes Licht

(Bild: Bits And Splits/Shutterstock.com)

Lesezeit: 3 Min.
Von

IT-Sicherheitsforscher von Zimperium haben einige tausend Malware-Apps für Android analysiert und sind dabei auf mehrere Techniken gestoßen, mit denen deren Programmierer versuchen, der Erkennung zu entgehen. Ein Großteil der APKs wurde dadurch so stark zerstört, dass sie sich gar nicht erst installieren ließen – jedoch waren 71 Samples trotzdem lauffähig.

Die IT-Forscher haben nach APK-Installationsdateien in öffentlichen Repositories gesucht, die ein manipuliertes Feld "Compression method" enthalten. Dabei wurden sie bei 3.300 Dateien fündig. Von denen war jedoch keine im offiziellen Google Play Store zu finden.

Wie die Zimperium-Analytiker in ihrem Blogbeitrag ausführen, nutzt Android in den APKs zur Verkleinerung der zu übertragenden Datenmengen ZIP-Kompression. Dabei unterstützt das Betriebssystem die Methoden STORED (also ohne Kompression, das entsprechende Feld im Header hat den Wert 0x0000) oder DEFLATE (Wert des Header-Felds 0x0008). Andere Werte sind unbekannt und nicht unterstützt. Android prüft bis Version 4.3 auf den Eintrag DEFLATE und nimmt bei anderen Werten als Kompressionsmethode STORED an, während ab Android 4.4 bis 8 der Standard DEFLATE angenommen wird, wenn der Wert des Header-Felds nicht mit STORED übereinstimmt. Android 9 oder neuer, was praktisch derzeit eigentlich überall anzutreffen sein dürfte, können jedoch APKs mit einer unbekannten oder nicht unterstützten Kompressionsmethode möglicherweise installieren.

Auch andere Tools haben Probleme mit derartig manipulierten APKs. Etwa das macOS Archiv-Werkzeug kann diese Dateien nicht entpacken oder ignoriert wichtige Dateien. JADX und APKTool zeigen demnach ebenfalls Probleme mit den Dateien. Andere Werkzeuge wie JEB hätten in der jüngsten Version erst Unterstützung für diese unbrauchbaren Kompressionsmethoden ergänzt.

Auch weitere Verschleierungstaktiken haben die IT-Forscher gefunden. ZIP unterstützt Dateinamen mit einer Maximalgröße von 16 Bit, also 65536 Zeichen, Android begrenzt jedoch bei 256. Bei APKs, die längere Dateinamen in den enthaltenen Archiven nutzen, führt das bei einigen Tools beim Entpack- oder Dekompilier-Versuch bis hin zum Absturz. Auch manipulierte AndroidManifest.xml-Dateien im APK lösten in Analysetools solch ein Verhalten aus. Etwa abweichende Werte für stringCount und number of indices in der XML-Datei führten ebenfalls zu Abstürzen.

Derartige deformierte Dateien sind etwa unter Windows bei Malware-Programmierern an der Tagesordnung. Die Parser der Antivirenprogramme lassen sich damit oftmals umgehen, bis die Virenanalysten sie entsprechend nachrüsten. Die Malware-Programmierer testen die Manipulationen an ausführbaren Dateien zuvor jedoch aus, sodass der Windows-Loader sie anstandslos startet. Diese Techniken finden offenbar auch Einzug in die Android-Malware. Allerdings waren lediglich 71 von 3.300 Dateien überhaupt ausführbar, ergänzen die IT-Forscher in der Analyse. Sie listen dort auch Indizien für Infektionen (Indicators of Compromise, IOCs) in Form von Paketnamen und Hashwerten auf.

Bitdefender hat im Juni vor einer Technik zum Verstecken von Android-Malware gewarnt, bei der die Programmierer keinen Launcher registrieren. Dadurch lassen sich die Apps schwer finden und deinstallieren. Um dennoch zu laufen, setzen die Apps darauf, dass Opfer sie direkt nach der Installation mit der Schaltfläche "Öffnen" starten, woraufhin sich die Malware im Smartphone einnistet.

(dmk)