Unfortunately, there is very little information readily available about Reverse Engineering and it remains a poorly understood "black art". Even worse, the information that is available is often Microsoft Windows centric. With the move away from the Windows family of operating systems this lack of information becomes more noticeable. This is the reason that I have put this site together.
The academic community (being grant driven) is not free to research a topic such as reverse engineering for its own sake. Instead it researches techniques for re-engineering, program slicing or machine translation, which are highly specialised aspects of reverse engineering. They do not research general reverse engineering techniques.
A quick search for reverse engineering with the online book sellers will show that no books exist for software reverse engineering. The few books on the topic relate to hardware reverse engineering or a expensive copies of conference proceedings. The only book I am aware of is the Honeynet Project's Know your Enemy 2nd ed. which contains an chapter introducing reverse engineering, that I authored.
A web search for reverse engineering will also yield very little. Most sites devoted to reverse engineering approach it from a cracking perspective (copyright bypassing), and then only on a Microsoft Windows platform. While it is laudable that these sites are sharing reverse engineering skills and techniques, it is unfortunate that they have chosen an emphasis on cracking, as this just enhances the already poor view of reverse engineering.
With very little available information about Reverse Engineering, I decided to start researching and documenting the skills and techniques required. This site is a repository of those findings.
I'm a 29 year old computer programmer living in Perth, Western Australia.
My background with Reverse Engineering is with decoding file formats. Before the Honeynet Reverse Challenge, my experience with reverse engineering executables was limited to the small amount needed to help with decoding file formats. After entering and winning the contest, I was surprised to see the scarcity of Reverse Engineering knowledge. Since the Reverse Challenge, I have spent my time focusing on techniques and skills necessary for reverse engineering executables.
I am currently looking for interesting job opportunities. If you have an opening on an interesting project and need someone with my skills, let me know.