Harvester weckt „Schläfer“-Malware
Tool der TU Darmstadt und Fraunhofer SIT enttarnt Android-Schadcode
12.03.2015 von Oliver Küch
Cyberkriminelle nutzen immer häufiger „Schläfer“-Software, um Schadcode für mobile Geräte in Apps zu verstecken. Diese „schlafende“ Malware wird erst nach einem bestimmten Zeitraum oder festgelegten Aktionen aktiv, was die Erkennung enorm erschwert. Sicherheitsforscher der TU Darmstadt und des Fraunhofer-Instituts für Sichere Informationstechnologie SIT haben deshalb das Analysetool Harvester entwickelt, das die Malware blitzschnell enttarnt.
Millionen von Android-Geräten sind bereits mit mobilem „Schläfer“-Schadcode, auch timing bombs genannt, infiziert – auf den ersten Blick scheinen sie normale Software zu sein. Ihr schädliches Potenzial entfalten sie erst nach einer längeren Inkubationszeit. Für den Smartphone-Besitzer ist es dann schwierig festzustellen, was die eigentliche Ursache dieses zeitverzögerten Angriffs ist.
Ein aktuelles Beispiel ist der Banking-Trojaner BadAccents, ein zweistufiger Schadcode, der beim Herunterladen einer vermeintlichen Raubkopie des Films „The Interview“ aufs Smartphone kommt. Aktiv werden einzelne Komponenten in BadAccents erst unter bestimmten Umständen, etwa wenn das Smartphone per SMS bestimmte Befehle empfängt.
Auch für Sicherheitsanalysten, etwa von Antiviren-Herstellern, ist schlafender Schadcode, der erst unter speziellen Ereignissen ausgelöst wird, ein Problem. Sie müssen jeden Tag mehrere Tausend neue Apps darauf prüfen, ob sie potenziell schädlich sind oder nicht. Daher bleiben für die Analyse jeder App nur wenige Minuten Zeit. Um eine Schläfer-App zu enttarnen, müsste ein Analyst eine solche Untersuchung tagelang ausführen und sämtliche Ereigniskombinationen simulieren, denn im Vorhinein weiß man nicht, was den Schadcode aktiviert.
Um Schläfer-Apps schneller finden zu können, haben IT-Sicherheitsexperten der Technischen Universität Darmstadt und des Fraunhofer SIT das entwickelt. Das Analysewerkzeug nutzt eine einzigartige Kombination von Softwareanalyse-Techniken und Codeumwandlung und spart Sicherheitsanalysten damit viel Zeit. Analysetool Harvester
Tool nutzt „program slicing“ als Analyseverfahren
Harvester untersucht nicht den gesamten Code der Original-App, sondern analysiert verdächtige Programmstellen. Die Software nutzt hierfür ein spezielles Verfahren der statischen Analyse, „backwards slicing“ oder „program slicing“. Mithilfe des Tools können Analysten einfach den Teil des Codes herausschneiden, den sie näher untersuchen möchten – alles andere wird kurzerhand weggelassen. Dadurch wird etwaiger Schadcode direkt ausgeführt und programmierte Wartezeiten sowie Ereignisfilter entfallen.
Ist Schadcode gefunden worden, kann Harvester außerdem vollautomatisch wichtige Informationen (Ziel-Telefonnummern, Inhalte von SMSen, Entschlüsselungs-Schlüssel, URLs, etc.) aus dem schädlichen Android-Codes extrahieren, mit denen der Analyst auf Art und Quelle der Malware schließen kann. Für die Teilanalyse einer Codestelle benötigt Harvester rund eine Minute – das haben die Experten von TU Darmstadt und Fraunhofer SIT an mehr als 13.500 gängigen Malware-Beispielen getestet.
Das Testwerkzeug funktioniert sogar, wenn der Code der schädlichen App stark verschleiert ist oder andere Anti-Analyse-Techniken genutzt wurden. Eine Basisvariante steht als Open Source-Tool für wissenschaftliche Zwecke zur Verfügung, eine Nutzung durch Privatanwender ist nicht vorgesehen. Für die kommerzielle Nutzung können Unternehmen eine Version mit erweiterter Funktionalität lizenzieren. Harvester ist Teil eines Analyseframeworks, das derzeit in Darmstadt entwickelt wird. Mit dem Framework lässt sich Android-Code extrem schnell und einfach untersuchen.