Some people think that they are a professional by the tools that they use to perform their work. They have somehow got it into their heads that unless they use what the entire industry is using then they are going to be left behind. That is not true at all. The tools of your trade do not matter. It is the person that is using them. You must be the one that is good. You cannot hope to hide behind the excuse that the tools didn’t work if you do not get something accomplished at your job. That being said, good tools do help make the job easier. And that is what good tools are supposed to be for, helping you. They are not supposed to support you as the only way to get the work done.
In the world of computers, in several facets of the industry, you have two sets of tools that you can use to get your work done. You can use paid for tools or you can use free tools. Some people tend to turn down their nose at free tools because they think that just because the price is nothing that it means the tools themselves do not have value. Nothing could be further from the truth. There are a lot of good and bad tools that are available for free just like there are good and bad tools that you must pay for. In the world of reverse engineering programs on the computer there are plenty of free tools that are considered at the top of the field. In this article I will take a look at a few of them now.
The first tool that we will take a look at is known as GDB. The letters GDB stand for the GNU Debugger. This tool will allow you to take a program and break it down to the assembly language level. While it is mainly found on UNIX based systems they also have a version that is available for Windows as well. The tool is mainly used to debug your programs but you can also use it to examine your programs as well. It is a command line based tool which makes it easier to issue several different parameters. This is what makes the program so great. It is very flexible at what it does. There is also a version of GDB known as KGDB which will allow you to debug the kernel of an operating system such as Linux. This software is available for free and it is also open sourced as well. That means that you can take a look at the source code and if there are any improvements that you want to make you can do so.
The next tool that I am going to look at is known as Ollydbg. This software is for x86 based systems and it allows you to reverse engineer any program on that platform. You can get an accurate idea on how the program flows through your computer by running and stopping the software in Ollydbg. You can also check the states of the registers of the CPU and in the memory while the program operates. OllyDBg is known as the beginners tool to reverse engineering but in reality it is much more than that. With this software you are able to do most anything that paid for software such as IDA Pro can do. While IDA Pro does hold your hand a little bit more OllyDBG is good enough for most instances. So if you are looking for reverse engineering software that is easy to use then check this one out first.
While for the most part I have talked about reverse engineering binary programs there are also free tools that will allow you to reverse engineer other aspects of the computer as well. For example, if you would like to reverse engineer the data packets that are coming into your computer you can check out Wireshark. There is nothing like reading the raw text headers in the data that comes through the network. It is a pretty fascinating program to use. When you do try it, you will start to look at the internet in a very different way. Most people do not know how the data gets transferred from one node to another. With Wireshark you will be able to see for yourself and start to study it a bit more.
These are all reverse engineering tools that are just as good as and maybe even better than the top of the line paid versions. If you are truly looking to get into the field then you might want to check out these tools first. It’s great that we can live in an age where professional level tools are available to anyone at such a low cost.