TY - GEN
T1 - When program analysis meets mobile security
T2 - 11th Joint Meeting of the European Software Engineering Conference and the ACM SIGSOFT Symposium on the Foundations of Software Engineering, ESEC/FSE 2017
AU - Bu, Wenqi
AU - Xue, Minhui
AU - Xu, Lihua
AU - Zhou, Yajin
AU - Tang, Zhushou
AU - Xie, Tao
N1 - Funding Information:
This work was supported in part by the National Natural Science Foundation of China, under Grants 61502170 and 61673180, in part by the East China Normal University travel grant, and in part by the Shanghai Pujiang Program, under Grant 16PJ1430800. The work was also supported in part by NSF under grants no. CCF-1409423, CNS-1434582, CNS-1513939, CNS-1564274.
PY - 2017/8/21
Y1 - 2017/8/21
N2 - Despite recent progress in program analysis techniques to identify vulnerabilities in Android apps, significant challenges still remain for applying these techniques to large-scale industrial environments. Modern software-security providers, such as Qihoo 360 and Pwnzen (two leading companies in China), are often required to process more than 10 million mobile apps at each run. In this work, we focus on effectively and efficiently identifying vulnerable usage of Internet sockets in an industrial setting. To achieve this goal, we propose a practical hybrid approach that enables lightweight yet precise detection in the industrial setting. In particular, we integrate the process of categorizing potential vulnerable apps with analysis techniques, to reduce the inevitable human inspection effort. We categorize potential vulnerable apps based on characteristics of vulnerability signatures, to reduce the burden on static analysis. We flexibly integrate static and dynamic analyses for apps in each identified family, to refine the family signatures and hence target on precise detection.We implement our approach in a practical system and deploy the system on the Pwnzen platform. By using the system, we identify and report potential vulnerabilities of 24 vulnerable apps (falling into 3 vulnerability families) to their developers, and some of these reported vulnerabilities are previously unknown. The apps of each vulnerability family in total have over 50 million downloads. We also propose countermeasures and highlight promising directions for technology transfer.
AB - Despite recent progress in program analysis techniques to identify vulnerabilities in Android apps, significant challenges still remain for applying these techniques to large-scale industrial environments. Modern software-security providers, such as Qihoo 360 and Pwnzen (two leading companies in China), are often required to process more than 10 million mobile apps at each run. In this work, we focus on effectively and efficiently identifying vulnerable usage of Internet sockets in an industrial setting. To achieve this goal, we propose a practical hybrid approach that enables lightweight yet precise detection in the industrial setting. In particular, we integrate the process of categorizing potential vulnerable apps with analysis techniques, to reduce the inevitable human inspection effort. We categorize potential vulnerable apps based on characteristics of vulnerability signatures, to reduce the burden on static analysis. We flexibly integrate static and dynamic analyses for apps in each identified family, to refine the family signatures and hence target on precise detection.We implement our approach in a practical system and deploy the system on the Pwnzen platform. By using the system, we identify and report potential vulnerabilities of 24 vulnerable apps (falling into 3 vulnerability families) to their developers, and some of these reported vulnerabilities are previously unknown. The apps of each vulnerability family in total have over 50 million downloads. We also propose countermeasures and highlight promising directions for technology transfer.
KW - Android security
KW - Internet sockets
KW - Vulnerability analysis
UR - http://www.scopus.com/inward/record.url?scp=85030760502&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=85030760502&partnerID=8YFLogxK
U2 - 10.1145/3106237.3117764
DO - 10.1145/3106237.3117764
M3 - Conference contribution
AN - SCOPUS:85030760502
T3 - Proceedings of the ACM SIGSOFT Symposium on the Foundations of Software Engineering
SP - 842
EP - 847
BT - ESEC/FSE 2017 - Proceedings of the 2017 11th Joint Meeting on Foundations of Software Engineering
A2 - Zisman, Andrea
A2 - Bodden, Eric
A2 - Schafer, Wilhelm
A2 - van Deursen, Arie
PB - Association for Computing Machinery
Y2 - 4 September 2017 through 8 September 2017
ER -