Book Image

Learning Pentesting for Android Devices

By : Aditya Gupta
Book Image

Learning Pentesting for Android Devices

By: Aditya Gupta

Overview of this book

Table of Contents (18 chapters)
Learning Pentesting for Android Devices
Credits
Foreword
About the Author
Acknowledgments
About the Reviewers
www.PacktPub.com
Preface
Index

Introduction to ARM architecture


ARM is an architecture based on Reduced Instruction Set Computing (RISC), which means it has much less instructions than machines based on Complex Instruction Set Computing (CISC). ARM processors are seen almost everywhere in all devices around us, such as smartphones, TVs, eBook readers, and many more embedded devices.

ARM has a total of 16 visible general purpose registers starting from R0-R15. Out of these 16, five of them are for special purposes. The following are the five registers along with their names:

  • R11: Frame Pointer (FP)

  • R12: Intra-procedure Register (IP)

  • R13: Stack Pointer (SP)

  • R14: Link Register (LR)

  • R15: Program Counter (PC)

The following diagram shows the ARM architecture:

Out of these five, we will be specifically concerned with the last three. They are as follows:

  • Stack Pointer (SP): This is the register that holds the pointer to the top of the stack

  • Link Register (LR): This stores the return address when the program goes into a subroutine...