Friday, February 18, 2011

Teaching Reverse Engineering

One of my favorite blogs, reverse.put.as, recently re-released an awesome reverse engineering tutorial for OS X. The tutorial is very well done and fG! (the author) also links to an amazing .gdbinit file that really makes reversing much nicer in gdb. fG! originally removed the tutorial because he(or she—not sure) was concerned that some would abuse the information. He made clear in the re-release that his intent was not to abet software pirates, but to educate those with desire to learn a very important skill.

Several of the comments indicate that not all agree with him. I think what they fail to recognize, however, is that reversing is not cracking—cracking is merely one use of reversing. Reversing is necessary in the modern world: we need it to fight malware, discover and patch vulnerabilities, give software developers the freedom of interoperability, and to encourage healthy competition.

Will some people use the knowledge for evil? To be sure; anything can be misused. But others will use it to improve the world they live in. Give people information and let them decide how to live.

No comments: