Electrical Engineering
      and Computer Sciences

Electrical Engineering and Computer Sciences

COLLEGE OF ENGINEERING

UC Berkeley

Party Pooper: Third-Party Libraries in Android

Gabriel Nunez

EECS Department
University of California, Berkeley
Technical Report No. UCB/EECS-2011-149
December 16, 2011

http://www.eecs.berkeley.edu/Pubs/TechRpts/2011/EECS-2011-149.pdf

Third-party libraries (3PLs), such as advertising networks, gaming networks, and analytics engines, are an integral part of modern mobile platforms. If Android developers want to integrate functionality provided by 3PLs, they must bundle opaque binary code into their applications. Unfortunately, developers must in essence overprivilege their Android applications by requesting dangerous permissions, such as full Internet access, solely for the purpose of supporting 3PLs. Mixing 3PLs and dangerous permissions introduces vulnerabilities and risks to potential compromise of private user data, especially in an uncurated application marketplace. This work presents AdDroid, a proof-of-concept implementation that applies the principle of least privilege to mobile applications and advertising 3PLs by introducing the notion of third-party privileges directly into the Android API. AdDroid minimizes the burden of change to application developers and consumers, improves privacy, and supplies independent controls for 3PLs. AdDroid eliminates overprivileging in 44% of advertising-supported free applications. We also study how much advertising-supported "free" applications may cost users in terms of their limited monthly data plans and how AdDroid addresses this concern. Finally, we present possible deployment plans of the new system.

Advisor: Anthony D. Joseph


BibTeX citation:

@mastersthesis{Nunez:EECS-2011-149,
    Author = {Nunez, Gabriel},
    Title = {Party Pooper: Third-Party Libraries in Android},
    School = {EECS Department, University of California, Berkeley},
    Year = {2011},
    Month = {Dec},
    URL = {http://www.eecs.berkeley.edu/Pubs/TechRpts/2011/EECS-2011-149.html},
    Number = {UCB/EECS-2011-149},
    Abstract = {Third-party libraries (3PLs), such as advertising networks, gaming networks, and analytics engines, are an integral part of modern mobile platforms. If Android developers want to integrate functionality provided by 3PLs, they must bundle opaque binary code into their applications. Unfortunately, developers must in essence overprivilege their Android applications by requesting dangerous permissions, such as full Internet access, solely for the purpose of supporting 3PLs. Mixing 3PLs and dangerous permissions introduces vulnerabilities and risks to potential compromise of private user data, especially in an uncurated application marketplace. This work presents AdDroid, a proof-of-concept implementation that applies the principle of least privilege to mobile applications and advertising 3PLs by introducing the notion of third-party privileges directly into the Android API. AdDroid minimizes the burden of change to application developers and consumers, improves privacy, and supplies independent controls for 3PLs. AdDroid eliminates overprivileging in 44% of advertising-supported free applications. We also study how much advertising-supported "free" applications may cost users in terms of their limited monthly data plans and how AdDroid addresses this concern. Finally, we present possible deployment plans of the new system.}
}

EndNote citation:

%0 Thesis
%A Nunez, Gabriel
%T Party Pooper: Third-Party Libraries in Android
%I EECS Department, University of California, Berkeley
%D 2011
%8 December 16
%@ UCB/EECS-2011-149
%U http://www.eecs.berkeley.edu/Pubs/TechRpts/2011/EECS-2011-149.html
%F Nunez:EECS-2011-149