Since programming is essential for hacking because a hacker is someone who breaks a protocol or an application security which is programmed in a certain programming language and to hack an application a hacker needs to understand the logic of that app, find flaw and the exploit it. So a hacker must learn a couple of programming languages to complete his task. So checkout the important programming languages for hackers and where to apply it.
Programming Languages for writing Exploits
Exploit writing is advance part of Hacking, It requires higher level of programming language. Every professional hacker must know Exploit Writing, It can be done in any programming language like C, C++, Ruby, Python etc.
• C : The mother of all programming language, C is most used in software creation for Linux, Windows etc… However it is also used for Exploit writing and development. I would prefer to learn C first and recommend to you as well.
• Python : Python is most used language for exploit writing, It is highly recommended you to learn Python Socket Programming because it helps lot learning exploit creation.
• Ruby : A simple but complicated object-oriented programming language. Ruby is very useful in exploit writing. It is used for meterpreter scripting and do you know Metasploit Framework itself programmed in Ruby.
Programming languages for Reverse Engineering
• Assembly Language : Assembly is low level programming language but very complicated. One can instruct a machine hardware or software using Assembly language. Reverse Engineers uses Assembly language, and if you want to learn Reverse Eng, you must need to learn Assembly language.
Programming languages for Web Hacking and Pentesting
If you’re interested in web hacking and pentesting, then you must learn learn below mentioned languages at-least basic and intermediate level.
• HTML : Always began with basic basic and HTML is important and most basic markup language. One should know it very well to understand web action, response, structure and logic. HTML is static markup language.
• SQL : SQL is database programming language. Each and every data is stored in database so you should know about database programming and vulnerability as it is the most sensitive part of Web.