中文

基于类结构相似性的Android应用版本级第三方库检测

密码学与安全 2025-06-19 v2 软件工程

摘要

Android应用集成可复用且经过严格测试的第三方库(TPL),以提升功能并缩短开发周期。然而,近期研究表明TPL已成为Android应用最大的攻击面,使用不安全的TPL可能损害开发者和用户利益。为此,研究者提出了各种工具检测应用中使用的TPL,支持进一步的安全分析如漏洞TPL识别。虽然现有工具在存在混淆情况下实现了显著的库级TPL检测性能,但在版本级TPL检测方面因缺乏对版本差异敏感性而难题,导致高版本级误报率,显著增加安全分析师的工作负担。为解决此问题,我们提出SAD,一个实现高版本级检测性能的TPL检测工具。SAD基于类依赖图(CDG)中节点的特征,为每个TPL类生成候选应用类列表。随后,通过基于类摘要相似性进行类匹配,识别每个TPL类对应的唯一应用类。最后,SAD通过评估TPL与应用中匹配类形成的子图在CDG中的结构相似性来识别TPL版本。广泛在三个数据集上进行评估表明,SAD及其组件有效。SAD在混淆应用中实现了97.64%和84.82%的库级和版本级F1分数,超越现有最先进工具。SAD的版本级误报率比最佳工具低1.61倍。我们进一步评估了检测工具识别的TPL与实际TPL类的对应程度。

关键词

引用

@article{arxiv.2504.13547,
  title  = {Version-level Third-Party Library Detection in Android Applications via Class Structural Similarity},
  author = {Bolin Zhou and Jingzheng Wu and Xiang Ling and Tianyue Luo and Jingkun Zhang},
  journal= {arXiv preprint arXiv:2504.13547},
  year   = {2025}
}

备注

This paper has been accepted by the International Conference on Evaluation and Assessment in Software Engineering (EASE) 2025