Automated identification of callbacks in Android framework using machine learning techniques. (2018) - Chen, Xiupeng; Mu, Rongzeng; Yan, Yuepeng
The number of malicious Android applications has grown explosively, leaking massive privacy sensitive information. Nevertheless, the existing static code analysis tools relying on imprecise callbacks list will miss high numbers of leaks, which is demonstrated in the paper. This paper presents a machine learning approach to identifying callbacks automatically in Android framework. As long as it is given a training set of hand-annotated callbacks, the proposed approach can detect all of them in the entire framework. A series of experiments are conducted to identify 20, 391 callbacks on Android 4.2. This proposed approach, verified by a ten-fold cross-validation, is effective and efficient in terms of precision and recall, with an average of more than 91%. The evaluation results shows that many of newly discovered callbacks are indeed used, which furthermore confirms that the approach is suitable for all Android framework versions.