Zum Hauptinhalt springen Zur Suche springen Zur Hauptnavigation springen
Beschreibung
Provides readers with a solid foundation in Arm assembly internals and reverse-engineering fundamentals 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 laptops from companies including Microsoft, Lenovo, and Apple. Written by a leading expert on Arm security, Blue Fox: Arm Assembly Internals and Reverse Engineering 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 an overview of the ELF file format and OS internals, followed by 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. The last chapter provides the reader a glimpse into macOS malware analysis of binaries compiled for the Arm-based M1 SoC. 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 common disassembly and debugging tools

Blue Fox: Arm Assembly Internals and Reverse Engineering is a vital resource for security researchers and reverse engineers who analyze software applications for Arm-based devices at the assembly level.
Provides readers with a solid foundation in Arm assembly internals and reverse-engineering fundamentals 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 laptops from companies including Microsoft, Lenovo, and Apple. Written by a leading expert on Arm security, Blue Fox: Arm Assembly Internals and Reverse Engineering 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 an overview of the ELF file format and OS internals, followed by 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. The last chapter provides the reader a glimpse into macOS malware analysis of binaries compiled for the Arm-based M1 SoC. 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 common disassembly and debugging tools

Blue Fox: Arm Assembly Internals and Reverse Engineering is a vital resource for security researchers and reverse engineers who analyze software applications for Arm-based devices at the assembly level.
Zusammenfassung
MARIA MARKSTEDTER is the CEO and founder of Azeria Labs, offering high-quality training courses on Arm reverse engineering and exploitation. She has an extensive educational background, holding a Bachelor's degree in Corporate Security and a Master's degree in Enterprise Security, and has collaborated with Arm on exploit mitigation research. Maria's outstanding contributions to the cybersecurity industry have earned her a place on Forbes' "30 under 30" list for technology in Europe (2018) and the title of Forbes Person of the Year in Cybersecurity in 2020.
Inhaltsverzeichnis
Introduction xxi

Part I Arm Assembly Internals 1

Chapter 1 Introduction to Reverse Engineering 3

Introduction to Assembly 3

Bits and Bytes 3

Character Encoding 5

Machine Code and Assembly 6

Assembling 9

Cross- Assemblers 13

High- Level Languages 15

Disassembling 16

Decompilation 17

Chapter 2 ELF File Format Internals 21

Program Structure 21

High- Level vs. Low- Level Languages 22

The Compilation Process 24

Cross- Compiling for Other Architectures 25

Assembling and Linking 27

The ELF File Overview 30

The ELF File Header 31

The ELF File Header Information Fields 32

The Target Platform Fields 33

The Entry Point Field 34

The Table Location Fields 34

ELF Program Headers 34

The PHDR Program Header 36

The INTERP Program Header 36

The LOAD Program Headers 36

The DYNAMIC Program Header 37

The NOTE Program Header 37

The TLS Program Header 38

The GNU_EH_FRAME Program Header 38

The GNU_STACK Program Header 39

The GNU_RELRO Program Header 41

ELF Section Headers 43

The ELF Meta- Sections 45

The String Table Section 46

The Symbol Table Section 46

The Main ELF Sections 46

The .text Section 47

The .data Section 47

The .bss Section 47

The .rodata Section 47

The .tdata and .tbss Sections 48

Symbols 48

Global vs. Local Symbols 50

Weak Symbols 50

Symbol Versions 51

Mapping Symbols 51

The Dynamic Section and Dynamic Loading 52

Dependency Loading (NEEDED) 53

Program Relocations 54

Static Relocations 55

Dynamic Relocations 56

The Global Offset Table (GOT) 57

The Procedure Linkage Table (PLT) 57

The ELF Program Initialization and Termination Sections 58

Initialization and Termination Order 60

Thread- Local Storage 60

The Local- Exec TLS Access Model 65

The Initial- Exec TLS Access Model 65

The General- Dynamic TLS Access Model 66

The Local- Dynamic TLS Access Model 67

Chapter 3 OS Fundamentals 69

OS Architecture Overview 69

User Mode vs. Kernel Mode 70

Processes 70

System Calls 72

Objects and Handles 77

Threads 79

Process Memory Management 80

Memory Pages 82

Memory Protections 82

Anonymous and Memory- Mapped Memory 84

Memory- Mapped Files and Modules 84

Address Space Layout Randomization 87

Stack Implementations 90

Shared Memory 91

Chapter 4 The Arm Architecture 93

Architectures and Profiles 93

The Armv8- A Architecture 95

Exception Levels 96

Armv8- A TrustZone Extension 97

Exception Level Changes 99

Armv8- A Execution States 101

The AArch64 Execution State 102

The A64 Instruction Set 103

AArch64 Registers 104

The Program Counter 106

The Stack Pointer 107

The Zero Register 107

The Link Register 108

The Frame Pointer 109

The Platform Register (x18) 109

The Intraprocedural Call Registers 110

SIMD and Floating- Point Registers 110

System Registers 111

PSTATE 112

The AArch32 Execution State 114
Details
Erscheinungsjahr: 2023
Genre: Importe, Informatik
Rubrik: Naturwissenschaften & Technik
Medium: Taschenbuch
Inhalt: 480 S.
ISBN-13: 9781119745303
ISBN-10: 1119745306
Sprache: Englisch
Herstellernummer: 1W119745300
Einband: Kartoniert / Broschiert
Autor: Markstedter, Maria
Hersteller: John Wiley & Sons Inc
Verantwortliche Person für die EU: Wiley-VCH GmbH, Boschstr. 12, D-69469 Weinheim, product-safety@wiley.com
Maße: 232 x 183 x 28 mm
Von/Mit: Maria Markstedter
Erscheinungsdatum: 04.07.2023
Gewicht: 0,891 kg
Artikel-ID: 123850680

Ähnliche Produkte