Tracking Stolen Phones
Tracking Stolen Phones
Tracking Stolen Phones
OCTOBER 2015
بسن هللا الرحمن الرحين
SUDAN UNIVERSITY OF SCIENCE AND
TECHNOLOGY
PREPARED BY:
SIGNITURE OF SUPERVISOR:
قاه ذؼاى:ٚ
i
اىحَذ هلل
اىحَذ هلل ّاىزّ ٛ
تؼضذٔ ٗجالىٔ ذر ٌّ اىصاىحاخٝ ،ا سبّ ىل اىحَذ مَا ْٝثغ ٜىجاله ٗجٖل ٗىؼظ ٌٞسيطاّل ،اىيٖ ٌّ اغفش
ىْا ٗاسحَْا ٗاسض ػّْاٗ ،ذقثّو ٍّْا ٗأدخاّا اىجّْح ّٗجّْا ٍِ اى ّْاسٗ ،أصيح ىْا شأّْا مئّ ،اىيٖ ٌّ أحسِ ػاقثرْا فٜ
األٍ٘س ميّٖاٗ ،أجشّا ٍِ خض ٛاىذّّٞا ٗػزاب اٟخشج ،اىيٖ ٌّ ٝا ٍِ أظٖش اىجَٞو ٗسرش اىقثٞحٝ ،ا ٍِ ال ٝؤاخز
تاىجشٝشج ٗال ٖٝرل اىسرشٝ ،ا ػظ ٌٞاىؼف٘ ٗحسِ اىرجاٗص.
اىيٖ ٌّ إّّا ّحَذك ّٗسرؼْٞل ّٗسرٖذٝل ّٗسرغفشك ّٗر٘ب إىٞلّٗ ،ثْ ٜػيٞل اىخٞش مئّّ ،شنشك ٗال ّنفشكّٗ ،خيغ
ّٗرشك ٍِ ٖٝجشك ،اىيٖ ٌّ إّٝاك ّؼثذ ٗىل ّصيّّٗ ٜسجذٗ ،إىٞل ّسؼّٗ ٚحَذّ ،شج٘ا سحَرل ّٗخش ٚػزاتلّ ،
إُ
ٗسشٓ ،فإٔو أّد
ّ مئٗ ،إىٞل ٝشجغ األٍش مئّ ػالّّٞرٔ
ػزاتل اىجذّ تاىنفاس ٍيحق ،اىيٖ ٌّ ىل اىحَذ مئّٗ ،ىل اىشنش ّ
أُ ذحَذٗ ،إٔو أّد أُ ذؼثذٗ ،أّد ػي ٚم ّو شٜءٍ قذٝش ،اىيٖ ٌّ ىل اىحَذ حرّ ٚذشظٗ ،ٚىل اىحَذ إرا سظٞدٗ ،ىل
اىشظ ٚىل اىحَذ ماىيز ِٝقاى٘ا خٞشا ً ٍ َّا ّق٘هٗ ،ىل اىحَذ ماىّز ٛذق٘هٗ ،ىل اىحَذ ػي ٚم ّو حاه ،اىيٖ ٌّ
اىحَذ تؼذ ّ
ىل اىحَذ ،أّد ّ٘س اىسَاٗاخ ٗاألسضٗ ،أّد تن ّو شٜءٍ ػي.ٌٞ
ii
Dedication
To those who gave us drops of love, to those who tired their fingertips to give us a
moment of happiness, to those who displaces thorns from our way to pave it for science,
to big hearts:
To those who were our salvation, to those who we spent the most beautiful moments
with them:
Our colleagues
To those who stay with us in happiness and sadness, to those who we hope to mention
Dedicate this thesis and wish from God obtain acceptance and success.
iii
Acknowledgements
Thanks and appreciation goes to who offers his time and effort to help us to complete
this thesis our supervisor Al-Sharif Hago Al-Mogadam.
Sincere respect goes to our teacher Mohammed Osama, and we cannot forget our dear
teacher Hanaa Al-Tybe and Ghazy Mohammed, and all teachers especially in Software
Engineering department and generally in Faculty of Computer Science and
Information Technology.
And our redolence thanks to all of our colleagues and specifically to Safwan
Mohammed Ali, Ahmed Taj-Elsir, Ahmed Mohammed, Nahla Taj El-Dean, and to
everyone who participate in success of this thesis and thanks firstly and finally to God.
iv
Abstract
Smart mobile phones are considered as the most important devices currently used in
everyday life, human beings use devices to save some personal and necessary
information either in work or in public life.
The aim of this study is to keep the mobile phone from theft or loss by certain
characteristics, such as locate it when loss and transform the situation to normal mode
to facilitate finding device location by making call, and many other characteristics
such as making a backup copy of the essential data.
After the implementation of the system and applying tests in many devices we reached
to several results, most notably result is enabling person to control his mobile phone
via a web page and to activate the services provided by the system by installing the
application in mobile phone and logging into system, this can make a backup copy of
the data, determine phone’s location, control the SIM card, diversion phone to the
normal mode and wipe private data in case of theft.
v
المستخلص
ذؼرثش اىٖ٘اذف اىْقاىح اىزمٞح ٍِ إٌ االجٖضج اىَسرخذٍح حاىٞا ف ٜاىحٞاج اىٍٞ٘ٞح ٗ ٝسرخذٍٖا االّساُ ف ٜذيثٞح
ٍؼظٌ احرٞاجاذٔ حٞث ٝحرفع فٖٞا تثؼط اىَؼيٍ٘اخ اىشخصٞح ٗ اىعشٗسٝح س٘اء ف ٜػَئ اٗ حٞاذٔ اىؼاٍح.
اىٖذف ٍِ ٕزٓ اىذساسح ٕ٘ اىحفاظ ػي ٚاىٖاذف اىْقاه ٍِ اىسشقح ٗ اىعٞاع ٗ رىل ػِ غشٝق تؼط اىخصائص
ٍثو ذرثؼٔ ػْذ اىفقذاُ ٗ ذح٘ٝو اى٘ظغ اى ٚػاً حرٝ ٚسرطٞغ اٝجاد ٍنأّ تاالذصاه ف ٗ ٔٞػذد ٍِ اىََٞضاخ
االخش ٙاتشصٕا ػَو ّسخح احرٞاغٞح ىيثٞاّاخ اىعشٗٝح.
تؼذ ذطثٞق اىْظاً ٗ ذجشترٔ ػي ٚػذد ٍِ االجٖضج ،ذ٘صيْا اى ٚػذج ّرائج اتشصٕا ذَنِ اىشخص ٍِ اىرحنٌ فٜ
ٕاذفٔ اىْقاه ػِ غشٝق صفحح ٗٝة ٗ ٝقً٘ ترفؼٞو اىخذٍاخ اىَقذٍح ٍِ اىْظاً ػِ غشٝق ذثثٞد اىرطثٞق فٕ ٜاّفح
ٗ ذسجٞو اىذخ٘ه اى ٚاىْظاً ٗ تٖزا َٝنْٔ ػَو ّسخح احرٞاغٞح ٍِ اىثٞاّاخ ،ذحذٝذ ٍناُ اىٖاذف،اىرحنٌ فٜ
اىششٝحح ،ذح٘ٝو اىٖاذف اى ٚاى٘ظغ اىؼاًٍٗ ،سح اىثٞاّاخ اىخص٘صٞح ف ٜحاىح اىسشقح.
vi
Acronyms
Acronym Meaning
SIM
Subscriber Identity Module
GSM Global System for Mobiles
UI User Interface
vii
List of Figures
Figure [2.1] Anti-Theft Droid Application .....................................................................6
Figure [2.2] Android Anti-Theft Application .................................................................7
Figure [2.3] Anti-theft Alarm Application .....................................................................8
Figure [2.4] Total Equipment Protection Application ....................................................9
Figure [2.5] Bitdefender Anti-Theft Application .........................................................10
Figure [2.6] Plan B Application ...................................................................................10
Figure [2.7] Cerberus Application ................................................................................11
Figure [2.8] Prey Anti-Theft Application .....................................................................11
Figure [2.9] Avast Anti-Theft Application ...................................................................12
Figure [3.1] Mobile Owner’s Use Case Diagram ......................................................... 20
Figure [3.2] System’s Use Case Diagram ....................................................................21
Figure [3.3] User Registration Sequence Diagram .......................................................22
Figure [3.4] User Login Sequence Diagram .................................................................23
Figure [3.5] View data Sequence Diagram ..................................................................24
Figure [3.6] Control SIM Card Sequence Diagram ......................................................25
Figure [3.7] Normal Mode Sequence Diagram ............................................................26
Figure [3.8] Tracking Phone Sequence Diagram .........................................................27
Figure [3.9] Wipe Data Sequence Diagram ..................................................................28
Figure [3.10] System Activity Diagram .......................................................................29
Figure [3.11] View Data Activity Diagram ..................................................................30
Figure [3.12] Control SIM Card Activity Diagram ......................................................31
Figure [3.13] Wipe Data Activity Diagram ..................................................................32
Figure [3.14] Tracking Phone Activity Diagram ..........................................................32
Figure [3.15] Normal Mode Activity Diagram ............................................................ 33
Figure [4.1] Home Page ................................................................................................ 37
Figure [4.2] Help Screen............................................................................................... 38
viii
Figure [4.4] Registration Screen ................................................................................... 40
ix
Table of Contents
1. Introduction
1.1 Introduction........................................................................................................... 1
1.2 The Problem.......................................................................................................... 1
1.3 Research Questions ............................................................................................... 1
1.4 Objectives ............................................................................................................. 1
1.5 Scope..................................................................................................................... 2
1.6 Thesis Layout........................................................................................................ 2
2. Background And Previous Studies
2.1 Introduction.......................................................................................................... 4
2.2 Anti-Theft System Background ........................................................................... 4
x
2.3.9 Prey Anti-Theft ............................................................................................11
4. Implementation
4.1 Introduction........................................................................................................ 35
4.2 How the System Works .....................................................................................35
xi
4.3 System Screens .................................................................................................. 37
5. Results
5.1 Results................................................................................................................ 49
5.2 Comparison between STN Anti-Theft and other applications in Google play . 49
Appendix I ....................................................................................................................................... 55
Appendix II...................................................................................................................................... 58
References ........................................................................................................................................ 61
xii
CHAPTER 1
INTRODUCTION
1.1 INTRODUCTION:
Theft of phones has become one of the most widespread in the world of crimes in
spite of that the phone has become one of the most important sources in our daily
lives, which contains many of the confidential information, which helps to retrieve
this information in any place and time, but Equally, this information cause many
problems when the loss of the telephone.
Component-based software engineering is an approach to software development
that depends on software reuse. It emerged from the failure of object-oriented
development to support effective reuse. Single object classes are too detailed and
specific. Components are more abstract than object classes and can be considered
to be stand-alone service providers. A software component is a software element
that conforms to a component model and can be independently deployed and
composed without modification according to a composition standard [1].
The concept of the system is creating an application to backup data from device,
change mode, and other features based on android platform.
1
Enhance and secure connection between android applications and web
applications.
1.5 SCOPE:
This research targets any one has android device, helps tracking and controlling
devices remotely when lost or theft.
2
CHAPTER 2
2.2.1 Tracking:
Tracking is used for the observing of persons or objects on the move and
supplying a timely ordered sequence of respective location data to a model.
Tracking system is generally a system capable of rendering virtual space to a
human observer while tracking the observer's body coordinates [3].
4
2.2.3 Normal Mode:
Normal mode is a setting available in mobile phones that enables the
ringtones when it is activated. It allows the device to receive and send calls
and messages with sounds.
5
2.3.2 Anti-Theft Droid Free:
The Droid antitheft application was developed to solve your problem if your
Android device is stolen or is lost.
How it works: If you misplaced or stolen your phone you can control your
phone via text messages to get exact location of your phone. This app
automatically activates the GPS and WiFi connection if it is turned off at
time of application the location of the device. Anti-Theft Droid app includes
alarm feature. And it identifies the exchange of phone chip, returning the
phone's location at the time of exchange of information In the new Chip
Carrier, IMEI, phone number [7].
6
one. Snuko having other important features are SMS command, spy
camera, sound audible alarm, SIM card change detection and more [7].
7
Figure [2.3] Anti-theft Alarm Application
8
Figure [2.4] Total Equipment Protection Application
9
Figure [2.5] Bitdefender Anti-Theft Application
2.3.7 Plan B:
If you had not install any theft tracking app to your Android before it gets
stolen, then need not worry as in this case, Plan B will act as a life saver.
This app can easily locate your cell towers and GPS and will send its
accurate location to your Gmail inbox. This will keep you updating the exact
location of your phone in every 10 minutes [27].
11
2.3.10 Avast Anti-Theft:
This is a pretty decent offering from AVAST, and while it does mostly
what others do there are a few stand outs. For one, their website is very
well put together and easy to use, and you can lock your device with a
custom text message. So perhaps your address, your phone number or just a
healthy warning that you know where the thief is. Either way, this covers
all the bases and does so with ample amount of polish [27].
12
Total
Equipment
Protection
Android Anti-
Theft
Control
Mobile
Remotely
Anti-Theft
Alarm
Table [2-1] Comparison between Applications
13
CHAPTER 3
3.3.1 Android:
Android is a software stack for mobile devices that includes an operating
system, middleware and key applications. Android is a software platform
and operating system for mobile devices based on the Linux operating
system and developed by Google and the Open Handset Alliance. It allows
developers to write managed code in a Java-like language that utilizes
Google-developed Java libraries, but does not support programs Developed
in native code.
3.3.1.1 Advantages:
Open - Android allows you to access core mobile device functionality
through standard API calls.
All applications are equal - Android does not differentiate between
the phone's basic and third-party applications.
Breaking down boundaries - Combine information from the web with
data on the phone to create new user experiences.
15
Fast and easy development - The SDK contains what you need to
build and run Android applications.
3.3.1.2 Disadvantages:
Security - Making source code available to everyone inevitably
invites the attention of black hat hackers.
Open Source - Anyone can scrutinize the source code to find
vulnerabilities and write exploits.
Login - Platform doesn't run on an encrypted file system and has a
vulnerable log-in.
Incompetence – Google’s dependence on hardware and carrier
partners puts the final product out of their control [8].
3.3.2 Eclipse:
Eclipse is a general purpose open platform that facilitates and encourages
the development of third party plug-ins.
It is known as IDE. It provides tools for coding, building, running and
debugging applications. Originally designed for Java, now supports many
other languages.
3.3.2.1 Advantages:
Code completion.
Faster code/compile/run cycles (real time).
Open source (free).
Extensible (plug-in).
3.3.2.2 Disadvantages :
Pretty heavyweight.
Requires JRE.
Difficult to Learn [9].
16
precise position in three dimensions and precise time traceable to global
time standards [10].
3.3.4 Java :
Java is a computer programming language that is concurrent, class-based,
object-oriented, and specifically designed to have as few implementation
dependencies as possible. It is intended to let application developers "write
once, run anywhere" (WORA), meaning that code that runs on one platform
does not need to be recompiled to run on another. Java applications are
typically compiled to byte code (class file) that can run on any JVM
regardless of computer architecture. Java is, as of 2012, one of the most
popular programming languages in use, particularly for client-server web
applications, with a reported 30 million developers. Java was originally
developed by James Gosling at Sun Microsystems (which has since merged
into Oracle Corporation) and released in 1995 as a core component of Sun
Microsystems' Java platform. The language derives much of its syntax from
C and C++, but it has fewer low-level facilities than either of them [11].
17
3.3.5.3 XML:
XML is a markup language much like HTML it was designed to store
and transport data was designed to be self-descriptive [14].
3.3.5.4 JavaScript :
JavaScript is a dynamic computer programming language. It is most
commonly used as part of Web browsers, whose implementations
allow client-side scripts to interact with the user, control the browser,
communicate asynchronously, and alter the document content that is
displayed. It is also used in server-side network programming with
runtime environments [15].
3.3.5.5 CSS:
CSS is a style sheet language used for describing the look and
formatting of a document written in a markup language [16].
3.3.5.6 JQuery:
JQuery is a lightweight "write less, do more" JavaScript library. The
purpose of jQuery is to make it much easier to use JavaScript on your
website. JQuery takes a lot of common tasks that requires many lines
of JavaScript code to accomplish, and wraps it into methods that you
can call with a single line of code [17].
3.3.5.7 PHP :
PHP is an HTML-embedded Web scripting language. This means
PHP code can be inserted into the HTML of a Web page. When a
PHP page is accessed, the PHP code is read or "parsed" by the server
the page resides on. The output from the PHP functions on the page is
typically returned as HTML code, which can be read by the browser.
Because the PHP code is transformed into HTML before the page is
loaded, users cannot view the PHP code on a page. This make PHP
pages secure enough to access databases and other secure information
[18].
3.3.5.8 Bootstrap :
18
Bootstrap is a free collection of tools for creating websites and Web
applications. It contains HTML and CSS-based design templates for
typography, forms, buttons, navigation and other interface
components, as well as optional JavaScript extensions.
Front-end frameworks are toolkits that help Web developers create
the front-end, the visible user interfaces of Web pages. They do so by
offering many prepackaged user interface components (written in
HTML + CSS) and functionalities (written in Javascript) that the web
developer can then add to their own pages easily. They are generally
created in such a way that the web designer need not know how they
work, but simply must know how to integrate them into the page
properly. Bootstrap is one such framework [19].
3.3.6 UML :
UML is a general-purpose modeling language in the field of software
engineering, which is designed to provide a standard way to visualize the
design of a system [20].
3.3.7 MD5:
MD5 is one of the most widely used cryptographic hash functions
nowadays. It was designed in 1992 as an improvement of MD4, and its
security was widely studied since then by several authors. The best known
result so far was a semi free-start collision, in which the initial value of the
hash function is replaced by a non-standard value, which is the result of the
attack [21].
19
3.3.9 Google Maps:
20
3.4.1.2 Use Case Diagram of System’s Operations:
uc proj ect
w ipe data
system
backup data
normal mode
21
3.4.2 Sequence Diagram:
Sequence diagram shows function sequencing.
3.4.2.1 Sequence Diagram of Registration for Any User:
22
3.4.2.2 Sequence Diagram of Login for Any User:
23
3.4.2.3 Sequence Diagram of View Data:
24
3.4.2.4 Sequence Diagram of Controlling SIM Card:
25
3.4.2.5 Sequence Diagram of Changing Mode to Normal:
26
3.4.2.6 Sequence Diagram of Tracking Phone:
27
3.4.2.7 Sequence Diagram of Wiping Data:
28
3.4.3 Activity Diagram:
Activity diagram describes how system works.
3.4.3.1 Activity Diagram for System:
act proj ect
start
register
yes registered? no
yes
no
control SIM
valid data?
w ipe data
encrypt data
backup data
tracking phone
logout?
yes
normal mode
end
no
29
3.4.3.2 View Data Activity Diagram:
act backup
System Database
get data
start
v iew t data
end
30
3.4.3.3 Control SIM Card Activity Diagram:
act control SIM
System User
start
lock
transfare
send lock message
end
transfare balance
enter data
31
3.4.3.4 Wipe Data Activity Diagram:
act w ipe data
System
start
get data
w ipe data
end
System DataBase
get coordinates
start
end
32
3.4.3.6 Normal Mode Activity Diagram:
act normal mode
System
start
end
33
CHAPTER 4
IMPLEMENTATION
36
4.3 SYSTEM SCREENS:
This section represents screens that are provided by the system.
37
Figure [4.2] Help Screen
There is another page appears after pressing button called features. Features
page views main features in the system. Figure [4.3] shows the features
screen.
38
Figure [4.3] Features Screen
39
Figure [4.4] Registration Screen
40
Figure [4.5] Login Screen in Web Page
The user also must login from his/her android device to enable and start all
features in the system. Figure [4.6] shows login screen in android
application.
41
Figure [4.6] Login Screen in Android
42
Figure [4.8] User Profile in Android
44
4.3.7 Lock SIM Screen:
In this page there is a button that allows lock SIM by sending a message from
user device to administrator device after pressing lock SIM button.
This process must be done just one time after phone is theft. Figure [4.12]
shows lock SIM page in web.
45
Figure [4.13] Transfer Balance Page
46
4.3.10 Normal Mode Screen:
In user profile page there is also another button that shows normal mode
page which allows to user changing his phone status to be normal
continuously. Figure [4.15] shows normal mode page in web.
47
CHAPTER 5
1. Show device current location in web page using Google Maps by getting
coordinates from the device via GPS.
2. Secure the channel between android and Web using AES Algorithm and
MD5.
3. Send encrypted backup contacts to MySQL database.
4. Put the device in normal mode.
5. Wipe contacts from user’s device.
6. Transfer balance that found in the SIM card.
7. Simulate locking SIM card via sending message to administrator number.
4
functionality
3 size
0
STN Prey
50
Figure [5.2] Performance of AES Algorithm
51
CHAPTER 6
CONCLUSION AND
RECOMMENDATIONS
6.1 CONCLUSION:
Smart phones become widely used in everywhere and everyone wants to save the
data and phone from lost.
This research and by Anti-Theft application a person can save important data from
loss and find the phone if it lost.
6.2 RECOMMENDATIONS:
To make the application more strong and reliable we recommend doing more tasks
that we didn’t achieve:
53
APPENDIXES
Appendix I
UML Notations
55
Notation Name
Actor
Use Case
Use Case
Association
Message
Self Massage
Boundary
Entity
Control
56
Include
Activ ity1
ActivityInitial
ActivityFinal
57
Appendix II
Eclipse Versions
58
Eclipse Releases:
Since 2006, the Eclipse Foundation has coordinated an annual Simultaneous Release.
Each release includes the Eclipse Platform as well as a number of other Eclipse
projects. Until the Galileo release, releases were named after the moons of the solar
system.
So far, each Simultaneous Release has occurred at the end of June [28].
59
REFERENCE
References:
[1] Ashima Singh& Navneet Kaur (2013), Generating More Reusable Components
while Development: A Technique, International Journal of Innovative Technology
and Exploring Engineering (IJITEE), p 215.
[5]Ziffdavis(2015), http://www.pcmag.com/encyclopedia/term/61745/simcard,
19/4, 12:40.
[6]Reem Al-Rayah and others" Control Mobile Remotely ", July 2012.
[9]Eclipsefoundation(2015),
http://www.csee.umbc.edu/courses/undergraduate/341/fall08/Lectures/Eclipse/intro
-to-eclipse.pdf, 23/4.
[11]EightfoldInfotech(2013),
http://www.eightfoldit.com/studyforjava/j2se/pro_fun/what_is_java.php, 24/4, 4:40.
61
[12]Vangie Beal(2015), http://www.webopedia.com/TERM/W/WAMP.html, 24/4,
4:45.
[14] w3schools(2015),http://www.w3schools.com/xml/xml_whatis.asp.
[15] David, Ferguson. Flanagan, Paula (2006), "JavaScript: The Definitive Guide".
[16]Scott Clark(2015),
http://www.htmlgoodies.com/beyond/article.php/3893911/Web-based-Mobile-
Apps-of-the-Future-Using-HTML-5-CSS-and-JavaScript.html, 13/8.
[17]SethFreeman(2012),
http://www.ccc.commnet.edu/faculty/sfreeman/cst%20250/jQueryNotes, 25/3,
10:15.
[19]Web_design(2014),
http://cs.nyu.edu/~amos/courses/web_design/?title=Bootstrap, 13/9, 17:01.
[20] Addison-Wesley & Ivar (2005), "Unified Modeling Language User Guide",
Grady Booch.
[21] Xiaoyun Wang and Hongbo Yu, Shandong University, "How to Break MD5
and Other Hash Functions".
[22]JanaltaInteractive(2010),
https://www.techopedia.com/definition/1763/advanced-encryption-standard-aes,
11/10.
[23]Vogella(2013),
http://www.vogella.com/tutorials/ApacheHttpClient/article.html, 22/9.
[26]Google(2015),
http://www.ig.utexas.edu/outreach/googleearth/pdf/Maps_JCescalante.pdf, 22/2,
8:02.
63