Monday

Reverse engineering 101



After the CTF @ Hack.lu, I got more interested in Reverse engineering so I looked up some resources to help sharpen my skills. First of all, there is a Wikibook on Reverse Engineering to familiarize yourself with some of the concepts.

Then there is a two piece part on reverse engineering at the ethicalhacker.network.

In Part 1, Intro to Reverse Engineering - No Assembly Required, we extended the series of coding articles for non-programmers with an area of high interest in the infosec community. We're proud to be able to bring you the highly anticipated follow-up complete with screen shots, sample code and applications. This one is long and detailed, so strap yourselves in for some great educational content.

This paper is designed to outline some essential reverse engineering concepts, tools and techniques - primarily, debuggers and using the debugging process to reverse engineer application functions and algorithms. It is assumed you have knowledge of basic assembly and C programming. An understanding of Win32 programming and API calls is also helpful. This tutorial does not necessarily have to be read in order (although it is strongly advised), as some sections do not contain information that directly relates to subsequent sections. However, if you begin skipping around and find that you have trouble understanding a concept, or feel like you missed an explanation, it would be best to go back to previous sections of the tutorial and read them first.

After that, let's get to Intro to Reverse Engineering - Part 2

If you need some practice, you can always try the challenges from F-secure:

Don’t forget Didier Steven's tools to help you with the challenges:

- Challenger
- OllyStepNSearch

Think it’s too difficult for you? Think again, this movie (YouTube) shows how easy the first level of last year’s challenge was, XviD hires here

I also noticed Didier created a wiki on reverse engineering:

No comments: