What is reverse  engineering?
Reverse engineering as we will discuss it is simply the act of  figuring out what software that you have no source code for does in a particular  feature or function to the degree that you can either modify this code, or  reproduce it in another independent work. 
In the general  sense, ground-up reverse engineering is very hard, and requires several  engineers and a good deal of support software just to capture the all of the  ideas in a system. However, we'll find that by using tools available to us, and  keeping a good notebook of what's going on, we should be able to extract the  information we need to do what matters: make modifications and hacks to get  software that we do not have source code for to do things that it was not  originally intended to do.
What is reverse engineering?
Why reverse engineer?
It comes down to an issue of power and control. Every computer enthusiast  (and essentially any enthusiast in general) is a control-freak. We love the  details. We love being able to figure things out. We love to be able to wrap our  heads around a system and be able to predict its every move, and more, be able  to direct its every move. And if you have source code to the software, this is  all fine and good. But unfortunately, this is not always the case. 
Furthermore, software that you do not have source code to is usually the most interesting kind of software. Sometimes you may be curious as to how a particular security feature works, or if the copy protection is really "unbreakable", and sometimes you just want to know how a particular feature is implemented.
Furthermore, software that you do not have source code to is usually the most interesting kind of software. Sometimes you may be curious as to how a particular security feature works, or if the copy protection is really "unbreakable", and sometimes you just want to know how a particular feature is implemented.
It makes you a better programmer.
If you don't know assembly language, at the end of this book you will  literally know it inside-out. While most first courses and books on assembly  language teach you how to use it as a programming language, you will get to see  how to use C as an assembly language generation tool, and how to look at and  think about assembly as a C program. This puts you at a tremendous advantage  over your peers not only in terms of programming ability, but also in terms of  your ability to figure out how the black box works. In short, learning this way  will naturally make you a better reverse engineer. Plus, you will have the fine  distinction of being able to answer the question "Who taught you assembly  language?" with "Why, my C compiler, of course!"
Download complete e-book here (in help html format)
Download complete e-book here (in help html format)

 
 
0 komentar:
Posting Komentar