By using TaintDroid with a different project setup, we verify its reproducibility and check Google Keyboard for potential privacy violations. TaintDroid Notify 4.1.1 application analysis is unreproducible on the Nexus 4 with Android 4.3 due to a linker issue that Google claimed has been fixed, which is caused by TaintDroid’s implementation of taint propagation.
For future projects with TaintDroid, we recommend following their exact setup. The experiment was tested multiple times on Android 2.1 on multiple Nexus One devices. We also recommend using the ROMs provided by other members of the Google Group, since they have succeeded in successfully using TaintDroid.
This repository contains the JDK 6 installer binary, the images to flash Android 4.3 with a ROM containing TaintDroid version 4.1 and our documentation of Google Keyboard analysis.
You will need:
- adb
- a Nexus 4
- an unlocked bootloader
Reboot your phone into recovery mode. You can do by holding down the power, volume up, and volume down button simultaneaously. You can also reboot into recovery mode with adb.
adb reboot recovery
Unlock your bootloader.
fastboot oem unlock
Flush the radio image to the original factory image by downloading "occam" for Nexus 4 here.
fastboot flash occam-jwr66y/radio-mako-m9615a-cefwmazm-2.0.1700.84.img
Navigate to the directory containing the images and flash the images.
cd TaintDroid_Reproducibility/imgs
fastboot flash boot boot.img
fastboot flash system system.img
fastboot flash userdata userdata.img
If you want to build TaintDroid yourself, follow the instructions from the official website. You will need JDK 6 for Android 4.3, which is only available to support customers with an account. A copy of the JDK self installer is provided in this repository. Here are instructions on how to install JDK 6.
This is a Google Group for all questions relating to TaintDroid.