
x86 Software Reverse-Engineering, Cracking, and Counter-Measures
Wiley (Publisher)
1st Edition
Published on 30. January 2024
Book
Hardback
320 pages
978-1-394-19988-4 (ISBN)
Description
A crystal-clear and practical blueprint to software disassembly
x86 Software Reverse-Engineering, Cracking, and Counter-Measures is centered around the world of disassembling software. It will start with the basics of the x86 assembly language, and progress to how that knowledge empowers you to reverse-engineer and circumvent software protections. No knowledge of assembly, reverse engineering, or software cracking is required.
The book begins with a bootcamp on x86, learning how to read, write, and build in the assembly that powers a massive amount of the world's computers. Then the book will shift to reverse engineering applications using a handful of industry favorites such as IDA, Ghidra, Olly, and more. Next, we move to cracking with techniques such as patching and key generation, all harnessing the power of assembly and reverse engineering. Lastly, we'll examine cracking from a defensive perspective. Providing learners with techniques to be a better defender of their own software, or knowledge to crack these techniques more effectively.
Assembly: computer Architecture, x86, system calls, building and linking, ASCII, condition codes, GDB, control flow, stack, calling conventions
Reverse Engineering: reconnaissance, strings, RE strategy, stripping, linking, optimizations, compilers, industry tools
Cracking: patching, key checkers, key generators, resource hacking, dependency walking
Defense: anti-debugging, anti-tamper, packing, cryptors/decryptors, whitelist, blacklist, RASP, code signing, obfuscation
A practical and hands-on resource for security professionals to hobbyists, this book is for anyone who wants to learn to take apart, understand, and modify black-box software. x86 Software Reverse-Engineering, Cracking, and Counter-Measures is a vital resource for security researchers, reverse engineers and defenders who analyze, research, crack or defend software applications.
x86 Software Reverse-Engineering, Cracking, and Counter-Measures is centered around the world of disassembling software. It will start with the basics of the x86 assembly language, and progress to how that knowledge empowers you to reverse-engineer and circumvent software protections. No knowledge of assembly, reverse engineering, or software cracking is required.
The book begins with a bootcamp on x86, learning how to read, write, and build in the assembly that powers a massive amount of the world's computers. Then the book will shift to reverse engineering applications using a handful of industry favorites such as IDA, Ghidra, Olly, and more. Next, we move to cracking with techniques such as patching and key generation, all harnessing the power of assembly and reverse engineering. Lastly, we'll examine cracking from a defensive perspective. Providing learners with techniques to be a better defender of their own software, or knowledge to crack these techniques more effectively.
Assembly: computer Architecture, x86, system calls, building and linking, ASCII, condition codes, GDB, control flow, stack, calling conventions
Reverse Engineering: reconnaissance, strings, RE strategy, stripping, linking, optimizations, compilers, industry tools
Cracking: patching, key checkers, key generators, resource hacking, dependency walking
Defense: anti-debugging, anti-tamper, packing, cryptors/decryptors, whitelist, blacklist, RASP, code signing, obfuscation
A practical and hands-on resource for security professionals to hobbyists, this book is for anyone who wants to learn to take apart, understand, and modify black-box software. x86 Software Reverse-Engineering, Cracking, and Counter-Measures is a vital resource for security researchers, reverse engineers and defenders who analyze, research, crack or defend software applications.
More details
Series
Language
English
Place of publication
New York
United States
Target group
Professional and scholarly
Dimensions
Height: 238 mm
Width: 192 mm
Thickness: 24 mm
Weight
748 gr
ISBN-13
978-1-394-19988-4 (9781394199884)
Copyright in bibliographic data and cover images is held by Nielsen Book Services Limited or by the publishers or by their respective licensors: all rights reserved.
Schweitzer Classification
Other editions
Additional editions

Stephanie Domas | Christopher Domas
x86 Software Reverse-Engineering, Cracking, and Counter-Measures
E-Book
01/2024
1st Edition
Wiley-Scrivener
€48.99
Available for download

Stephanie Domas | Christopher Domas
x86 Software Reverse-Engineering, Cracking, and Counter-Measures
E-Book
01/2024
1st Edition
Wiley-Scrivener
€48.99
Available for download
Persons
STEPHANIE DOMAS is the CISO of Canonical, where she is driving Canonical to be the most trusted computational partner in all of open source. Prior to that she was the Chief Security Technology Strategist at Intel where she owned the cross-Intel security technology strategy across Intel's wide portfolio of products. Stephanie is a passionate educator, strategist, speaker, advisor, and security enthusiast.
CHRISTOPHER DOMAS is a security researcher primarily focused on firmware, hardware, and low level processor exploitation. He is best known for releasing impractical solutions to non-existent problems, including the world's first single instruction C compiler (M/o/Vfuscator), toolchains for generating images in program control flow graphs (REpsych), and Turing-machines in the vi text editor.
CHRISTOPHER DOMAS is a security researcher primarily focused on firmware, hardware, and low level processor exploitation. He is best known for releasing impractical solutions to non-existent problems, including the world's first single instruction C compiler (M/o/Vfuscator), toolchains for generating images in program control flow graphs (REpsych), and Turing-machines in the vi text editor.
Content
Introduction xxiii
Chapter 1 Decompilation and Architecture 1
Chapter 2 x86 Assembly: Data, Modes, Registers, and Memory Access 13
Chapter 3 x86 Assembly: Instructions 31
Chapter 4 Building and Running Assembly Programs 43
Chapter 5 Understanding Condition Codes 57
Chapter 6 Analyzing and Debugging Assembly Code 65
Chapter 7 Functions and Control Flow 77
Chapter 8 Compilers and Optimizers 127
Chapter 9 Reverse Engineering: Tools and Strategies 137
Chapter 10 Cracking: Tools and Strategies 147
Chapter 11 Patching and Advanced Tooling 179
Chapter 12 Defense 203
Chapter 13 Advanced Defensive Techniques 217
Chapter 14 Detection and Prevention 229
Chapter 15 Legal 239
Chapter 16 Advanced Techniques 245
Chapter 17 Bonus Topics 251
Conclusion 271
Index 273
Chapter 1 Decompilation and Architecture 1
Chapter 2 x86 Assembly: Data, Modes, Registers, and Memory Access 13
Chapter 3 x86 Assembly: Instructions 31
Chapter 4 Building and Running Assembly Programs 43
Chapter 5 Understanding Condition Codes 57
Chapter 6 Analyzing and Debugging Assembly Code 65
Chapter 7 Functions and Control Flow 77
Chapter 8 Compilers and Optimizers 127
Chapter 9 Reverse Engineering: Tools and Strategies 137
Chapter 10 Cracking: Tools and Strategies 147
Chapter 11 Patching and Advanced Tooling 179
Chapter 12 Defense 203
Chapter 13 Advanced Defensive Techniques 217
Chapter 14 Detection and Prevention 229
Chapter 15 Legal 239
Chapter 16 Advanced Techniques 245
Chapter 17 Bonus Topics 251
Conclusion 271
Index 273