[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Reverse Engineer



Mark Rogaski <[email protected]> writes:
> : What do you mean by "reverse engineer?" I have heard this word several =
> : times especially in the world of hacking, but... can someone tell me =
> : what it really meant?
> : 
> 
> Reverse engineering is the process of taking a piece of executable code,
> be it a Win95 program or firmware for a cellular phone eeprom, and
> running it through a disassembler.  The disassembler converts the
> machine code into assembly instructions.  From there, a person with
> a lot of spare time, a good understanding of compiler design, and a lot
> of caffeine can translate the assembly instructions into a higher level
> language (ie. C, C++, VisualBasic).  The first part is easy (and writing
> a disassembler is a good project for upper-level Comp Sci courses), but
> the second part is a real bear and people with the knowledge and 
> drive to do it have my respect.

Small correction: oftentimes one is trying to figure out the 'secret' 
algorithm used by the program, and that can be done by analyzing the
assembler just as well. I did this a few times to break 'secret'
cryptosystems. 

Certain programs encrypt their executable code and decrypt it at runtime
to make reverse engineering more difficult.

---

<a href="mailto:[email protected]">Dr.Dimitri Vulis KOTM</a>
Brighton Beach Boardwalk BBS, Forest Hills, N.Y.: +1-718-261-2013, 14.4Kbps