[ Where to begin ]

Learn To Program

It is important to learn computer programming languages such as C, C++, Javascript, Perl, PHP and Python. One of the best ways to learn these is by reading books from experts. It will also help to know about markup languages like XML, HTML and data formats such as Json and others which are common way to transfer data between client and server.

Learn UNIX

UNIX is a multi-tasking and multi-user computer operating system that is designed to provide good security to the systems. The best way to learn it is to get into an open-source version (e.g. centos) and install/run the same on your own. You can operate internet without learning UNIX, but it is not possible for you to be an internet hacker without understanding UNIX. You should also learn the internals of this operating system. A large number of web servers are hosted on Unix based servers and knowing internals of this operating system.

Networking Concepts

Understanding how the networks are created is important, however you need to know the differences between different types are networks. Understanding of TCP/IP and UDP protocol is going to help you to be able to exploit the vulnerabilities. Understand what is subnet, LAN, WAN and VPN. The networking commands to do a HTTP request needs to be on your fingertips. The HTTP protocol, is the gateway through which one enters the internet world. Hence it is necessary to learn this protocol in order to break the barriers. The hackers often use the HTTP gateway to breach the security of the system and take control over it.

Learn Cryptography

Cryptography is heavily used in SSL based internet communication. An expert hacker should be able to understand how SSL works and what is the importance of cryptography in keeping SSL secure. Understand various techniques used for password cracking. There are dozens of tools available to do password cracking, and using it is not hacking. To be good at hacking its important for you to understand how to create a program that can crack a password from cypher text.

Experiment A Lot

It is good to try experimenting on your own computers, where you can rectify if you have done any mistake.

Try hacking challenges

  • hacktissite.org
  • overthewire.org
  • pwnable.kr
  • root-me.org