GroddDroid is a framework for executing automatically malware on a smartphone. GroddDroid tries to identify the suspicious code by scoring the methods of the malware. Then, GroddDroid executes the malware and triggers the graphical elements of the user interface. If the suspicious code has not not been triggered, GroddDroid can modify the bytecode in order to force the control flow to reach the suspicious code.
http://kharon.gforge.inria.fr/grodddroid.html
- Android malware analysis: from technical difficulties to scientific challenges
Jean-François Lalande
International Conference on Information Technology and Communications Security 17-212018 doi ABS
Ten years ago, google released the first version of its new operating system: android. with an open market for third party applications, attackers started to develop malicious applications. researchers started new works too. inspired by previous techniques for windows or gnu/linux malware, a lot of papers introduced new ways of detecting, classifying, defeating android malware. in this paper, we propose to explore the technical difficulties of experimenting with android malware. these difficulties are encountered by researchers, each time they want to publish a solid experiment validating their approach. how to choose malware samples? how to process a large amount of malware? what happens if the experiment needs to execute dynamically a sample? the end of the paper presents the upcoming scientific challenges of the community interested in malware analysis.
- GPFinder: Tracking the Invisible in android malware
Mourad Leslous, Valérie Viet Triem Tong, Jean-François Lalande, Thomas Genet
12th International Conference on Malicious and Unwanted Software IEEE Conputer Society 39-462017 doi ABS
Malicious android applications use clever techniques to hide their real intents from the user and avoid detection by security tools. they resort to code obfuscation and dynamic loading, or wait for special events on the system like reboot or wifi activation. therefore, promising approaches aim to locate, study and execute specific parts of android applications in order to monitor for suspicious behavior. they rely on control flow graphs (cfgs) to obtain execution paths towards sensitive codes. we claim here that these cfgs are incomplete because they do not take into consideration implicit control flow calls, i.e., those that occur when the android framework calls a method implemented in the application space. this article proposes a practical tool, gpfinder, exposing execution paths towards any piece of code considered as suspicious. gpfinder takes the android framework into account and considers explicit and implicit control flow calls to build cfgs. using gpfinder, we give global characteristics of application cfgs by studying a dataset of 14,224 malware and 2,311 goodware samples. we evaluate that 72.69\%of the analyzed malicious samples have at least one suspicious method reachable only through implicit calls.
- GroddDroid: A gorilla for triggering malicious behaviors
A. Abraham, R. Andriatsimandefitra, A. Brunelat, J. F. Lalande, V. Viet Triem Tong
2015 10th International Conference on Malicious and Unwanted Software, MALWARE 2015 IEEE Computer Society 119-1272015 doi ABS
Android malware authors use sophisticated techniques to hide the malicious intent of their applications. they use cryptography or obfuscation techniques to avoid detection during static analysis. they can also avoid detection during a dynamic analysis. frequently, the malicious execution is postponed as long as the malware is not convinced that it is running in a real smartphone of a real user. however, we believe that dynamic analysis methods give good results when they really monitor the malware execution. in this article, we propose a method to enhance the execution of the malicious code of unknown malware. we especially target malware that have triggering protections, for example branching conditions that wait for an event or expect a specific value for a variable before triggering malicious execution. in these cases, solely executing the malware is far from being sufficient. we propose to force the triggering of the malicious code by combining two contributions. first, we define an algorithm that automatically identifies potentially malicious code. second, we propose an enhanced monkey called grodddroid, that stimulates the gui of an application and forces the execution of some branching conditions if needed. the forcing is used by grodddroid to push the execution flow towards the previously identified malicious parts of the malware and execute it. the source code for our experiments with grodddroid is released as free software. we have verified on a malware dataset that we investigated manually that the malicious code is accurately executed by grodddroid. additionally, on a large dataset of 100 malware we precisely identify the nature of the suspicious code and we succeed to execute it at 28\%.
(best paper award)