- Paperback: 600 pages
- Publisher: A-List Publishing (April 1, 2003)
- Language: English
- ISBN-10: 1931769222
- ISBN-13: 978-1931769228
- Product Dimensions: 7.5 x 1.1 x 9.5 inches
- Shipping Weight: 2.2 pounds
- Average Customer Review: 15 customer reviews
- Amazon Best Sellers Rank: #1,746,320 in Books (See Top 100 in Books)
Enter your mobile number or email address below and we'll send you a link to download the free Kindle App. Then you can start reading Kindle books on your smartphone, tablet, or computer - no Kindle device required.
To get the free app, enter your mobile phone number.
Hacker Disassembling Uncovered: Powerful Techniques To Safeguard Your Programming
Use the Amazon App to scan ISBNs and compare prices.
Customers who bought this item also bought
Customers who viewed this item also viewed
About the Author
Showing 1-6 of 15 reviews
There was a problem filtering reviews right now. Please try again later.
The book is about the code typically generated by compilers of various forms (mostly c and c++, some pascal as well). If you want to understand the disassembly, you must grok what Christina Cifuentes calls idioms (instruction sequences that have an effect different than the usual intended meaning).
This book is very much a collection of idioms. It's a good primer to the art of reverse engineering, and maybe readers can move on to general decompilation papers for further study, starting with "Reverse Compilation Techniques" by Ciguentes, and moving on to more modern papers.
The book is therefore misleadingly titled. If you want a book to reverse engineer, this is it. If you want a book for how to safeguard against it, look elsewhere.
With a topic this large, the author can be forgiven for presenting only a limited set of examples: C, C++, Pascal on Windows. He shows how to use commercial tools to disassemble object code into assembler and how to identify program structures there, with particular emphasis on language features that produce non-intuitive structures.
Topics covered include: cracking passwords, identifying key structures in high level languages (the bulk of the book) and how to make your code difficult to analyse using these methods.
The structures examined include IF-THEN-ELSE, SWITCH-CASE-BREAK, objects, structures, arrays, constants, offsets and variables. The reader is shown how to recognise these objects. Explanations are complete and involve no handwaving.
A good solid introductory text.
The information itself, while extremely valuable, is very hard to follow (steep learning curve here) but that is not entirely the fault of the presentation, which is actually pretty good. This is just a tough subject. Disassembly is an art, it takes quite a bit of guesswork and experience in recognizing patterns. This book gives you a headstart on that, and is a great place to start learning the craft. I don't know why but he recommends some pretty outdated tools, like a DOS hex editor Hiew which I don't care for.
The book is presented as if it is one of those "uncovered"/"exposed"/"revealed" books that must sell so well. In truth, this book is of only marginal use to someone trying to defend against disassemblers. It makes gestures towards being about "safeguarding your programming" but very little of the book is devoted to that (the last 40 pages of a 580 page book). And, I really wish the book had incorporated a discussion of the executable file format and its different pieces and parts (for this I recommend the article by Matt Pietrek titled "An In-Depth Look into the Win32 Portable Executable File Format" available somewhere online) but that was glossed over.
That said, if you are doing (Intel x86) disassembly, GET this book, it is a must-have. I hope to see a second edition of this someday.