Metasploit is one of the most powerful exploit tools. Most of its resources can be found at: Metasploit. It comes in two versions: commercial and free edition. There are no major differences in the two versions, so in this tutorial, we will be mostly using the Community version (free) of Metasploit.
As an Ethical Hacker, you will be using “Kali Distribution” which has the Metasploit community version embedded in it along with other ethical hacking tools. But if you want to install Metasploit as a separate tool, you can easily do so on systems that run on Linux, Windows, or Mac OS X.
The hardware requirements to install Metasploit are:
- 2 GHz+ processor
- 1 GB RAM available
- 1 GB+ available disk space
Mostly Metasploit is used from terminal. In order to open it simply execute the following command:
After Metasploit starts, you will see the below screen. Highlighted in red is the version of Metasploit.
Exploits of Metasploit
From Vulnerability Scanner, we found that the Linux machine that we have for test is vulnerable to FTP service. Now, we will use the exploit that can work for us. The command is:
$ msf > use exploit/path
The screen will appear as follows:
Then type msf > show options in order to see what parameters you have to set in order to make it functional. As shown in the following screenshot, we have to set RHOST as the “target IP”.
We type msf > set RHOST 192.168.1.101 and msf > set RPORT 21
Then, type msf > run. If the exploit is successful, then it will open one session that you can interact with.
Payload, in simple terms, are simple scripts that the hackers utilize to interact with a hacked system. Using payloads, they can transfer data to a victim system.
Metasploit payloads can be of three types:
- Singles: Singles are very small and designed to create some kind of communication, then move to the next stage. For example, just creating a user.
- Staged: It is a payload that an attacker can use to upload a bigger file onto a victim system.
- Stages: Stages are payload components that are downloaded by Stagers modules. The various payload stages provide advanced features with no size limits such as Meterpreter and VNC Injection.
Payload Usage − Example
We use the command show payloads. With this exploit, we can see the payloads that we can use, and it will also show the payloads that will help us upload / execute files onto a victim system.
To set the payload that we want, we will use the following command:
$ msf > set PAYLOAD payload/path
Set the listen host and listen port (LHOST, LPORT) which are the attacker IP and port. Then set remote host and port (RPORT, LHOST) which are the victim IP and port.
When you are ready, simply type “exploit” in order to create a session if the targeted host is vulnerable to the exploit you selected.