What are the languages to be learnt for hacking into a computer system? - The Logical Kid


   This post is all about answering the question which every wannabe hacker keeps asking!
   Well, here are some of the best answers which I personally feel that fit as an apt answer.



Firstly, It doesn't matter what you learn because you have no control over what you might need in the specific circumstances. If the proof-of-concept is written in python, then you need to be able to read python, if the exploit is written in C, then you need to read C. If you are exploiting java applets then you need to handle java

What you do is learn one language really really REALLY well and then go from that.

A very common misconception is that hackers work with source code. They very rarely do. Instead they work with compiled code running in memory. So you need to be able to handle assembly and when you code it's more often to see the resulting assembly and rarely to achieve functionality.

You will find out that learning a programming language or even learning more than one programming language will not get you anywhere near being able to hack
 

itsmerif@maak:/$ ls -l
-rwxr--r--

 

Secondly, Hacking (or rather CRACK-ing) isn't about programming. So language is irrelevant as an answer to this question. Though you'd be much "better" (or should that be "worse") at it if you know nearly all the languages in general use.

What cracking is mostly about is dissembling programs to find loop-holes in their construction. These loopholes you use to gain access to them other than as designed. So if any language can be stated as a prerequisite, then the "assembly" of the program is probably it - whatever that assembly is (x86 based, ARM, etc.). In stuff like web sites the "assembly" might be JavaScript, but then just as easily on the server side it might be JVM / DotNet bytecode, or Python scripts, or whatever else is used.

Ask yourself: "Why do I want to 'hack'?" To learn programming? Then you're wasting your time. To be able to break into systems? Then programming is not what you want to do.

Source: Quora