中文

通过 Android 操作系统级虚拟化进行应用自动登录功能安全测试

密码学与安全 2021-03-31 v2

摘要

受限于小键盘,大多数移动应用支持自动登录功能以提升用户体验。因此,当用户再次将应用切换至前台时,可避免重新输入 ID 和密码的不便。然而,该自动登录功能可被利用发起所谓的“数据克隆攻击”:一旦依赖于自动登录的本地存储数据被攻击者克隆并置入其自有智能手机,攻击者便可突破登录设备数量限制并 stealthily 登录受害者账户。一种自然的对策是检查设备特定属性的一致性。只要新设备展现出与先前设备不同的设备指纹,应用便会禁用自动登录功能,从而阻止数据克隆攻击。本文中,我们开发了 VPDroid,一个为安全测试量身定制的透明 Android OS 级虚拟化平台。借助 VPDroid,安全分析人员可在虚拟手机中自定义不同设备工件,如 CPU 型号、Android ID 和电话号码,而无需用户级 API hooking。VPDroid 的隔离机制确保虚拟手机中的用户态应用无法检测设备特定差异。为评估 Android 应用对数据克隆攻击的易感性,我们使用 VPDroid 对 234 个下载量最高的应用模拟数据克隆攻击。我们在五种不同虚拟手机环境中的实验表明,VPDroid 的设备属性定制可欺骗所有执行设备一致性检查(如 Twitter、WeChat 和 PayPal)的被测应用。19 家厂商已确认我们的报告为零日漏洞。我们的发现给出了一个警示:仅在客户端强制设备一致性检查仍易受高级数据克隆攻击。

关键词

引用

@article{arxiv.2103.03511,
  title  = {App's Auto-Login Function Security Testing via Android OS-Level Virtualization},
  author = {Wenna Song and Jiang Ming and Lin Jiang and Han Yan and Yi Xiang and Yuan Chen and Jianming Fu and Guojun Peng},
  journal= {arXiv preprint arXiv:2103.03511},
  year   = {2021}
}