freeBuf
主站

分类

云安全 AI安全 开发安全 终端安全 数据安全 Web安全 基础安全 企业安全 关基安全 移动安全 系统安全 其他安全

特色

热点 工具 漏洞 人物志 活动 安全招聘 攻防演练 政策法规

点我创作

试试在FreeBuf发布您的第一篇文章 让安全圈留下您的足迹
我知道了

官方公众号企业安全新浪微博

FreeBuf.COM网络安全行业门户,每日发布专业的安全资讯、技术剖析。

FreeBuf+小程序

FreeBuf+小程序

0

1

2

3

4

5

6

7

8

9

0

1

2

3

4

5

6

7

8

9

0

1

2

3

4

5

6

7

8

9

0

1

2

3

4

5

6

7

8

9

0

1

2

3

4

5

6

7

8

9

0

1

2

3

4

5

6

7

8

9

IIS6.0渗透,从基础环境搭建开始
K1 2021-05-31 01:24:51 165608

*严正声明:本文仅限于技术讨论与分享,严禁用于非法途径。

IIS

IIS从1.0-10.0之间共有12个版本,1.0-4.0已基本退出市场,6.0-10.0居多。IIS7.5、IIS8.5以及IIS10.0、IIS6.0是目前使用最多的版本.

IIS版本对应的Windows系统版本如下:

1.png

IIS6.x渗透

准备环境:Windows server 2003 IP:192.168.173.194

2.png

接下来先搭环境

3.png4.png

双击这里,进去之后点确定,默认选中的那三个,接着点击确定

5.png6.png

点击下一步之后,出现了报错,这代表操作系统无法找到可用的iis6.0安装包,这里把现有的iis6.0安装包拖到虚拟机中即可,点击确定进到下一步

7.png

点击浏览,点击到上传的安装包目录下后,会自动选择到那个文件,默认点确定

8.png9 - 副本.png
10 - 副本.png

然后依然有报错,重复刚刚的步骤,直到出现完成的页面,即为环境部署成功,此时管理工具中会生成iis管理器,双击打开如图所示。

11.png12.png13.png14.png15.png16.png

此时可见计算机80端口已经打开

17.png

这里写了个asp页面测试一下,发现一直访问不了

18.png

网上搜了一下得知Windows Server 2003 安装完 IIS 6后,还需要单独开启对于 ASP 的支持,选择允许即可。

19.png
20.png

IIS写权限漏洞,该漏洞的前提有三个1.开启了WebDAV 2.默认网站属性开启写入状态(其中红框里面必选,这里踩过雷,所以强调一下) 3.权限开启允许来宾访问写入,然后关闭项目重新启动;

21.png
22.png33.jpg
34.jpg23.jpg

此时再开一个Windows7的环境搭IIS7.x IP:192.168.173.196

24.jpg25.jpg

此时查看2003虚拟机是否存在写入权限的漏洞,我们需要两个工具。

26.png

因为win2003的WebDAV已经开启,此时在win7上用IISPutScanner扫描2003的虚拟机是可以扫描出该机存在写入权限的,如果win2003未开启WebDAV,则put处会显示为NO。

27.png28.png

接下来使用iiswrite工具,进行写入操作;

29.png30.png

在桌面新建文件,写入一句话,并在工具中选中这个文件,不要忘记修改域名和请求文件,这里我们放入IP即可,点击提交数据包;

31.png32.png
35.jpg

2003机子上已成功写入1.txt;

36.jpg

点击move,相当于修改1.txt名为shell.asp;

37.png
38.png
39.png

此时用蚁剑或者菜刀连接,如图所示,成功进入;

40.png
41.png

到此,文件写入漏洞即复现完,满足上面三个条件即可成功写入,因此防御的方法也同样可以得知:关闭WebDAV或者关闭写权限即可;

文件解析漏洞 条件:ii6.0的服务器开启Active Server Pages服务拓展;iis10.0和iis8.5都有可能产生这个漏洞,属于PHP版本解析漏洞

*.asp;.jpg 像这种畸形文件名在“;”后面的直接被忽略,也就是说当成 *.asp文件执行。

接下来演示一遍,首先在Win2003目录下创建一个asp文件;

44.png
42.png
43.png

这时对asp文件更改后缀名,会发现它依然可以访问,这里对文件直接复制粘贴更改后缀;

45.png
46.png
47.png

这里拿上文的shell脚本来测试一波,对其更改后缀名,蚁剑也可成功上线;

48.png
49.png
50.png

iis目录解析:以*.asp命名的文件夹里的文件都将会被当成ASP文件执行。

演示一下 首先在网站目录下建一个.asp的文件夹;

51.png

并在里面拉一个写有一句话木马的图片,此时访问仍然可以正常解析,蚁剑也可连接;

52.png
53.png
54.png

iis6除了会将扩展名为.asp的文件解析成asp文件之外,还默认会将.asa、.cdx、.cer解析成asp;这里可以从默认网站属性->主目录->配置中可以看出,他们均是调用的asp.dll进行的解析(畸形解析)

55.png

iis短文件漏洞:此漏洞实际是由HTTP请求中旧DOS 8.3名称约定(SFN)的代字符(~)波浪号引起的。它允许远程攻击者在Web根目录下公开文件和文件夹名称(不应该可被访问)。攻击者可以找到通常无法从外部直接访问的重要文件,并获取有关应用程序基础结构的信息。

iis短文件名的特征:

56.png

目前IIS支持短文件名猜测的HTTP方法主要包括:DEBUG、OPTIONS、GET、POST、HEAD、TRACE六种,经千里目实验室验证,IIS 8.0、IIS 8.5和IIS 10.0的短文件名称均可以通过OPTIONS和TRACE方法被猜测成功。

iis8.0以下的版本复现条件是需要开启asp.net支持;

57.png58.png

新建一个zcc.aspx,写入一句话,能看到它也是一个短文件;

59.png

这时可以对文件名进行一级级爆破,文件名存在即返回404,不存在会返回400或者bad request页面;此漏洞只能确定前六个字符,太长或者存在特殊字符会很难猜解;

60.png
61.png

这里存在爆破的exp,需要在python2环境下使用,这里在window7环境中安装好python环境和Java7,安装步骤就不放了;

工具链接:https://github.com/irsdl/IIS-ShortName-Scanner

62.png
63.png

下载好工具后,双击run.bat,输入要爆破的网址,默认回车,即可进行爆破;

64.png
65.png
66.png

修复改漏洞的方式:1) CMD关闭NTFS 8.3文件格式的支持

举例:(1代表关闭,0代表开启)

Windows Server 2008 R2:

查询是否开启短文件名功能:fsutil 8dot3name query

关闭该功能:fsutil 8dot3name set 1

Windows Server 2003:

关闭该功能:fsutil behavior set disable8dot3 1

不同系统关闭命令稍有区别,该功能默认是开启的,对于大多数用户来说无需开启。

2) 修改注册表禁用短文件名功能

快捷键Win+R打开命令窗口,输入regedit打开注册表窗口找到路径:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem,将其中的 NtfsDisable8dot3NameCreation这一项的值设为 1,1代表不创建短文件名格式

67.png

修改完成后,需要重启系统生效

注:此方法只能禁止NTFS8.3格式文件名创建,已经存在的文件的短文件名无法移除,需要重新复制才会消失。

以下两种方法仅适用于缓解GET方法,其他方法依旧可以猜解。

3) 关闭Web服务扩展- ASP.NET

4) 升级netFramework至4.0以上版本

RCE-CVE-2017-7269 IIS6.0远程代码执行漏洞复现

条件:Windows 2003的IIS6.0开启WebDAV服务;

68.png

exp下载链接:https://github.com/edwardz246003/IIS_exploit/blob/master/exploit.py

修改exp之后运行,可看到win2003任务管理器开启了calc.exe进程,这里因为是网络权限打开,所以桌面看不见:

69.png
70.png
71.png
72.png

从利用条件也不难看出,此漏洞的防御措施为关闭WebDAV服务即可;

接下来实现一下如何利用此漏洞上线对方电脑

测试环境:攻击机:kali 192.168.173.199 靶机还是win2003

exp下载链接:https://github.com/zcgonvh/cve-2017-7269

73.png

注意模块的命名名称,下载之后将其名字中的横线改成下划线;并将其放入kali攻击机器的/usr/share/metasploit-framework/modules/exploits/windows/iis目录下;

74.png
75.png

可以看见已经写入,直接执行;

76.png
77.png

这里发现失败了;看师傅文档发现靶机这里默认网站->属性,ip分配这里默认的未分配,即非默认绑定,而该exp只适合默认绑定和默认路径的情况下使用,这里对其进行更改,改完重启系统,重新运行exp,可成功执行,不过这里可以看出是一个低权限用户;

78.png
79.png

这里可以使用pr.exe进行提权,利用meterpreter上传pr.exe;

80.png
81.png
82.png

进到shell界面,发现成功上传了pr.exe,然后创建用户并加入管理员组;

83.png84.png85.png

可看见成功创建了zcc用户并加入administrator组。

# iis # IIS6
免责声明
1.一般免责声明:本文所提供的技术信息仅供参考,不构成任何专业建议。读者应根据自身情况谨慎使用且应遵守《中华人民共和国网络安全法》,作者及发布平台不对因使用本文信息而导致的任何直接或间接责任或损失负责。
2. 适用性声明:文中技术内容可能不适用于所有情况或系统,在实际应用前请充分测试和评估。若因使用不当造成的任何问题,相关方不承担责任。
3. 更新声明:技术发展迅速,文章内容可能存在滞后性。读者需自行判断信息的时效性,因依据过时内容产生的后果,作者及发布平台不承担责任。
本文为 K1 独立观点,未经授权禁止转载。
如需授权、对文章有疑问或需删除稿件,请联系 FreeBuf 客服小蜜蜂(微信:freebee1024)
被以下专辑收录,发现更多精彩内容
+ 收入我的专辑
+ 加入我的收藏
相关推荐
K1 LV.5
干啥啥不行 干饭第一名
  • 28 文章数
  • 207 关注者
Apache Log4j2远程代码执行漏洞复现
2021-12-12
泛微e-office文件上传漏洞(CNVD-2021-49104)
2021-11-29
Apache Druid LoadData 任意文件读取 CVE-2021-36749
2021-11-22