Hi all!
I'm currently doing my master thesis. And my task is dynamically execute Android apps and monitor temporal Logic properties.
I read your paper on Taintdroid: An Information-Flow Tracking System for Realtime Privacy Monitoring on Smartphones. Using Taintdroid for my thesis will be great and very helpful.
Backgrounds : I already installed Taintdroid and made it run on Android emulator, and also tested some apps. I had a look at source code of TaindroidNotify application which basically collects logs that are tagged as Taint log and raises alarm if there is flow from source to sink.
Now what I want is to try to read all current register's values and their tags after every instruction execution. Is it possible if I use Taintdroid? If so can you please give directions in which part of source code I should focus. I tried to look at Taintdroid source code, but not able to find out how all these Tag computations for every instructions are happening and where I can make changes such that it can log register values after every instruction execution. Or is it possible if I can build another app on top of Taintdroid and use Taint interface library to get all current register values and their tags after every instruction execution.
I would very much appreciate your help.