IIS解析漏洞
IIS6.X
⽬录解析
在iis的⽹站根⽬录新建⼀个名为w.asp的⽂件

在x.asp中新建⼀个jpg⽂件,内容为<%=now()%> 的asp代码

在外部浏览器中访问windows2003的iis⽹站中的1.jpg 发现asp代码被执⾏

IIS7.X
在IIS7.0和IIS7.5版本下也存在解析漏洞,在默认Fast-CGI开启状况下,在⼀个⽂件路径/xx.jpg 后⾯加上/xx.php会将 /xx.jpg/xx.php 解析为 php ⽂件
利⽤条件:
1. php.ini⾥的cgi.fix_pathinfo=1 开启
2. IIS7在Fast-CGI运⾏模式下
环境配置:
在windows中安装IIS后在安装PHPstudy for IIS

配置 php.ini ⽂件,将 cgi.fix_pathinfo=1前用于注释的分号删掉,并重启

IIS --》 配置⽹站--》 处理程序映射--》 PHPStudy_FastCGI --》 请求限制 --》取消勾

开始使用
网站根目录下新建1.jpg

直接访问1.jpg

在1.jpg后加/.php

Nginx解析漏洞
nginx_parsing
进⼊Vulhub路径并开启容器

浏览器中访问⽹站

制作图⽚⻢并进⾏上传,获取上传⽂件地址


访问以下路径,利⽤Nginx解析漏洞
http://ip地址/uploadfiles/29a0252735b6f28bf3118a4136f69f90.jpg/.php

CVE-2013-4547
进⼊Vulhub路径并开启容器

直接上传 shell2.jpg 被拦截...修改⽂件后缀为.jpg进⾏上传且在后⾯添加空格;上传成功

在.jpg后⾯添加两个空格并给上 .php 后缀,在16进制修改中将原本两个空格的 0x20 0x20 修改为如下即 0x20 0x00 进⾏发包


访问上传后的⽂件....由于url会将其编码,需要继续抓包修改 0x20 0x20 为 0x20 0x00



Apache解析漏洞
apache_parsing
Apache HTTPD ⽀持⼀个⽂件拥有多个后缀,并为不同后缀执⾏不同的指令。
进⼊Vulhub路径并开启容器

访问靶机并上传 shell3.php.jpg ⽂件,⽂件内容为
<?php fputs(fopen("shell.php","w"),"<?php phpinfo();?>")?>

上传成功后与⽹站进⾏路径拼接

访问⽣成的shell.php并执⾏命令,执⾏成功。

CVE-2017-15715
Apache HTTPD是⼀款HTTP服务器,它可以通过mod_php来运⾏PHP⽹⻚。其2.4.0~2.4.29版本中存 在⼀个解析漏洞,在解析PHP时,1.php\x0A将被按照PHP后缀进⾏解析,导致绕过⼀些服务器的安全 策略
进⼊Vulhub路径并开启容器

在evil.php⽂件后⾯添加空格 0x20 在改为 0x0a 再次返送即可上传成功


访问上传的evil⽂件在后⾯加上 存在解析漏洞 %0a 再访问发现解析了其中的PHP代码,但后缀不是php说明

