文件解析漏洞(IIS,Nginx,APACHE)

一、IIS解析漏洞

IIS6.X

环境:windows server 2003

目录解析

添加IIS服务器

点击添加/删除windows组件,然后找到应用程序服务器双击点开,勾选ASP后安装

安装后打开IIS信息服务管理器,WEB服务扩展全部改为允许

在网站目录新建文件夹为1.asp(注意是文件夹),在该文件夹下新建文件为1.txt,内容为

<%=now()%> ----可以显示当前时间

物理机访问IP/1.asp/1.txt,发现asp代码执行成功

分号截断解析

在IIS 6处理文件解析时,分号可以起到截断的效果。 1.asp;.jpg会被服务器看成是1.asp

在网站根目录下创建1.asp;.jpg文件,内容同上

物理机访问,发现执行成功

IIS7.X

在该版本下也存在解析漏洞,在默认Fast-CGI开启状况下,在一个文件路径/xx.jpg后面加上/xx.php会将/xx.jpg/xx.php 解析为 php 文件。

利用条件

1.php.ini里的cgi.fix_pathinfo=1 开启

2.lIS7在Fast-CGl运行模式下

环境配置

步骤一:在自己电脑或虚拟机中安装PHPstudy for IIS

步骤二:配置php.ini文件,将cgi.fix_pathinfo=1前的 ;删掉保存并重启

步骤三:lIS -->配置网站-->处理程序映射-->PHPStudy_FastCGl -->请求限制 -->取消勾选

步骤四:利用方法

在根目录下创建名为1.jpg的文件,内容如下

<?php phpinfo();?>

物理机访问该文件,在文件后加/.php,访问成功

二、Nginx解析漏洞

1.nginx_parsing

这个解析漏洞是PHP CGI的漏洞,在PHP的配置文件中有一个关键的选项 cgi.fix_pathinfo 默认是开启的,当URL中有不存在的文件,PHP就会向前递归解析。在一个文件/xx.jpg后面加上/.php会将 /xx.jpg/xx.php 解析为 php 文件

利用条件

Nginx <=0.8.37

cgi.fix_pathinfo=1  开启

利用方式

步骤一:浏览器中访问vulhub靶场网站

步骤二:制作图片马并进行上传,获取上传文件地址

没有上传成功,说明我们的PHP代码被检测到了,所以我们需要加一个图片的文件头。

再次上传发现成功

访问以下路径,利用Nginx解析漏洞http://IP/uploadfiles/468f61d0b18f70220b7a5628531d8666.jpg/.php

步骤三:复制上面链接,利用蚁剑连接,连接成功

2.CVE-2013-4547

该漏洞在上传图片时,修改其16进制编码可使其绕过策略,导致解析为php文件

影响版本

Nginx 0.8.41 ~ 1.4.3 / 1.5.0 ~ 1.5.7

利用方法

步骤一:浏览器中访问网站

步骤二:因为我们上传php文件会被拦截,所以在.jpg后面添加两个空格并给上.php后缀,上传时进行抓包,在16进制修改中将原本连个空格的0x20 0x20修改为0x20 0x00进行发包

得到文件地址,访问上传的文件

步骤三:由于url会将其编码,需要继续抓包修改0x20 0x20为0x20 0x00(将原来的%20%20删除,改成两个空格)

步骤四:访问写入的8888.php,访问成功,使用蚁剑连接

三、Apache解析漏洞

1.apache_parsing

在Apache1.x/2.x中apache解析文件的规则是从右到左开始判断解析,如果后缀名为不可识别文件解析,就再往左判断

利用方法

步骤一:访问靶机并上传1.php.jpg文件,代码如下

<?php phpinfo();?>

得到上传路径为/uploadfiles/1.php.jpg

步骤二:与网站进行路径拼接,进行访问,执行成功

2.CVE-2017-15715

Apache HTTPD是一款HTTP服务器,它可以通过mod_php来运行PHP网页。其2.4.0~2.4.29版本中存在一个解析漏洞,在解析PHP时,1.php\x0A将被按照PHP后缀进行解析,导致绕过一些服务器的安全策略

影响版本

2.4.0~2.4.29

利用方法

步骤一:浏览器访问网站

步骤二:尝试上传一句话木马文件,发现被拦截

步骤三:进行抓包,在1.php文件后面添加空格0x20在改为0x0a再次返送即可上传成功

步骤四:访问上传的1.php文件在后面加上%0a,页面没有卡顿说明访问成功,使用蚁剑进行连接,成功

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值