Book Image

Mobile Application Penetration Testing

By : Vijay Kumar Velu
Book Image

Mobile Application Penetration Testing

By: Vijay Kumar Velu

Overview of this book

Mobile security has come a long way over the last few years. It has transitioned from "should it be done?" to "it must be done!"Alongside the growing number of devises and applications, there is also a growth in the volume of Personally identifiable information (PII), Financial Data, and much more. This data needs to be secured. This is why Pen-testing is so important to modern application developers. You need to know how to secure user data, and find vulnerabilities and loopholes in your application that might lead to security breaches. This book gives you the necessary skills to security test your mobile applications as a beginner, developer, or security practitioner. You'll start by discovering the internal components of an Android and an iOS application. Moving ahead, you'll understand the inter-process working of these applications. Then you'll set up a test environment for this application using various tools to identify the loopholes and vulnerabilities in the structure of the applications. Finally, after collecting all information about these security loop holes, we'll start securing our applications from these threats.
Table of Contents (15 chapters)
Mobile Application Penetration Testing
Credits
About the Author
About the Reviewers
www.PacktPub.com
Preface
Index

The Android architecture


Many a time, Android is referred to as Java on Linux. As a developer or security researcher, it is very important to understand the architecture behind any platform. Android's architecture is based on the Linux 2.x and 3.x kernels and acts as the hardware abstraction layer.

It consists of:

  • Key applications

  • An operating system (which is the abstraction between the software and hardware components)

  • Middleware

  • The runtime environment

  • Different services

  • Native and custom libraries

It can be represented as five different layers, as shown in the following architecture diagram:

All the components are tuned and integrated to provide the optimal application development and execution environment for mobile contrivances.

Now, let's take a bottom-up approach toward understanding the different layers of the Android stack.

The Linux kernel

The Linux kernel is the heart of the Android OS. Linux has extensible portability features, that is, it enables easy compilation of programs on different...