文件解析漏洞详解
文件解析漏洞详解
IIS解析漏洞
环境安装
windows2003+iis6
IIS6.X
⽬录解析
在iis6.x中,.asp⽂件夹中的任意⽂件都会被当做asp⽂件去执⾏。
在iis的⽹站根⽬录新建⼀个名为x.asp的⽂件
在x.asp中新建⼀个png⽂件。内容为<%=now()%> asp代码。
外部浏览器中访问windows2003的iis⽹站中的1.png 发现asp代码被执⾏
将1.png⽂件放到⽹站根⽬录下访问,发现其中的asp代码没有被解析。 由此可⻅.asp⽂件夹中的任意 ⽂件会被当做asp⽂件去执⾏
畸形⽂件解析
在IIS 6 处理⽂件解析时,
分号可以起到截断的效果。
333.asa;.jpg会被服务器看成是333.asa
IIS7.X
在默认Fast-CGI开启状况下,在⼀个⽂件路径/xx.jpg 后⾯加上/xx.php会将
/xx.jpg/xx.php
解析为 php ⽂件
利⽤条件
php.ini⾥的cgi.fix_pathinfo=1 开启
IIS7在Fast-CGI运⾏模式下
安装PHPstudy for IIS
打开电脑iis和cgi
将php.ini⾥的cgi.fix_pathinfo=1 开启
IIS7在Fast-CGI运⾏模式下
访问网页
Nginx解析漏洞
nginx_parsing
1.进⼊以下Vulhub路径并开启容器
cd /nginx/nginx_parsing_vulnerability
docker-compose up -d
2.浏览器中访问⽹站
3.制作图⽚⻢并进⾏上传
4.利用nginx解析漏洞,访问路径
5.运用蚁剑连接
CVE-2013-4547
1.使⽤以下命令启动靶机
cd vulhub-master/nginx/CVE-2013-4547x //
切换到靶机⽬录
docker-compose up -d //
打开环境
2.浏览器访问网站
上传文件内容为“
')?> ”
直接上传
shell.php
被拦截,修改⽂件后缀为.jpg进⾏上传且在后⾯添加空格,上传成功
运用bp进行抓包处理
**在.jpg后⾯添加两个空格并给上
.php
后缀,在16进制修改中将原本两个空格的
0x20**
**0x20
修改为如下即
0x20 0x00
进⾏发包**
**访问上传后的⽂件….由于url会将其编码,需要继续抓包修改
0x20 0x20
为
0x20 0x00**
访问生成的木马文件
3.用蚁剑连接
Apache解析漏洞
apache_parsing
1.进⼊Vulhub靶场并执⾏以下命令启动靶场
cd
/
vulhub
/
httpd
/
apache_parsing_vulnerability
docker
compose
up
d
2. 访问靶机并上传 shell.php.jpg ⽂件,⽂件内容为
')?>3.运用蚁剑连接
CVE-2017-15715
1.进⼊Vulhub靶场并开启⽬标靶机,进⾏访问
启动靶机
cd
/
Vulnhub
/
vulhub
master
/
httpd
/
CVE
2017
15715
docker
compose
up
d