复现Windows Server服务RPC请求缓冲区溢出漏洞(MS08067)

0x00 前言

事情的起因是客户挺较真的,非得问这个漏洞有啥用。那能有啥用,拿shell获得控制权呗。但是又不能真这么讲,不然一准儿急眼。又不能在客户真实环境做复现(万一环境崩了呢),于是回来自己搭环境复现一下。

简单学习一下原理:

MS08-067漏洞是通过MSRPC over SMB通道调用Server程序中的**NetPathCanonicalize()** 函数时触发的。NetPathCanonicalize() 函数在远程访问其它主机时,会调用**NetpwPathCanonicalize()** 函数,对远程访问的路径进行规范化,而在**NetpwPathCanonicalize()**函数中发生了栈缓冲区内存错误(溢出),造成可被利用实施远程代码执行(Remote Code Execution)。

攻击者利用受害者主机默认开放的SMB服务端口445,发送特殊RPC(Remote Procedure Call,远程过程调用)请求,造成栈缓冲区内存错误,从而被利用实施远程代码执行。

0x01 环境准备

本次复现环境采用vmware16 安装 windows2003 sp2,使用的cdkey为:

复制代码
JK6JC-P7P7H-4HRFC-3XM7P-G33HM

过程中一直点下一步,直到出现登录界面时,需要特别记录。

其实这个就是ctrl+alt+del的组合。

密码,我也不知道密码啊,安装的时候也没让我输入啊。尝试admin,123456,root等等弱密码之后,灵机一动,直接点确定。果然......空口令。

坑:

当时我就迫不及待的回到攻击机去复现了,结果发现攻击失败,后来问了大佬才知道,得把防火墙关掉,虽然这个机器是新安装的还没有配置,也得先激活防火墙再关掉才行。

哦,对了,配置完防火墙记得重启服务器。

0x02 复现MS08067

准备工作已就绪,现在就开始吧。

首先用nmap对靶机进行端口扫描,通过学习原理可知,该漏洞利用的端口为445。已知服务器的IP为192.168.217.206,因此构造命令:

复制代码
nmap -A -T4 192.168.217.206 -p 445 --script smb-vuln-ms08-067 --open

简单说明一下这条命令:--script:使用脚本进行扫描,--open:仅显示打开(或可能打开)的端口。

回到metasploit,查找ms08067的攻击脚本。

使用use 0选择该脚本。show options 查看该脚本需要填写的内容。

这里面需要构造 rhost IP,使用set rhost 192.168.217.206进行填写。同时,由于已知系统版本(nmap扫描出来的),使用 show targets 查看可用的Exploit target。

这里根据系统选择SP2 简体中文。

差不多了,跑起来!

出现了meterpreter,查看一下基本信息。

输入shell进入cmd命令行。

查看开启的端口之后发现靶机并没有开启3389。

复制代码
echo reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server" /v fDenyTSConnections /t REG_DWORD /d 00000000 /f > C:\WINDOWS\system32\3389.bat && call 3389.bat

在连接远程桌面之前,先创建一个管理员用户。

windows哪里来的root嘛。

连接远程桌面。

终于来到登录界面。root:123456

亲切的界面。

0x03 总结

可以说,这个漏洞有了Metasploit之后上手没有门槛,万万没想到,花费最长时间的地方是尝试cdkey和猜密码。

另外,在远程登录服务器之前,我在meterpreter建立了一个名为test的文档,删不掉,改权限也删不掉,回到meterpreter还是删不掉。

远程桌面删不掉:

创建的root用户删不掉:

administrator删不掉:

meterpreter删不掉:

最后,重启也没删掉。。。。。。

相关推荐
CALL158119098457 分钟前
SVHC 247项与附录XVII限制物质,REACH测试项目有哪些?
运维·安全·安全性测试
言钰解珏8 分钟前
记一次自研ai扫描器漏洞能力检测到rce全过程
安全
小羊没烦恼!17 分钟前
如何在IIS6,7中部署ASP.NET网站?
数据库·后端·python·web安全·asp.net
钱栈up37 分钟前
电脑卡死7分钟,日志断在13:56:03:一次Windows硬挂死的根因复盘
windows
灯澜忆梦1 小时前
【Docker】#5 | 网络配置
网络·docker·容器
看着博客敲代码1 小时前
gobuster 报 the server returns a status code that matches 与 目录爆破用法
安全·网络安全·系统安全
小枣信安1 小时前
MCP安全系列之缺乏日志审计
安全·网络安全·ai安全·大模型安全·智能体安全·mcp安全
SGS官方2 小时前
SGS为紫光国芯颁发ISO 26262:2018汽车功能安全ASIL D流程证书
安全·汽车·检测认证机构·sgs
Xudde.2 小时前
PwnLab: init 靶机渗透测试(Vulnhub Writeup)
笔记·学习·安全·web安全
学逆向的2 小时前
C 数据溢出与精度丢失
c语言·开发语言·网络安全