Why you need to learn Programming languages?
Every hacking requires understanding of application logic, before hacking anything one needs to understand this logic and it is only possible when you understand How an Application works. If you don’t understand how program works, you may not be able to find logical flaw but if you know programming language then you can easily understand and proceed to find vulnerabilities.
To Hack something, First you need to understand the logic of an application, then find the vulnerability and then hack it by exploiting the weakness.
Programming languages for Web Hacking and Pentesting
Web hacking is very common these days but not so easy when it comes to secure targets. So you may have wondered what languages should I know to hack or penetrate web applications?
HTML : Hyper Text Markup Language is in every web-site you see in your browser and it is also one of the simple and widely used web language. It is recommended to learn HTML very well, It can help you to understand web actions, response, and web-app logic.
HTML is a static markup language.
SQL : SQL is a database programming language used in almost all data storing sites. SQL is responsible for storing and managing most sensitive and confidential data such as user credentials, credit card or even bank details. You must know about database programming and its vulnerability.
PHP is strongly recommended to every beginner in Hacking and Penetration testing.
Programming languages for writing Exploits
Exploit writing is an 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, Perl, Python etc.
Python : Python is widely used language for exploit writing or creating pentesting/hacking tools. A Hacker must know Python and Python Socket Programming. 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 you may know Metasploit framework itself programmed in Ruby.
C : C is most used in software programming for Linux, Windows etc… However it is also used for Exploit writing and development. It may not provide wider flexibility as compared to Python yet it is very useful in some cases.
Programming languages for Reverse Engineering
Assembly language, the one and only Assembly nothing but Assembly.
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 engineering, you must need to learn Assembly language.
I’ve already explained you why programming is so important for hacking. It also depends upon application you want to hack, For example – If a web-app is coded in ASP.NET then you may find it difficult to understand its structure and flow, However you may understand its logic but to execute your command you must be familiar with app language and code logic.
Posted From r00t @ l0wsec