01-无检测_IIS_PUT

一、环境设置

IIS 6.0 默认网站 服务器自身问题

如下界面:

image

二、测试过程

1、使用burp抓包测试

将GET 改为 OPTIONS,发现几乎所有的HTTP方法都可用,尤其是使用put方法

image

2、使用IIS PUT Scaner扫描

image

3、使用isswrite工具写写入一句话

3.1下面出了个问题,写入文件失败:显示未授权

image

3.2将文件目录权限更改后可成功上传(主要是练习使用)

image

上传成功

image

4、使用move方法更改文件后缀

更改刚刚提交的txt位asp,将文件变成可执行的脚本文件。

image

5、菜刀连接

5.1菜刀连接成功

image
5.2菜刀提权失败

image

5.3菜刀->右键上传文件->上传大马

image

6、提权

6.1通过菜刀上传大马后输入密码连接上,查看 组件支持

image

6.2 脚本探测

image

6.3 可读可写目录

image

6.4尝试执行CMD命令

image
CMD2执行命令失败

image

6.5上传自己的cmd.exe

C:\WINDOWS\Temp\Cmd.exe

image

替换为我们上传的cmd.exe路径,执行命令 whoami
如下显示说明是网络用户

image

6.6查看该主机信息

systeminfo 查看操作系统版本信息、目录信息、补丁信息

image

image
用户信息 net user

image

进程服务信息 tasklist /svc
image

image

端口开放信息 netstat -ano
image

6.7 使用pr提权

注:KB952004、KB956572、KB970483这三个补丁,如果没有,第一个是pr提权,第二个是巴西烤肉提权,第三个是iis6.0提权

6.7.1添加用户,并提升为管理员权限

添加用户 net user username passwd /add 执行失败

image

6.7.2上传pr.exe

注:找到可读可写的目录,注意不要包含空格,exp后缀可更改。

C:\inetpub\wwwroot\pr.com

image

6.7.3上传成功后,执行该文件后面加上命令如下:
C:\inetpub\wwwroot\pr.com "whoami"

image

image

6.7.4添加新用户并添加进管理员组

(注:执行不成功多试几次、管理员用户组名可能更改了)

net user test test123456 /add 添加用户名为test,密码为test123456
net user test$ test123456 /add 添加隐藏用户(命令行不可见,用户管理可见,更进一步修改注册表,用户管理不可见,注册表可见)
net user test /del 删除用户test
net localgroup administrators test /add 将test添加到管理员组
net localgroup administrators  查看管理员用户组成员

image

image
运行 compmgmt.msc 计算机管理查看 已经添加 test 用户

image
添加到管理员组

image
image

8.8 开启3389 ,远程连接

8.8.1查找3389端口 注册表读取

image

8.8.2开3389,直接上传开启3389的批处理

c:\inetpub\wwwroot\3389.bat

image
pr执行

image

查看端口开放情况,已开启3389

image

8.9 远程连接

test test123456

192.168.16.128 3389
image
image

总结:

1、漏洞原理:

服务器开启了webdav的组件导致的可以扫描到当前的操作,
具体操作可以通过webdav的OPTION来查询是否支持PUT。

2、利用方法:

使用ISS PUT Scanner 扫描目标网段,找到后使用 isswrite的put写入一句话,
再使用move将一句话的后缀改为可解析的。

3、提取

上传cmd.exe,再上传pr.exe进行pr提权,使用pr添加具有管理员权限的用户。
上传开启3389的批处理文件,使用pr执行,开启3389,远程连接。

参考

https://www.cnblogs.com/tdcqma/p/6125789.html

https://www.2cto.com/article/201307/228165.html