StubDroid: Automatic Inference of Precise Data-flow Summaries for the Android Framework

被引:50
作者
Arzt, Steven [1 ]
Bodden, Eric [2 ,3 ]
机构
[1] Tech Univ Darmstadt, EC SPRIDE, Secure Software Engn Grp, Darmstadt, Germany
[2] Paderborn Univ, Software Engn Grp, Paderborn, Germany
[3] Fraunhofer IEM, Paderborn, Germany
来源
2016 IEEE/ACM 38TH INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING (ICSE) | 2016年
关键词
Static analysis; summary; library; framework model; model inference;
D O I
10.1145/2884781.2884816
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Smartphone users suffer from insufficient information on how commercial as well as malicious apps handle sensitive data stored on their phones. Automated taint analyses address this problem by allowing users to detect and investigate how applications access and handle this data. A current problem with virtually all those analysis approaches is, though, that they rely on explicit models of the Android run-time library. In most cases, the existence of those models is taken for granted, despite the fact that the models are hard to come by: Given the size and evolution speed of a modern smartphone operating system it is prohibitively expensive to derive models manually from code or documentation. In this work, we therefore present STUBDROID, the first fully automated approach for inferring precise and efficient library models for taint-analysis problems. STUBDROID automatically constructs these summaries from a binary distribution of the library. In our experiments, we use STUBDROID-inferred models to prevent the static taint analysis FlowDroid from having to re-analyze the Android runtime library over and over again for each analyzed app. As the results show, the models make it possible to analyze apps in seconds whereas most complete re-analyses would time out after 30 minutes. Yet, STUBDROID yields comparable precision. In comparison to manually crafted summaries, STUBDROID's cause the analysis to be more precise and to use less time and memory.
引用
收藏
页码:725 / 735
页数:11
相关论文
共 22 条
[1]  
[Anonymous], P 21 NETW DISTR SYST
[2]  
[Anonymous], 2011, The Soot framework for Java program analysis: a retrospective
[3]  
[Anonymous], 2009, SCANDROID AUTO UNPUB
[4]  
[Anonymous], 2012, Proceedings of the 19th ACM Conference on Computer and Communications Security, DOI DOI 10.1145/2382196.2382223
[5]  
[Anonymous], 2012, MOST 2012 MOBILE SEC
[6]  
[Anonymous], 2014, P ACM SIGPLAN C PROG
[7]  
Enck William., 2010, Proceedings of the USENIX Symposium on Operating Systems Design and Implementation (OSDI), P393
[8]  
Feng Y., 2013, TECHNICAL REPORT
[9]  
Gordon M. I., 2015, P NETW DISTR SYST SE
[10]  
Haiyan Zhu, 2013, Programming Languages and Systems. 11th Asian Symposium, APLAS 2013. Proceedings: LNCS 8301, P290, DOI 10.1007/978-3-319-03542-0_21