This blog is to guide anyone who would like to learn ethical hacking. The focus is to help you build a basic foundation. No key can open all locks and no magic code to hack. The concept is simple. Just find how something works and make it do the way was not supposed to. So it’s just understanding and thinking out of the box.
Now let us explore the starter kit.
1 : Learn to google 🔍
First, we must learn to find help. When we are stuck we need our searching skills for the reimbursements.
2 : Keeping notes 📝
During the entire learning process ( never-ending ) we come across a lot of things. It is really important to preserve the knowledge gained. For this, we need to take notes. Also, make sure the notes are short and precise.
You can choose any app of your preference . Some of them are :
3 : Creating your own labs 🧪
We must learn to apply the knowledge. For that, we need to create our labs.
- Download and install virtual box in your system.
Download link: https://www.virtualbox.org/wiki/Downloads
- Now create a virtual machine running in Kali Linux.
4 : Learning Linux 🐧
Good knowledge of Linux OS is very helpful. The more you learn the better you get. First, let us start with the basics.
5 : Bash Scripting 🤖
A Bash script is a plain text file that contains a series of commands. They are very helpful in automating your tasks. Keep your focus on the exciting part, let the scripts do the boring.
- Make a bash script create to N number of files in the directory D .The script should prompt for the number N and directory D for the user to input the values.
- Initailize git in your linux system. Push the above created script to your repository.Now clone the repository in a google cloud shell and run the script from it. [ Github Guide : https://guides.github.com/introduction/git-handbook/ ]
6 : Windows OS 🪟
Windows is a very common OS. Knowledge of the OS in the system you are dealing with gives you an upper hand. So let us start exploring. By Reading 1,2 and 3 you’re good for labs. The 4th is a bit advanced, it is for later reference.
- Architecture of Windows NT : https://en.wikipedia.org/wiki/Architecture_of_Windows_NT
- Command promt : https://www.makeuseof.com/tag/a-beginners-guide-to-the-windows-command-line/
- Powershell : https://docs.microsoft.com/en-us/learn/modules/introduction-to-powershell/
- Windows API : https://docs.microsoft.com/en-us/windows/win32/apiindex/windows-api-list
7 : Understanding code 🧮
Everything in this digital world is just lines of code. Coding/programming skills are not a must but they could be handy. You can create your own tools, create exploits, customise public exploits, customise tools, understand applications better and the list goes on. So at least the ability to understand the code will be very helpful.
- Python : https://tryhackme.com/room/pythonbasics
- Regex : https://tryhackme.com/room/catregex
- HTML : https://www.freecodecamp.org/learn/responsive-web-design/#basic-html-and-html5
- SQL : https://www.w3schools.com/sql/default.asp
8 : Networks 🌐
A computer network is a set of computers sharing resources. A good understanding of networks is recommended. This is a very part important part so try to understand concepts and try building everything you learn to have good practical knowledge.
- Networking : https://tryhackme.com/room/introtonetworking
- Lan : https://tryhackme.com/room/introtolan
- DNS : https://tryhackme.com/room/dnsindetail
- HTTP : https://tryhackme.com/room/httpindetail
- IP addresses : https://tryhackme.com/room/bpnetworking
Install ubuntu server in virtual box.
- Set up SSH on the server. Then try connecting to the server using SSH. [ Guide: https://ubuntu.com/download/server ]
- Host a web page on that server using apache [ Guide : https://dev.to/thearjun/locally-host-website-using-apache2-ubuntu-server-217j ]
9 : Cryptography 🔐
Cryptography is the study of secure communications techniques that allow only the sender and intended recipient of a message to view its contents. A basic understanding of cryptography will help us encrypt and decrypt data.
I hope the above resource was helpful. In the next part, we shall cover different phases of hacking.