MtdScout : Complementing the identification of insecure methods in Android apps via source-to-bytecode signature generation and tree-based layered search

Modern Android apps consist of both host app code and third-party libraries. Traditional static analysis tools conduct taint analysis for API misuses on the entire app code, while third-party library (TPL) detection tools focus solely on library code. Both approaches, however, are prone to some inhe...

Full description

Saved in:
Bibliographic Details
Main Authors: ZHANG, Zicheng, MA, Haoyu, WU, Daoyuan, GAO, Debin, YI, Xiao, CHEN, Yufan, WU, Yan, JIANG, Lingxiao
Format: text
Language:English
Published: Institutional Knowledge at Singapore Management University 2024
Subjects:
Online Access:https://ink.library.smu.edu.sg/sis_research/9688
https://ink.library.smu.edu.sg/context/sis_research/article/10688/viewcontent/eurosp24__1_.pdf
Tags: Add Tag
No Tags, Be the first to tag this record!
Institution: Singapore Management University
Language: English
id sg-smu-ink.sis_research-10688
record_format dspace
spelling sg-smu-ink.sis_research-106882024-11-28T09:10:08Z MtdScout : Complementing the identification of insecure methods in Android apps via source-to-bytecode signature generation and tree-based layered search ZHANG, Zicheng MA, Haoyu WU, Daoyuan GAO, Debin YI, Xiao CHEN, Yufan WU, Yan JIANG, Lingxiao Modern Android apps consist of both host app code and third-party libraries. Traditional static analysis tools conduct taint analysis for API misuses on the entire app code, while third-party library (TPL) detection tools focus solely on library code. Both approaches, however, are prone to some inherent false negatives: taint analysis tools may neglect third-party libraries or face timeouts/errors in whole app-based analysis, and TPL detection tools are not designed for pinpointing specific vulnerable methods. These challenges underscore the need for enhanced identification of insecure methods in Android apps, particularly for app markets addressing open-source security incidents. In this paper, we aim to complement the identification of missed false negatives in both TPL detection and taint analysis by directly identifying clones of insecure methods, regardless of whether they are in the host app code or a shrunk library. We propose MtdScout, a novel crosslayer, method-level clone detection tool for Android apps. MtdScout generates bytecode signatures for flawed source methods using compiler-style interpretation and abstraction, and efficiently matches them with target app bytecode using signature-mapped search trees. Our experiment using ground-truth apps shows that MtdScout achieves the highest accuracy among three tested clone detection tools, with a precision of 92.5% and recall of 87.2%. A large-scale experiment with 23.9K apps from Google Play demonstrates MtdScout's effectiveness in complementing both LibScout and CryptoGuard by identifying numerous false negatives they missed due to app shrinking, method-only cloning, and inherent timeouts and failures in expensive taint analysis. Additionally, our experiment uncovers four security findings that highlight the disparities between MtdScout's methodlevel clone detection and package-level library detection. 2024-07-01T07:00:00Z text application/pdf https://ink.library.smu.edu.sg/sis_research/9688 info:doi/10.1109/EuroSP60621.2024.00045 https://ink.library.smu.edu.sg/context/sis_research/article/10688/viewcontent/eurosp24__1_.pdf http://creativecommons.org/licenses/by-nc-nd/4.0/ Research Collection School Of Computing and Information Systems eng Institutional Knowledge at Singapore Management University Clone detection Android apps Third-party library detection TPL detection Open-source security Information Security
institution Singapore Management University
building SMU Libraries
continent Asia
country Singapore
Singapore
content_provider SMU Libraries
collection InK@SMU
language English
topic Clone detection
Android apps
Third-party library detection
TPL detection
Open-source security
Information Security
spellingShingle Clone detection
Android apps
Third-party library detection
TPL detection
Open-source security
Information Security
ZHANG, Zicheng
MA, Haoyu
WU, Daoyuan
GAO, Debin
YI, Xiao
CHEN, Yufan
WU, Yan
JIANG, Lingxiao
MtdScout : Complementing the identification of insecure methods in Android apps via source-to-bytecode signature generation and tree-based layered search
description Modern Android apps consist of both host app code and third-party libraries. Traditional static analysis tools conduct taint analysis for API misuses on the entire app code, while third-party library (TPL) detection tools focus solely on library code. Both approaches, however, are prone to some inherent false negatives: taint analysis tools may neglect third-party libraries or face timeouts/errors in whole app-based analysis, and TPL detection tools are not designed for pinpointing specific vulnerable methods. These challenges underscore the need for enhanced identification of insecure methods in Android apps, particularly for app markets addressing open-source security incidents. In this paper, we aim to complement the identification of missed false negatives in both TPL detection and taint analysis by directly identifying clones of insecure methods, regardless of whether they are in the host app code or a shrunk library. We propose MtdScout, a novel crosslayer, method-level clone detection tool for Android apps. MtdScout generates bytecode signatures for flawed source methods using compiler-style interpretation and abstraction, and efficiently matches them with target app bytecode using signature-mapped search trees. Our experiment using ground-truth apps shows that MtdScout achieves the highest accuracy among three tested clone detection tools, with a precision of 92.5% and recall of 87.2%. A large-scale experiment with 23.9K apps from Google Play demonstrates MtdScout's effectiveness in complementing both LibScout and CryptoGuard by identifying numerous false negatives they missed due to app shrinking, method-only cloning, and inherent timeouts and failures in expensive taint analysis. Additionally, our experiment uncovers four security findings that highlight the disparities between MtdScout's methodlevel clone detection and package-level library detection.
format text
author ZHANG, Zicheng
MA, Haoyu
WU, Daoyuan
GAO, Debin
YI, Xiao
CHEN, Yufan
WU, Yan
JIANG, Lingxiao
author_facet ZHANG, Zicheng
MA, Haoyu
WU, Daoyuan
GAO, Debin
YI, Xiao
CHEN, Yufan
WU, Yan
JIANG, Lingxiao
author_sort ZHANG, Zicheng
title MtdScout : Complementing the identification of insecure methods in Android apps via source-to-bytecode signature generation and tree-based layered search
title_short MtdScout : Complementing the identification of insecure methods in Android apps via source-to-bytecode signature generation and tree-based layered search
title_full MtdScout : Complementing the identification of insecure methods in Android apps via source-to-bytecode signature generation and tree-based layered search
title_fullStr MtdScout : Complementing the identification of insecure methods in Android apps via source-to-bytecode signature generation and tree-based layered search
title_full_unstemmed MtdScout : Complementing the identification of insecure methods in Android apps via source-to-bytecode signature generation and tree-based layered search
title_sort mtdscout : complementing the identification of insecure methods in android apps via source-to-bytecode signature generation and tree-based layered search
publisher Institutional Knowledge at Singapore Management University
publishDate 2024
url https://ink.library.smu.edu.sg/sis_research/9688
https://ink.library.smu.edu.sg/context/sis_research/article/10688/viewcontent/eurosp24__1_.pdf
_version_ 1819113103295512576