MockDroid showing the permissions page for Skype

MockDroid logo MockDroid

Alastair R. Beresford, Andrew Rice, Nicholas Skehin and Rip Sohan
[Academic Paper]

MockDroid is a modified version of the Android operating system which allows the user to control the permissions of an application at runtime. For example, if you install the Skype application on Android, and you don't want this application to access your current location, simply disable it in the menu! A screenshot of the control interface for MockDroid is shown on the right (click on the image for a large version).

How does it work?

When an application asks for a permission which has be disabled, MockDroid simply returns a valid but incorrect value. For example, if an application asks for access to location information, and the permission has been disabled, MockDroid lies to the application and says that there is currently no location information available, even when there is. Similarly, when an application asks for contacts from the phone's address book, MockDroid will tell the application that the address book is empty, even if it's not. In this way, MockDroid continues to work with existing applications.

It turns out that lying to applications about the state of sensors and databases in a phone has a number of advantages over simply writing a more complex access control framework. More information is in our recent paper which was presented at HotMobile 2011.

How do I get it on my phone?

MockDroid is a modified version of the Android operating system. If you own a Nexus One, you can download our update.zip and install it on your phone. If you don't know how to install an update.zip file, you might like to look at the cyanogenmod instructions. As this is a development system, we cannot guarantee it will work correctly. Make sure you back up any important data. Use at your own risk.

If you do not own a Nexus One handset, or you want to build your own version from source, then you can download our patches and compile up your own version of MockDroid. You will probably find the build instructions helpful. You will also need the source code for the Mocker application.

Questions?

Send us an email.