中文

融合代码与文档以学习精确识别敏感源与汇方法的负面结果:以 Android 框架中数据泄露检测为例

密码学与安全 2023-01-12 v2 软件工程

摘要

手机上的应用处理各类数据,包括敏感数据,从而引发隐私相关的担忧。近期的法规如欧洲 GDPR 规定了个人与敏感数据的处理规则,例如未经用户同意不得泄露此类数据。研究人员提出了在移动应用内追踪敏感数据的复杂方法,所有这些方法都依赖于特定的敏感源与汇 API 方法列表。数据流分析的结果在很大程度上取决于这些列表的质量。先前的方法要么使用不完整、很快过时的手写列表,要么依赖机器学习。然而,如我们所展示的,后者会导致大量误报。本文介绍 CoDoC,一种旨在复兴机器学习方法以精确识别隐私相关源与汇 API 方法的工具。与先前方法不同,CoDoC 使用深度学习技术,并将 API 方法的源代码与其文档相结合。首先,我们提出新的定义以厘清敏感源与汇方法的概念。其次,基于这些定义,我们构建了一个由代表敏感源、汇以及两者皆非(即非源非汇)的 Android 方法组成的新 ground truth,用于训练我们的分类器。我们评估了 CoDoC,并表明在我们的验证数据集上,其在 10 折交叉验证中达到了 91% 的精确率、召回率和 F1 分数,在相同数据集上优于 SOTA 的 SuSi。然而,与现有工具类似,我们表明在真实环境中,即面对未见数据时,CoDoC 表现不佳并产生许多误报结果。我们的发现,连同先前方法久经考验的结果,表明尽管在实验室中表现良好,但用于隐私等抽象概念的机器学习模型在实践中会失败。

关键词

引用

@article{arxiv.2301.03207,
  title  = {Negative Results of Fusing Code and Documentation for Learning to Accurately Identify Sensitive Source and Sink Methods An Application to the Android Framework for Data Leak Detection},
  author = {Jordan Samhi and Maria Kober and Abdoul Kader Kabore and Steven Arzt and Tegawendé F. Bissyandé and Jacques Klein},
  journal= {arXiv preprint arXiv:2301.03207},
  year   = {2023}
}

备注

30th IEEE International Conference on Software Analysis, Evolution and Reengineering, RENE track