applications of reverse engineering, this book provides readers with practical, in-depth techniques for software reverse engineering. The book is broken into two parts, the first deals with security-related reverse engineering and the second explores the more practical aspects of reverse engineering. In addition, the author explains how to reverse engineer a third-party software library to improve interfacing and how to reverse engineer a competitor's software to build a better product.
* The first popular book to show how software reverse engineering can help defend against security threats, speed up development, and unlock the secrets of competitive products
* Helps developers plug security holes by demonstrating how hackers exploit reverse engineering techniques to crack copy-protection schemes and identify software targets for viruses and other malware
* Offers a primer on advanced reverse-engineering, delving into "disassembly"-code-level reverse engineering-and explaining how to decipher assembly language
From the Back Cover
If you want to know how something works, you take it apart very carefully. That′s exactly what this book shows youhow to deconstruct software in a way that reveals design and implementation details, sometimes even source code. Why? Because reversing reveals weak spots, so you can target your security efforts. Because you can reverse–engineer malicious code in order to neutralize it. Because understanding what makes a program work lets you build a better one. You′ll learn how here.
- Learn to read compiler–generated assembly language code for IA–32 compatible processors
- Decipher an undocumented file format or network protocol
- Understand when reverse engineering is legal, and whenand whyit may not be
- See how hackers use reversing to defeat copy protection technology
- Find out how to pull the plug on malicious code
- Determine how to prevent others from reversing your code, and find out how effective such steps can be
- Explore reverse engineering on the .NET platform and its assembly language, MSIL
- Observe the dissection of a real–world malicious program and see how the attacker used it to control infected systems