A fine-grained approach for Android taint analysis based on labeled taint value graphs

被引:0
|
作者
Xiang, Dongming [1 ]
Lin, Shuai [1 ]
Huang, Ke [2 ]
Ding, Zuohua [1 ]
Liu, Guanjun [3 ,4 ]
Li, Xiaofeng [5 ,6 ]
机构
[1] Zhejiang Sci Tech Univ, Sch Comp Sci & Technol, Hangzhou 310000, Zhejiang, Peoples R China
[2] Zhejiang Petr Comprehens Energy Sales Co Ltd, Jinhua 321013, Zhejiang, Peoples R China
[3] Tongji Univ, Key Lab Embedded Syst & Serv Comp, Dept Comp Sci, Minist Educ, Shanghai 200092, Peoples R China
[4] Tongji Univ, Shanghai Elect Transact & Informat Serv, Collaborat Innovat Ctr, Shanghai 200092, Peoples R China
[5] Beijing Inst Control Engn, Beijing 100094, Peoples R China
[6] Northwestern Polytech Univ, Sch Software, Xian 710129, Shanxi, Peoples R China
关键词
Static taint analysis; Android security; Vulnerability detection; Fine-grained analysis;
D O I
10.1016/j.cose.2024.104162
中图分类号
TP [自动化技术、计算机技术];
学科分类号
0812 ;
摘要
Static taint analysis is a widely used method to identify vulnerabilities in Android applications. However, the existing tools for static analysis often struggle with processing times, particularly when dealing with complex real-world programs. To reduce time consumption, some tools choose to sacrifice analytical precision, e.g., FastDroid sets an upper limit for analysis iterations in Android applications. In this paper, we propose a labeled taint value graph (LTVG) to store taint flows, and implement a fine-grained analysis tool called LabeledDroid. This graph is constructed based on the taint value graph (TVG) of FastDroid, and takes into account both precision and time consumption. That is, we decompile an Android app into Jimple statements, develop finegrained propagation rules to handle List, and construct LTVGs according to these rules. Afterwards, we traverse LTVGs to obtain high-precision taint flows. An analysis of 39 apps from the TaintBench benchmark shows that LabeledDroid is 0.87 s faster than FastDroid on average. Furthermore, if some common accuracy parameters are adapted in both LabeledDroid and FastDroid, the experiment demonstrates that the former is more scalable. Moreover, the maximum analysis time of LabeledDroid is less than 200 s and its average time is 46.25 s, while FastDroid sometimes experiences timeouts with durations longer than 600 s. Additionally, LabeledDroid achieves a precision of 70% in handling lists, while FastDroid and TaintSA achieve precisions of 38.9% and 41.2%, respectively.
引用
收藏
页数:11
相关论文
共 50 条
  • [1] An efficient approach for taint analysis of android applications
    Zhang, Jie
    Tian, Cong
    Duan, Zhenhua
    COMPUTERS & SECURITY, 2021, 104
  • [2] Efficient Fine-Grained Binary Instrumentation with Applications to Taint-Tracking
    Saxena, Prateek
    Sekar, R.
    Puranik, Varun
    CGO 2008: SIXTH INTERNATIONAL SYMPOSIUM ON CODE GENERATION AND OPTIMIZATION, PROCEEDINGS, 2008, : 74 - 83
  • [3] Taint Analysis Tool of Android Applications Based on Tainted Value Graph
    Zhang J.
    Tian C.
    Duan Z.-H.
    Ruan Jian Xue Bao/Journal of Software, 2021, 32 (06): : 1701 - 1716
  • [4] Taint Analysis of Arrays in Android Applications
    Maalouf, Assad
    Lu, Lunjin
    36TH ANNUAL ACM SYMPOSIUM ON APPLIED COMPUTING, SAC 2021, 2021, : 893 - 899
  • [5] TaintStream: Fine-Grained Taint Tracking for Big Data Platforms through Dynamic Code Translation
    Yang, Chengxu
    Li, Yuanchun
    Xu, Mengwei
    Chen, Zhenpeng
    Liu, Yunxin
    Huang, Gang
    Liu, Xuanzhe
    PROCEEDINGS OF THE 29TH ACM JOINT MEETING ON EUROPEAN SOFTWARE ENGINEERING CONFERENCE AND SYMPOSIUM ON THE FOUNDATIONS OF SOFTWARE ENGINEERING (ESEC/FSE '21), 2021, : 806 - 817
  • [6] FastDroid: Efficient Taint Analysis for Android Applications
    Zhang, Jie
    Tian, Cong
    Duan, Zhenhua
    2019 IEEE/ACM 41ST INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING: COMPANION PROCEEDINGS (ICSE-COMPANION 2019), 2019, : 236 - 237
  • [7] A Qualitative Analysis of Android Taint-Analysis Results
    Luo, Linghui
    Bodden, Eric
    Spath, Johannes
    34TH IEEE/ACM INTERNATIONAL CONFERENCE ON AUTOMATED SOFTWARE ENGINEERING (ASE 2019), 2019, : 102 - 114
  • [8] Android static taint analysis based on multi branch search association
    Tang, Chenghua
    Du, Zheng
    Yang, Mengmeng
    Qiang, Baohua
    COMPUTERS & SECURITY, 2023, 129
  • [9] Detecting Sensitive Behavior on Android with Static Taint Analysis Based on Classification
    Chen, Yayun
    Zhang, Hua
    PROCEEDINGS OF THE 4TH INTERNATIONAL CONFERENCE ON MECHATRONICS, MATERIALS, CHEMISTRY AND COMPUTER ENGINEERING 2015 (ICMMCCE 2015), 2015, 39 : 3002 - 3006
  • [10] Overview of Information Flow Tracking Techniques Based on Taint Analysis for Android
    Lokhande, Bhushan
    Dhavale, Sunita
    2014 INTERNATIONAL CONFERENCE ON COMPUTING FOR SUSTAINABLE GLOBAL DEVELOPMENT (INDIACOM), 2014, : 749 - 753