arXiv (Cornell University) · 2012 · 157 citations · 31 references
ComputingComputer SystemsInformation TechnologyAdvertisingMobile ComputingMobile SystemsApplication Programming InterfacesMobile AdvertisingMobile Application DevelopmentMobile Application Reverse EngineeringRuntime Application ProtectionApplication HostingMalicious Advertisement DetectionMalicious App DetectionMalicious SecurityPermissionsPrivacy In Mobile AdvertisingUser PermissionsWidget Interaction
Smartphone apps commonly embed third‑party advertising libraries, which add extra permission requests and can be abused by malicious apps to simulate ad behavior and steal revenue. The study aims to quantify permission bloat from advertising libraries and to present AdSplit, a system that isolates ads into separate processes to eliminate unnecessary permissions. AdSplit extends Android to run the host app and its ads in separate processes with distinct user IDs, automatically recompiles apps to isolate ad services, and uses Quire‑based validation to ensure authenticity while incurring minimal runtime overhead. AdSplit incurs minimal runtime overhead, and the analysis shows that most ad libraries embed only an HTML widget, allowing the system to avoid native code for ads.
A wide variety of smartphone applications today rely on third-party advertising services, which provide libraries that are linked into the hosting application. This situation is undesirable for both the application author and the advertiser. Advertising libraries require additional permissions, resulting in additional permission requests to users. Likewise, a malicious application could simulate the behavior of the advertising library, forging the user's interaction and effectively stealing money from the advertiser. This paper describes AdSplit, where we extended Android to allow an application and its advertising to run as separate processes, under separate user-ids, eliminating the need for applications to request permissions on behalf of their advertising libraries. We also leverage mechanisms from Quire to allow the remote server to validate the authenticity of client-side behavior. In this paper, we quantify the degree of permission bloat caused by advertising, with a study of thousands of downloaded apps. AdSplit automatically recompiles apps to extract their ad services, and we measure minimal runtime overhead. We also observe that most ad libraries just embed an HTML widget within and describe how AdSplit can be designed with this in mind to avoid any need for ads to have native code.
31
TaintDroid: an information-flow tracking system for realtime privacy monitoring on smartphones
William Enck, Peter Gilbert, Byung-Gon Chun et al. · 2010 · 2.3K citations
Android permissions demystified
Adrienne Porter Felt, Erika Chin, Steve Hanna et al. · 2011 · 1.3K citations
On lightweight mobile phone application certification
William Enck, Machigar Ongtang, Patrick McDaniel · 2009 · 923 citations
The Chinese Wall security policy
David Brewer, Mike Nash · 2003 · 887 citations
A survey of mobile malware in the wild
Adrienne Porter Felt, Matthew Finifter, Erika Chin et al. · 2011 · 772 citations