Identifying vulnerabilities of SSL/TLS certificate verification in Android apps with static and dynamic analysis

被引:27
|
作者
Wang, Yingjie [1 ]
Xu, Guangquan [2 ,3 ]
Liu, Xing [1 ]
Mao, Weixuan [4 ]
Si, Chengxiang [4 ]
Pedrycz, Witold [6 ]
Wang, Wei [1 ,5 ]
机构
[1] Beijing Jiaotong Univ, Beijing Key Lab Secur & Privacy Intelligent Trans, Beijing, Peoples R China
[2] Qingdao Huanghai Univ, Big Data Sch, Qingdao, Peoples R China
[3] Tianjin Univ, Coll Intelligence & Comp, Tianjin Key Lab Adv Networking, Tianjin 300350, Peoples R China
[4] Coordinat Ctr China, Natl Comp Network Emergency Response Tech Team, Beijing, Peoples R China
[5] King Abdullah Univ Sci & Technol KAUST, Div Comp Elect & Math Sci & Engn CEMSE, Thuwal 239556900, Saudi Arabia
[6] Univ Alberta, Dept Elect & Comp Engn, Edmonton, AB, Canada
基金
国家重点研发计划;
关键词
Android security; Dynamic analysis; MITM; SSL/TLS; Vulnerability detection; Static analysis; AUDIT DATA STREAMS; PROFILING PROGRAM; BEHAVIORS; TAXONOMY; FEATURES; NETWORK; MALAPPS; ISSUES;
D O I
10.1016/j.jss.2020.110609
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Many Android developers fail to properly implement SSL/TLS during the development of an app, which may result in Man-In-The-Middle (MITM) attacks or phishing attacks. In this work, we design and implement a tool called DCDroid to detect these vulnerabilities with the combination of static and dynamic analysis. In static analysis, we focus on four types of vulnerable schema and locate the potential vulnerable code snippets in apps. In dynamic analysis, we prioritize the triggering of User Interface (UI) components based on the results obtained with static analysis to confirm the misuse of SSL/TLS. With DCDroid we analyze 2213 apps from Google Play and 360app. The experimental results show that 457 (20.65%) apps contain potential vulnerable code. We run apps with DCDroid on two Android smart phones and confirm that 245 (11.07%) of 2213 apps are truly vulnerable to MITM and phishing attacks. We propose several strategies to reduce the number of crashes and shorten the execution time in dynamic analysis. Comparing with our previous work, DCDroid decreases 57.18% of the number of apps' crash and 32.47% of the execution time on average. It also outperforms other three tools, namely, AndroBugs, kingkong and appscan, in terms of detection accuracy. (C) 2020 Elsevier Inc. All rights reserved.
引用
收藏
页数:12
相关论文
共 34 条
  • [21] Static analysis of Android Auto infotainment and on-board diagnostics II apps
    Mandal, Amit Kr
    Panarotto, Federica
    Cortesi, Agostino
    Ferrara, Pietro
    Spoto, Fausto
    SOFTWARE-PRACTICE & EXPERIENCE, 2019, 49 (07) : 1131 - 1161
  • [22] FirmwareDroid: Towards Automated Static Analysis of Pre-Installed Android Apps
    Sutter, Thomas
    Tellenbach, Bernhard
    2023 IEEE/ACM 10TH INTERNATIONAL CONFERENCE ON MOBILE SOFTWARE ENGINEERING AND SYSTEMS, MOBILESOFT, 2023, : 12 - 22
  • [23] An Android Application Vulnerability Mining Method Based On Static and Dynamic Analysis
    Wang Chao
    Li Qun
    Wang XiaoHu
    Ren TianYu
    Dong JiaHan
    Guo GuangXin
    Shi EnJie
    PROCEEDINGS OF 2020 IEEE 5TH INFORMATION TECHNOLOGY AND MECHATRONICS ENGINEERING CONFERENCE (ITOEC 2020), 2020, : 599 - 603
  • [24] OASIS: Prioritizing Static Analysis Warnings for Android Apps Based on App User Reviews
    Wei, Lili
    Liu, Yepang
    Cheung, Shing-Chi
    ESEC/FSE 2017: PROCEEDINGS OF THE 2017 11TH JOINT MEETING ON FOUNDATIONS OF SOFTWARE ENGINEERING, 2017, : 672 - 682
  • [25] Relda2: An Effective Static Analysis Tool for Resource Leak Detection in Android Apps
    Wu, Tianyong
    Liu, Jierui
    Deng, Xi
    Yan, Jun
    Zhang, Jian
    2016 31ST IEEE/ACM INTERNATIONAL CONFERENCE ON AUTOMATED SOFTWARE ENGINEERING (ASE), 2016, : 762 - 767
  • [26] NativeSummary: Summarizing Native Binary Code for Inter-language Static Analysis of Android Apps
    Wang, Jikai
    Wang, Haoyu
    PROCEEDINGS OF THE 33RD ACM SIGSOFT INTERNATIONAL SYMPOSIUM ON SOFTWARE TESTING AND ANALYSIS, ISSTA 2024, 2024, : 971 - 982
  • [27] Verification of program dynamic behaviours based on static analysis
    Xu, Shanwei
    Dasiewicz, P.
    2008 CANADIAN CONFERENCE ON ELECTRICAL AND COMPUTER ENGINEERING, VOLS 1-4, 2008, : 210 - 213
  • [28] revDroid: Code Analysis of the Side Effects after Dynamic Permission Revocation of Android Apps
    Fang, Zheran
    Han, Weili
    Li, Dong
    Guo, Zeqing
    Guo, Danhao
    Wang, Xiaoyang Sean
    Qian, Zhiyun
    Chen, Hao
    ASIA CCS'16: PROCEEDINGS OF THE 11TH ACM ASIA CONFERENCE ON COMPUTER AND COMMUNICATIONS SECURITY, 2016, : 747 - 758
  • [29] Machine learning-based dynamic analysis of Android apps with improved code coverage
    Yerima, Suleiman Y.
    Alzaylaee, Mohammed K.
    Sezer, Sakir
    EURASIP JOURNAL ON INFORMATION SECURITY, 2019, 2019 (1)
  • [30] Machine learning-based dynamic analysis of Android apps with improved code coverage
    Suleiman Y. Yerima
    Mohammed K. Alzaylaee
    Sakir Sezer
    EURASIP Journal on Information Security, 2019