Schutzmöglichkeiten vor mobiler Ransomware

Originalbeitrag von Federico Maggi, Senior Threat Researcher

Wenn die technischen Fähigkeiten mobiler Ransomware bekannt sind (siehe auch „Mobile Ransomware: Bösartigkeit in Taschenformat“), lassen sich auch entsprechende Erkennungs- und Schutztechniken entwerfen und implementieren. Trend Micro ist der Ansicht, dass die bösartige Funktionalität im Anwendungscode auftaucht und wählt deshalb als Verteidigung einen Ansatz über statische Analyse mit einigen Tricks, um typische Ausnahmefälle wie Verschleierungstechniken zu lösen.


Bild 1. Verschiedene Ansätze zur Entdeckung von mobiler Ransomware

Die typische “Drohnachricht” ist klar und verständlich und umfasst detaillierte Anweisungen für die Vorgehensweise bei der Zahlung. Dies lässt sich mithilfe eines maschinellen Lernansatzes erkennen, der automatisch Text als „bedrohlich“ oder „normal“ klassifiziert. Nach einiger Vorverarbeitung, um nicht relevante Wörter wie Artikel oder Präpositionen zu entfernen und die Wörter auf ihre grammatische Basisform zu reduzieren, wird ein Klassifizierer mit dem Text trainiert, indem er sowohl Beispiele typischer „bedrohlicher“ als auch harmloser Inhalte erhält. Schließlich lernt dann der Klassifizierer harmlosen von bösartigem Text zu unterscheiden.

Die typischen Techniken zum Sperren sind bekannt und können über leichtgewichtige symbolische Ausführung erkannt werden. Vor allem wird der Bytecode der App nach den Unterklassen von android.app.Activity durchsucht, die die Methoden onKeyUp und onKeyDown überschreiben. Dann wird der Code innerhalb dieser Methoden symbolisch ausgeführt, um herauszufinden, ob es Codepfade gibt, die den Home- oder Back-Button (blauer Pfeil in Abb. 2) verwalten und „true“ ausgeben (roter Pfeil) als Zeichen dafür, dass das Event nicht weiter verbreitet wird. Das wiederum bedeutet, dass keine weiteren Apps in den Vordergrund geschickt werden.

Bild 2. Codepfade, die Buttons verwalten

Um das Verwaltungs-API eines Geräts zu missbrauchen, muss eine App dies im Manifest deklarieren, indem sie sich mit einer separaten Datei verbindet, die die „Policies“ definiert, die für eine Admin-App gelten. Technische Details zur Überprüfung der Rechtmäßigkeit der Vorgehensweise einer App liefert der Originalbeitrag.

Bild 3. Aufdecken des Missbrauchs der Administrations-API eines Geräts

Leider kann der gesamte Prozess mehrere Minuten pro App dauern. Doch auch hier hilft maschinelles Lernen, denn damit lassen sich Apps vorfiltern, um mit hoher Genauigkeit festzustellen, welche wirklich sicher sind. Nur die verdächtigen werden dann weiter analysiert, und die Dauer der Prüfung wird somit erheblich verkürzt.

Lösungen von Trend Micro

Trend Micro investiert stetig in fortschrittliche Techniken, wie die über maschinelles Lernen, um neue Ransomware-Varianten schnell zu erkennen und Endanwender davor zu schützen. Trend Micro™ Mobile Security kann Bedrohungen blocken, bevor sie installiert werden und damit auf den Geräten der Anwender Schaden anrichten.

Unternehmensanwender sollten Lösungen wie Trend Micro™ Mobile Security for Enterprise einsetzen. Diese umfassen Gerätemanagement, Datenschutz, Anwendungs- und Compliance-Management, Konfigurations-Provisioning und weitere Fähigkeiten, um Vertraulichkeit und Sicherheit in Einklang zu bringen.

Forschungsunterlagen und Präsentation

Weitere technische Informationen finden Interessierte in folgenden Dokumenten:

  • HelDroid: Dissecting and Detecting Mobile Ransomware Niccolò Andronio, Stefano Zanero und Federico Maggi, International Symposium on Research in Attacks, Intrusions and Defenses (RAID). Lecture notes in computer science. Kyoto, Japan, 382–404. DOI: http://dx.doi.org/10.1007/978-3-319-26362-5_18 (Oktober 2015) [PDF]
  • Pocket-sized Badness: Why Ransomware Comes as a Plot Twist in the Cat-Mouse Game Federico Maggi und Stefano Zanero, Blackhat Europe, London, UK. (November 3, 2016) – https://www.blackhat.com/eu-16/briefings.html [PDF]

 

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

*