一句话:首个大规模实证研究,用三阶段静态分析框架检测并归类 Android 应用中的设备特定行为。
Android 生态因系统版本、设备规格与厂商定制而高度碎片化,同一应用在不同设备上的行为出现显著差异,即设备特定行为(device-specific behavior)。本文首次对真实 Android 应用中的此类行为开展大规模实证研究,设计了一个三阶段静态分析框架来准确检测并理解这些行为。作者在超过 20,000 个应用上运行该工具,在 2,357 个应用中检测到设备特定行为。分析发现,中国第三方应用市场中的应用比 Google Play 应用包含更多此类行为,且这些行为更倾向于针对市场份额更大的主流品牌。作者按实现功能将其划分为 29 个类别,为开发者和产业界提供结构化认识。除问题修复与功能适配等常见行为外,还发现 33 个具有攻击性的应用(含下载量达数百万的热门应用),它们滥用定制 ROM 的系统属性,在无需任何权限的情况下获取用户无法重置的标识符,带来严重隐私风险。最后,论文探究了这些行为的来源,指出开发者在完整实现它们时面临的重大挑战。
The Android ecosystem is significantly challenged by fragmentation, arising from diverse system versions, device specifications, and manufacturer customizations. The growing divergence among devices leads to marked variations in how a given app behaves across diverse devices. This is referred to as device-specific behaviors. Fragmentation not only complicates development processes but also impacts the overall industry by increasing maintenance costs and potentially harming user experience due to inconsistent app performance. In this work, we present the first large-scale empirical study of device-specific behaviors in real-world Android apps. We have designed a three-phase static analysis framework to accurately detect and understand the device-specific behaviors. Upon employing our tool on a dataset comprising more than 20,000 apps, we detected device-specific behaviors in 2,357 of them. By examining the distribution of device-specific behaviors, our analysis revealed that apps within the Chinese third-party app market exhibit more such behaviors compared to their counterparts in Google Play. Additionally, these behaviors are more likely to feature dominant brands that hold larger market shares. Reflecting this, we have classified these device-specific behaviors into 29 categories based on the functionalities implemented, providing a structured insight that is crucial for developers and stakeholders in the industry. Beyond the common behaviors, such as issue fixes and feature adaptations, we have observed 33 aggressive apps, including popular ones with millions of downloads. These apps abuse system properties of customized ROMs to obtain user-unresettable identifiers without requiring any permissions, posing significant privacy risks. Finally, we investigated the origins of device-specific behaviors, highlighting the significant challenges developers encounter in implementing them comprehensively. Our research aims to inform and equip industry practitioners with knowledge to enhance user experience and user privacy, marking a critical step toward addressing the less touched yet vital aspect of device-specific behaviors in the Android ecosystem.
@inproceedings{DongZ0W0XZ024,
title = {Same App, Different Behaviors: Uncovering Device-specific Behaviors in Android Apps},
author = {Zikan Dong and Yanjie Zhao and Tianming Liu and Chao Wang and Guosheng Xu and Guoai Xu and Lin Zhang and Haoyu Wang},
booktitle = {ASE},
year = {2024},
doi = {10.1145/3691620.3695272}
}