A couple weeks ago I was volunteering at Spartahack, a awesome new hackathon hosted at MSU. One of the guest celebrity judges was Jay Freeman a.k.a. Saurik. If you have ever jailbroken your apple device, you should be thanking Jay because he’s the creator of the jailbroke app store called Cydia.
He had a talk at the hackathon where he explained approximately 10 bugs used in apple and andriod phones in the last decade that was found by reverse engineering code. Some of the vulnerabilities were simple things that must have slipped the developers mind, others were harder to see. For example, the way an if statement was executed, or a exception wasn’t accounted for.
If you want to be a hacker like Saurik, you should learn about Reverse Engineering since that is one of the things he does. In a nut shell, it’s taking low level compiled code and trying to “decipher” the human readable source code. Using this makes it possible to find holes in a developer’s software where you can find vulnerabilities. Reverse Engineering is a very complex thing to understand, it will take more than a few tries to understand what’s happening so never give up! Always keep practicing and learning, there’s always a way to improve.