Mobile App Reverse Engineering: Get started with discovering, analyzing, and exploring the internals of Android and iOS apps
Delve into the world of mobile application reverse engineering, learn the fundamentals of how mobile apps are created and their internals, and analyze application binaries to find security issues
- Learn the skills required to reverse engineer mobile applications
- Understand the internals of iOS and Android application binaries
- Explore modern reverse engineering tools such as Ghidra, Radare2, Hopper, and more
Mobile App Reverse Engineering is a practical guide focused on helping cybersecurity professionals scale up their mobile security skills. With the IT world's evolution in mobile operating systems, cybercriminals are increasingly focusing their efforts on mobile devices. This book enables you to keep up by discovering security issues through reverse engineering of mobile apps.
This book starts with the basics of reverse engineering and teaches you how to set up an isolated virtual machine environment to perform reverse engineering. You'll then learn about modern tools such as Ghidra and Radare2 to perform reverse engineering on mobile apps as well as understand how Android and iOS apps are developed. Next, you'll explore different ways to reverse engineer some sample mobile apps developed for this book. As you advance, you'll learn how reverse engineering can help in penetration testing of Android and iOS apps with the help of case studies. The concluding chapters will show you how to automate the process of reverse engineering and analyzing binaries to find low-hanging security issues.
By the end of this reverse engineering book, you'll have developed the skills you need to be able to reverse engineer Android and iOS apps and streamline the reverse engineering process with confidence.
What you will learn
- Understand how to set up an environment to perform reverse engineering
- Discover how Android and iOS application packages are built
- Reverse engineer Android applications and understand their internals
- Reverse engineer iOS applications built using Objective C and Swift programming
- Understand real-world case studies of reverse engineering
- Automate reverse engineering to discover low-hanging vulnerabilities
- Understand reverse engineering and how its defense techniques are used in mobile applications
Who this book is for
This book is for cybersecurity professionals, security analysts, mobile application security enthusiasts, and penetration testers interested in understanding the internals of iOS and Android apps through reverse engineering. Basic knowledge of reverse engineering as well as an understanding of mobile operating systems like iOS and Android and how mobile applications work on them are required.
1. Basics of Reverse Engineering – Understanding the Structure of Mobile Apps
2. Setting Up a Mobile App Reverse Engineering Environment Using Modern Tools
3. Reverse Engineering an Android Application
4. Reverse Engineering an iOS Application
5. Reverse Engineering an iOS Application (Developed Using Swift)
6. Open Source and Commercial Reverse Engineering Tools
7. Automating the Reverse Engineering Process