300 likes | 438 Views
Remote backup and recovery service for Android device owners. Application Design Document. Company : Deutsche Telekom Academic advisor : Yuval Elovici Technical advisor : Assaf Shabtai Project Team : Limor Segev Eran Frieman Carmel Karni .
E N D
Remote backup and recovery service for Android device owners Application Design Document
Company: Deutsche Telekom Academic advisor: Yuval Elovici Technical advisor : Assaf Shabtai Project Team: Limor Segev Eran Frieman Carmel Karni Roles & Responsibilities
Introduction • An Android OS could be attacked by hackers: • Open platform • Users will access the Internet intensively • Everyone can develop applications for Android • Successful attack on Androids may: • Expose private information • Prevent T-Mobile customers from using T-Mobile services • Flood T-Mobile’s customer service infrastructure and personnel. • No easy way exists to “fix” mobile devices.
Introduction • The Current situation is that backup is possible for: • Documents • Media files • Not for Application files • Deutsche Telekom is interested in developing a platform that • will enable: • Backup and Restore users’ Android terminals • Remote monitoring and offline analysis of Android application
System Requirements • The System has three major Components: Device Service, Server, MySql Database, Desktop application. • The System has two groups of users: Device holders, Managers. • Managers actions: • Produce reports / statistics • Add managers • Device holders actions: • Backup installed applications • Restore the device / specific application(s)
System Requirements • The Device Service is configurable: • Enables auto or manual backup (on apk installation) • Enable / Disable the service • Restore applications on demand • The service keeps the login data (no need to re-insert when sending/receiving data from the server). • The service-agent will contact the server and get updates (for example about malwares detection) • The Server will be available for requests from both users types at all times. • Communication with the server will be done using HTTP.
System Architecture 1. Downloading and installing a new application 2. System’s agent send the new application files (apk) to the external server 3. Sending the new application files (apk) to the storage server with additional information to enable restoring users’ systems 4. Backed-up application apk apk apk apk apk apk apk Internet Customer’s Android device Server Storage 5. Threat detection system checks files and alerts the server about threats
System Architecture 3. Sending an alert to the user apk apk apk apk apk Storage Internet Customer’s Android device Server 2. Sending analysis result: “malicious application” • Threat detection system checks apks with status “UNCHECKED”
System Architecture apk apk apk apk apk apk Internet Storage Server NetShield Analysis Server
ManagerLogic ManagerLogic ManagerGuiFacade Gui Classes and Relationships ServerCommunication client ConnectionHandler Protocol ClientAgent ServerProtocol ConnectionAcceptor MessageProcessor Task Reactor Listener ReactorData SQLInteface Restorer ClientGuiFacade AgentComManager MngComManager ClientGUI gui ManagerGUI
User Interface – Service Main Screen
User Interface – Service Configuration Screen
User Interface – Service Registration Screen
User Interface – Service Login Screen
User Interface – Service Recovery List Screen User picks the applications to recover Recover
User Interface – Service Application List Screen
User Interface – Manger Login Screen
User Interface – Manger Main Screen
User Interface – Manger Add Manager Screen
User Interface – Manger Reports Menu Screen
User Interface – Manger Users Report
User Interface – Manger Applications Report
User Interface – Manger Users-Applications Report
User Interface – Manger Rollbacks Report
User Interface – Manger Malwares Report
Task List Overview • Server 01/04/09 – 15/04/09 • DB construction 16/05/09 – 20/05/09 • Manager – Desktop application 21/04/09 – 05/05/09 • Device Service (Agent) 06/05/09 – 20/05/09 • Service and Sever communication 21/05/09 – 31/05/09 • Testing 01/06/09 – 20/06/09