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

Runtime manipulation using JDWP


Recent apps in the market are designed to make their own decisions during runtime. In this section, let's try and see what can be done to our target app during runtime. For this attack demonstration, we will be using an app developed by Open Security Research:

  1. Download the runtime.apk file and install it to Genymotion.

  2. The functionality of the app is that if you enter the correct PIN, it responds with the message Correct PIN entered; if the value does not match, it throws an error message Incorrect PIN please try again later, as shown in this screenshot:

  3. This technique can be bypassed during runtime. We will now use the Java debugger to achieve this.

  4. The following screenshot displays a list of the processes that are available on the device:

  5. In order to make sure that the JVM is available for debugging, run adb forward tcp:8000 jdwp:1709; this is the port-forwarding concept used in drozer. This means that the process running on port 1709 will now communicate on...