I am currently being assigned a task to develop a basic tool for forensics purposes. The requirements are as below:

1)It can be either an offensive or defensive tool. That means the tool has to either hack into the target, or counter hacking attempts on the target.
2)The target has to be a smartphone running on Android platform.
3)The tool must run data related processes after gaining access for offensive tools. That covers data copying, tapping into calls, controlling the phone remotely etc. It can be running all, or just one process.
4)Defensive tools must defend the fore mentioned process(es).

What I have in mind now is an offensive tool that copies important data from the target into my server. There is a timeframe set under this; it has to be done in less than 10 seconds. That means I can only copy important but small files.

Here's the idea:
I will first hide the tool under a legitimate app. It will phish the victim to activate the app, hence the tool(like Trojan). Upon activation the tool starts to scan into separate data storage(I am thinking of clipboards and some shared preference XMLs) and copies the data out, then compress the files daily.

Then, like an antivirus, it will always pop a message to the victim to activate connection at a specific time every day for updating task. Upon establishment of the connection the tool then sends out these compressed files to my server. After 10 seconds, the tool pops a message to signal the "completion" of updates.

The tool will only run every time the app is activated and during the specific time set to run the "update".


I am relatively new in mobile development, the only thing I know probably related to Android is Java I will need suggestions and opinions of flaws in this tool development, as well as if there are better ways to extract data, which data storage is easier and better to access etc.

All suggestions are welcome.