Welcome to the course Android reverse engineering from scratch where you will learn Android reverse 1
engineering in three hours. 2
So here is an overview of the course. 3
We will start off with the course prerequisites where we will cover both the skills needed to be able 4
to follow this course as well as the technical requirements. 5
Now even though we tried to deliver a hands on course we still had to provide a short section with a 6
brief introduction to Android. 7
We will try to keep this as short as possible but it is good to cover the foundations to understand 8
how Android works and more importantly how Android apps work. 9
There are significant differences between Android apps and apps on a more traditional platform like 10
Windows. 11
Here we will briefly cover some of these differences the rest of the course is more hands on and the 12
students are expected to follow and recreate what is being demonstrated we start off by setting up the 13
lab environment. 14
Here we will go through the installation of all the tools that will be used throughout the course without 15
going into too much detail about their features. 16
We wanted to get this out of the way in order to avoid spending time going through the installation 17
processes mid exercise. Once the lab is complete. 18
We will go through the process of developing a basic Android app. 19
We understand that there are many students that may not have development knowledge or else they do have 20
scripting or development knowledge but perhaps on other platforms and in other languages. 21
The idea here is not to provide a full development course. 22
However we believe that taking you through the process that a normal app developer or even a malware 23
author goes through when developing their app will provide a better overall understanding of what we 24
need to look for as reverse engineers after developing a basic app which will in fact be a malicious 25
app. 26
We will change our hat and go through the analysis of the malicious app through the eyes of a reverse 27
engineer. 28
Here we will use the tools that we installed during the lab setup to analyze the malicious app. 29
Finally we will take the techniques that we learned during the analysis section and apply them to a 30
real life ransomware case. 31
Moreover we will use the analysis results to mitigate the harm caused by the ransomware. 32
Here we will be creating a decryption tool that decrypt the files encrypted by the ransomware.