Provides readers with a solid foundation in Arm assembly internals and using reverse-engineering as the basis for analyzing and securing billions of Arm devices
Finding and mitigating security vulnerabilities in Arm devices is the next critical internet security frontier--Arm processors are already in use by more than 90% of all mobile devices, billions of Internet of Things (IoT) devices, and a growing number of current and soon-to-arrive laptops from companies including Microsoft, Lenovo, and Apple. Written by a leading expert on Arm security, Blue Fox: Arm Assembly Internals and Binary Analysis of Mobile and IoT Devices introduces readers to modern Armv8-A instruction sets and the process of reverse-engineering Arm binaries for security research and defensive purposes.
Divided into two sections, the book first provides a detailed look at the Armv8-A assembly languages, followed by OS and Arm architecture fundamentals, and a deep-dive into the A32 and A64 instruction sets. Section Two delves into the process of reverse-engineering itself: setting up an Arm environment, an introduction to static and dynamic analysis tools, and the process of extracting and emulating firmware for analysis. Throughout the book, the reader is given an extensive understanding of Arm instructions and control-flow patterns essential for reverse engineering software compiled for the Arm architecture. Providing an in-depth introduction into reverse-engineering for engineers and security researchers alike, this book:
Offers an introduction to the Arm architecture, covering both AArch32 and AArch64 instruction set states, as well as ELF file format internals Presents in-depth information on Arm assembly internals for reverse engineers analyzing malware and auditing software for security vulnerabilities, as well as for developers seeking detailed knowledge of the Arm assembly language Covers the A32/T32 and A64 instruction sets supported by the Armv8-A architecture with a detailed overview of the most common instructions and control flow patterns Introduces known reverse engineering tools used for static and dynamic binary analysis Describes the process of disassembling and debugging Arm binaries on Linux, and using disassembly and debugging tools including Ghidra and GDB. Blue Fox: Arm Assembly Internals and Binary Analysis of Mobile and IoT Devices is a vital resource for security researchers and reverse engineers who analyze software applications for IoT and mobile devices at the assembly level.
5/5: A must-have. This book is simply incredible. Even if the topic might seem difficult or if you have no clue about Reverse Engineering (RE) or assembly, this book does an excellent job of explaining details that are helpful at the moment you're reading it, or it tells you when and why they'll explain certain concepts (or even where to find more information about them). By far, it's the most organized, "simple," and intuitive book I've read on this subject. It completely exceeded my expectations. It took the author a while to release it, but the wait was worth it. I'm definitely ordering the "Red" edition of this book when it becomes available.
Even as an experienced reverse engineer, I learned so much from this book. Maria distills the essential aspects of AArch64 and AArch32 (A32 and T32) in a fun and engaging way.
The bonus chapter on reverse engineering macOS malware, by Patrick Wardle, was particularly insightful and helpful.
Excellent structure and writing. The information is digestible. I recommend this to anyone searching for a reference to help them get started with the ARM architecture.