

🔍 Decode software like a pro — don’t get left behind in the digital arms race!
Reversing: Secrets of Reverse Engineering by Eldad Eilam is a highly acclaimed technical book focused on x86 reverse engineering. It offers detailed explanations, practical disassembler walkthroughs, and real-world examples, making it an indispensable resource for software engineers and security professionals aiming to deepen their understanding of software internals and cracking techniques.
| Best Sellers Rank | #682,227 in Books ( See Top 100 in Books ) #168 in Software Design & Engineering #729 in Software Development (Books) #1,779 in Computer Software (Books) |
| Customer Reviews | 4.6 out of 5 stars 206 Reviews |
P**Y
Pure perfection.
I am sorry for having written this review so late. This book is a true gem; a must-have for any serious software engineer. Understanding how software works under the hood is key to writing code properly -- and this book provides an insight on that topic in an absolutely BRILLIANT MANNER. Having a fair bit of reverse engineering experience myself, I have found this book to be extremely concise and detaild -- and I have learned a fair bit of new material while reading it. There is no dull moment in this book. The author (who is clearly a gifted writer) explains reverse-engineering-related topics in a fascinating and unique manner, and, within this work, he actually cements the way in which reverse engineering should always be taught. Written by a true master, the book is very pedagogic; every chapter is accompanied by detailed examples -- which make the discussed topics crystal-clear. I would have given this book more than five stars, had I been able to -- and I can recommend it to every software deveopler without a trace of hesitation; actually, it is now that I have bought an additional copy as a gift to a friend. Rest assured that this book will be a crucial part in your collection of tech books, just like it is in mine. To sum it all up (and as it becomes clear from the above written): I think that this book is a magnificent work of art (no less), and I would even dare to say that I enjoyed it more than any tech book I ever owned. With all the aforementioned complements and my vain attempts to describe the magnificence of this work, words still can't fully do justice to this book. HIGHLY RECOMMENDED.
J**S
Well Written Explanations Containing Serious Reversing
This well written gem contains everything needed for a solid foundation in x86 reversing. It will walk you through completing several daunting tasks and does not shy away from getting neck-deep in the nitty gritty details, including pages upon pages of groan-inducing disassembler listings. Be warned that if you just read the book and don't try following the examples on your computer, you will be missing out on a lot and may get the impression that reversing is as easy as the author makes it out to be in this book. There is also plenty of relatively pain-free discussion of high level theory, which comes as a nice relief after going through those previously mentioned pages of disassembler listings. I picked up this book to get better at exploiting software, and was not disappointed. However, this is not a book about exploit development. If anything, it is a book about software cracking, complete with a 50 page walkthrough of an intermediate level protection scheme. The chapter on finding security vulnerabilities is actually very weak, as is the chapter on malware analysis. Despite this, I was not disappointed because the fundamental reversing skills acquired by working through this book are also invaluable base skills for exploit development. My main gripe with this book is it's sole focus on the Windows x86 evironment. I would expect a hypothetical second edition to include many pages on reversing x86-64 code, as well as a chapter on Android and iOS reversing.
W**N
Good Introductory Reverse Engineering Book
This is a good introductory book on reverse engineering. I would say it best suits somebody that has some years of developing experience in high-level languages such as C/C++ or Delphi/Pascal, while also knows something about Assembly language -- and of course with a strong curiosity for any "secrets" under the hood. From time to time I found myself nodding while reading this book. My work invloves using some software for modeling transportation systems but most of the time the details of the underlying models that software relies on are not well documented. The information in this book helps me quickly learn how to reverse and get the information I want to know. Besides this book is very well written thus very enjoyable to read. In this regard, I would like to say - as an extra bonus I learned a lot from the author's writing ! (Sure, English is not my native lanuage but I have to write a lot technical reports in English for my daily work) I love this book. Highly recommended!
S**D
Excellent review, great focus
As a preliminary review without having completed the text yet, I have to say that this book is very well focused for the Windows developer. Focus is important because reverse engineering really puts one directly into nearly any possible aspect of the modern computer. This text will please even the moderately advanced programmer, although the first quarter or so might seem like too much review for the Windows C++ programmer. The .NET programmer will really benefit, though, since the focus through the Windows layers and into machine code will reveal a lot to the high-level person who hasn't yet had a chance to delve into 'internals.' I think the book serves as a "pro" book for someone with C++/Windows experience by tying things together and moving to its reversing core while at the same time serving as an "intermediate" book, ironically, for the high-level programmer who will read it more for a qualitative comprehension and have to go out and read more 'internals' books (like Jeff Richter's books) if interested in deeper understanding.
R**K
Beware of Technical Errors...
While the author gives a lot of useful high-level information about reverse engineering, he makes some fairly blatant errors from time to time when it comes to details. These errors are scattered throughout the book, and don't seem to be specific to any one topic. I suspect it may just be a matter of fast writing, poor editing, and a lack of diligence on the part of the technical reviewers. In any event, it's a good idea to have a secondary source of information available to verify what the author says.
E**N
A good read
This book takes a tutorialistic approach to reverse engineering. It assumes you have a working knowledge of assembly language and C/C++. The author briefly introduces you to some of the programming languages in use, Windows Internals, gives an overview of some of the tools available, and then proceeds to walk you through some example reverse-engineering. The author spent alot of time covering Windows internals. The overview of Assembly language could have been a little more thorough before going into reverse-engineering, instead most of the appendix is devoted to this. More time introducing the debugging tools and the use of it's features instead of the brief overview would have been helpful too. Despite these shortcomings the book is very educational. If you are not up to speed on C/C++ and assembly would recommend reading Assembly Language Step-by-step: Programming with DOS and Linux (with CD-ROM) and The C Programming Language (2nd Edition) before reading this book.
H**E
Have no clue on reverse engineering? This book is for you!
Great book for those interested in starting in the art of reversing. Do keep in mind some computer knowledged is needed and programming experience is a must. The thing I love the most of the book what working with many examples with the author. He will slowly go through assembly code and try to figure out what it does. You don't wonder how he got there because he is very detailed explaining just how. I myself have already being able to play around with many program and I have to say the rush you get when simple assembly instructions start to make sense is addicting. If you have a Mac computer I recommend in investing on the Hopper disassembler as it has a pseudo code generator so you can compare what you think it does to what it actually does.
P**E
Great book ! Lots of uses !!!
among many purposes, when you have the source code: understand compiled code, and tweaking the source to get a better performance; verify that the code contains only what it should, and no "others" things that could have been injected for nefarious purposes; understand ways to protect code from spying, and to build one's methods to try to resist it. And of course the basic book about how to understand a binary object and verify/ adapt/ build upon it. Can be fun to find that the code of an apparently innocent and widely disseminated program contains an interpreter for a secret interpretive language that itself contains...
Trustpilot
1 week ago
2 weeks ago