AndroRat - Remote Administration Tool for Android
Androrat is a client/server application developed in Java Android for the client side and in Java/Swing for the Server.
The name Androrat is a mix of Android and RAT (Remote Access Tool).It has been developed in a team of 4 for a university project. It has been realised in one month. The goal of the application is to give the control of the android system remotely and retrieve informations from it.
Technical matters
- The android application is the client for the server which receive all the connections.
- The android application run as a service(not an activity) that is started during the boot. So the user does not need to interact with the service (Even though there is a debug activity that allow to configure the IP and the port to connect to).
- The connection to the server can be triggered by a SMS or a call (this can be configured)
All the available functionalities are
- Get contacts (and all theirs informations)
- Get call logs
- Get all messages
- Location by GPS/Network
- Monitoring received messages in live
- Monitoring phone state in live (call received, call sent, call missed..)
- Take a picture from the camera
- Stream sound from microphone (or other sources..)
- Streaming video (for activity based client only)
- Do a toast
- Send a text message
- Give call
- Open an URL in the default browser
- Do vibrate the phone
Folders
The project contains the following folders:- doc: Will soonly contain all the documentation about the project
- Experiment: Contain an experimental version of the client articulated around an activity wish allow by the way to stream video
- src/Androrat: Contain the source code of the client that should be put on the android plateform
- src/AndroratServer: Contain the sources of the Java/Swing server that can be run on any plateform
- src/api: Contain all the different api used in the project (JMapViewer for the map, forms for swing, and vlcj for video streaming)
- src/InOut: Contain the code of the content common for the client and the server which is basically the protocol implementation