Sign In Start Free Trial
Account

Add to playlist

Create a Playlist

Modal Close icon
You need to login to use this feature.
  • Book Overview & Buying Reverse Engineering Armv8-A Systems
  • Table Of Contents Toc
Reverse Engineering Armv8-A Systems

Reverse Engineering Armv8-A Systems

By : Austin Kim
close
close
Reverse Engineering Armv8-A Systems

Reverse Engineering Armv8-A Systems

By: Austin Kim

Overview of this book

Unlock the secrets hidden in binary code without needing the source! Written by a Linux kernel engineer and author with over 14 years of industry experience, this book lays a solid foundation in reverse engineering and takes you from curious analyst to expert. You’ll master advanced techniques to dissect kernel binaries, including kernel module files, vmlinux, and vmcore, giving you the power to analyze systems at their core. This practical, three-part journey starts with the essentials of reverse engineering, introducing the key features of Armv8-A processors and the ELF file format. The second part walks you through the reverse-engineering process, from Arm environment setup to using static and dynamic analysis tools, including innovative methods for analyzing kernel binaries and the powerful debugging tool uftrace. The final part covers security, exploring TrustZone and the latest security techniques to safeguard Arm devices at the hardware level. By the end of this reverse engineering book, you'll have comprehensive Armv8-A expertise and the practical skills to analyze any binary with confidence while leveraging advanced security features to harden your systems.
Table of Contents (22 chapters)
close
close
Preface
Lock Free Chapter
1
Part I: Fundamentals of Armv8-A Architecture
7
Part II: Background Knowledge for Binary Analysis
11
Part III: Unlocking Key Binary Analysis Skills for Reverse Engineering
17
Part IV: Security Features in Armv8-A Systems
20
Other Books You May Enjoy
21
Index

Analyzing stack memory content

In this section, we will analyze the call stack and stack dump using GDB. We will also discuss vulnerabilities that occur when the stack is corrupted.

Understanding the call stack

How can the execution flow of a process be represented? In many cases, it is represented by the call stack. You can view the call stack in the GDB program, and it can also be found in various logs. However, the call stack is a high-level view. To fully understand how the call stack is printed, you need to understand the patterns of the binary data stored in the stack.

You can view the call stack using the backtrace (bt) command in GDB. How does GDB display the call stack? Here’s how GDB displays the call stack via the bt command, broken down as follows:

  1. GDB reads the data stored in the stack area.
  2. GDB parses it according to the Arm Architecture Procedure Call Standard (AAPCS).
  3. GDB displays the call stack.

To better understand...

CONTINUE READING
83
Tech Concepts
36
Programming languages
73
Tech Tools
Icon Unlimited access to the largest independent learning library in tech of over 8,000 expert-authored tech books and videos.
Icon Innovative learning tools, including AI book assistants, code context explainers, and text-to-speech.
Icon 50+ new titles added per month and exclusive early access to books as they are being written.
Reverse Engineering Armv8-A Systems
notes
bookmark Notes and Bookmarks search Search in title playlist Add to playlist download Download options font-size Font size

Change the font size

margin-width Margin width

Change margin width

day-mode Day/Sepia/Night Modes

Change background colour

Close icon Search
Country selected

Close icon Your notes and bookmarks

Confirmation

Modal Close icon
claim successful

Buy this book with your credits?

Modal Close icon
Are you sure you want to buy this book with one of your credits?
Close
YES, BUY

Submit Your Feedback

Modal Close icon
Modal Close icon
Modal Close icon