paperbot · PL 论文追踪

全部论文 待读 收藏

P2 ATVHunter: Reliable Version Detection of Third-Party Libraries for Vulnerability Identification in Android Applications

ATVHunter:面向 Android 应用漏洞识别的可靠第三方库版本检测
ICSE 2021 IEEE/ACM 43rd International Conference on Software Engineering (ICSE)2021匹配度 2/10 · 该论文聚焦 Android 第三方库版本检测与漏洞识别,属于移动安全与程序分析应用,但未涉及用户关心的 ML/Agentic 程序静态分析、LLM 与静态分析结合、浮点程序分析或贝叶斯程序分析。虽然使用 CFG/opcode 等静态分析技术,但研究问题与用户画像核心方向距离较远。引用 126 inbox
Xian Zhan, Lingling Fan, Sen Chen, Feng We, Tianming Liu, Xiapu Luo, Yang Liu
crossref: 2026-09-12dblp: 2026-09-12arxiv: 2026-09-12

AI 速览

一句话:提出两阶段 TPL 检测系统 ATVHunter,精确识别 Android 应用中的第三方库版本及其漏洞。

第三方库(TPL)是 Android 应用的重要组成,但 TPL 依赖、代码混淆和精确版本表示使现有检测工具难以可靠识别版本,更无法定位漏洞版本。ATVHunter 提出两阶段检测:以控制流图(CFG)作粗粒度特征匹配预定义 TPL 数据库,再以 CFG 基本块中的 opcode 作细粒度特征识别精确版本;其参考库含 189,545 个唯一 TPL、3,006,676 个版本,漏洞库含 1,180 个 CVE 和 224 个安全缺陷。实验取得 90.55% 精确率和 88.79% 召回率,高效、抗混淆且可扩展;对 104,446 个应用的大规模分析发现 9,050 个应用含漏洞 TPL 版本,涉及 53,337 个漏洞和 7,480 个安全缺陷。

问题
现有 Android TPL 检测工具难以解决 TPL 依赖、代码混淆和精确版本表示等挑战,无法可靠定位应用内 TPL 的精确漏洞版本。
方法
提出 ATVHunter,采用两阶段检测:先用 CFG 粗粒度匹配候选 TPL,再用基本块 opcode 细粒度特征确定精确版本,并构建大规模 TPL 与漏洞参考数据库。
评估
在 TPL 检测任务上达到 90.55% 精确率和 88.79% 召回率,验证了抗混淆与可扩展性,并在 104,446 个应用中大规模分析漏洞 TPL 生态。
原文摘要(Abstract)

Third-party libraries (TPLs) as essential parts in the mobile ecosystem have become one of the most significant contributors to the huge success of Android, which facilitate the fast development of Android applications. Detecting TPLs in Android apps is also important for downstream tasks, such as malware and repackaged apps identification. To identify in-app TPLs, we need to solve several challenges, such as TPL dependency, code obfuscation, precise version representation. Unfortunately, existing TPL detection tools have been proved that they have not solved these challenges very well, let alone specify the exact TPL versions. To this end, we propose a system, named ATVHunter, which can pinpoint the precise vulnerable in-app TPL versions and provide detailed information about the vulnerabilities and TPLs. We propose a two-phase detection approach to identify specific TPL versions. Specifically, we extract the Control Flow Graphs as the coarse-grained feature to match potential TPLs in the pre-defined TPL database, and then extract opcode in each basic block of CFG as the fine-grained feature to identify the exact TPL versions. We build a comprehensive TPL database (189,545 unique TPLs with 3,006,676 versions) as the reference database. Meanwhile, to identify the vulnerable in-app TPL versions, we also construct a comprehensive and known vulnerable TPL database containing 1,180 CVEs and 224 security bugs. Experimental results show AtVHunter outperforms state-of-the-art TPL detection tools, achieving 90.55% precision and 88.79% recall with high efficiency, and is also resilient to widely-used obfuscation techniques and scalable for large-scale TPL detection. Furthermore, to investigate the ecosystem of the vulnerable TPLs used by apps, we exploit newtool to conduct a large-scale analysis on 104,446 apps and find that 9,050 apps include vulnerable TPL versions with 53,337 vulnerabilities and 7,480 security bugs, most of which are with high risks and are not recognized by app developers.

链接与引用

DOI 原文 · arXiv · PDF(开放获取) · DBLP

BibTeX
@inproceedings{abs-2102-08172,
  title = {ATVHunter: Reliable Version Detection of Third-Party Libraries for Vulnerability Identification in Android Applications},
  author = {Xian Zhan and Lingling Fan and Sen Chen and Feng We and Tianming Liu and Xiapu Luo and Yang Liu},
  booktitle = {ICSE},
  year = {2021},
  doi = {10.1109/icse43902.2021.00150}
}