jump to navigation

Research in reverse engineering March 8, 2008

Posted by lizardo in Reverse Engineering.
trackback

I am about to graduate in Computer Science at Universidade Federal do Amazonas (UFAM), so I think I will now have more time to continue my personal research on some subjects I am interested in, but never found time to continue after I entered college.

One of these subjects is Reverse Engineering (RE). Before entering college, I played a little with RE and started a project on reverse engineering a driver for my scanner. It was quite challenging, and I liked it a lot, but never had time since then to either continue this project or start new ones.

Now it is time to change :) . During college I developed interest in Artificial Intelligence (IA) and ontologies. This (somehow ;) ) led me to create interest in a research area known as “program comprehension” or “program understanding”. This is a research domain that, in my opinion, includes RE when it is applied to understanding how a system works. Therefore, my focus will be on applying RE techniques for program understanding.

As a first step, I started gathering some domain knowledge, but I would like to make something more pragmatic in parallel, so my studies could have a focus. I decided for now to work with the Boomerang decompiler and make some RE experiments with it. I chose it because It is, to my knowledge, the most advanced Open Source decompiler I am aware of, and decompilers can help understanding programs for which you don’t have sources. Of course, there are some other tools I would like to experiment with, such as Sparse.

I will probably make some kind of schedule so I don’t lose track during my research. More to follow!

Comments

1. Marcio - March 11, 2008

Fala Anderson!

Estou fazendo mestrado na PUC-Rio e também estou trabalhando na área de program-comprehension. Pretendo desenvolver uma ferramenta para auxiliar o entendimento de sistemas legados.

Pode ser que possamos contribuir com nossas pesquisas!

[]’s

2. lizardo - March 12, 2008

Seria ótimo! Meu interesse no momento é entendimento de programa a partir de código de máquina (Assembly). Este tópico em específico apresenta seus próprios desafios, visto que muito menos informação está disponível no código compilado; além disso, possui algumas aplicações interessantes, principalmente na área de segurança (por exemplo, detecção de código malicioso) e para interoperabilidade com software proprietário.


Sorry comments are closed for this entry