中文

RAICC:揭示 Android 应用中非典型的组件间通信

软件工程 2021-01-18 v2

摘要

组件间通信(ICC)是 Android 中的关键机制。它使开发者能够组合丰富功能并在应用内部及跨应用实现复用。遗憾的是,正如大量文献所报道的,ICC 相当“复杂且基本不受约束”,导致应用建模缺乏精确性。为应对应用内 ICC 追踪的挑战,Epicc、IccTA 和 Amandroid 等最先进的静态分析方法聚焦于文档化的框架 ICC 方法(如 startActivity)来构建其方案。本工作中我们表明,这些先进工具推断出的 ICC 模型实际上可能不完整:框架提供了其他执行 ICC 的非典型方式。为解决最先进方法中的这一局限,我们提出 RAICC,一种用于建模新 ICC 链接的静态方法,从而提升先前的分析任务,如 ICC 漏洞检测、隐私泄露检测、恶意软件检测等。我们在 20 个基准应用上评估了 RAICC,证明它提升了先进工具中已发现泄露的精确率与召回率。我们还进行了大规模实证调查,表明非典型 ICC 方法在 Android 应用中被广泛使用,尽管不一定用于数据传输。我们还表明,RAICC 在真实恶意应用数据集上将发现的 ICC 链接数量提升了 61.6%,且 RAICC 能够检测新的 ICC 漏洞。

关键词

引用

@article{arxiv.2012.09916,
  title  = {RAICC: Revealing Atypical Inter-Component Communication in Android Apps},
  author = {Jordan Samhi and Alexandre Bartel and Tegawendé F. Bissyandé and Jacques Klein},
  journal= {arXiv preprint arXiv:2012.09916},
  year   = {2021}
}

备注

In the proceedings of the 43rd International Conference on Software Engineering 2021 (ICSE 2021)