zoukankan      html  css  js  c++  java
  • 文件上传案例

    1. 1.       前台脚本检测扩展名

    我们可以查看一下网页源代码,看扩展名是否在前端有显示。

    是的话,我们就可以上传一个扩展名为.jpg(等图片的扩展名)利用burpsuite,修改扩展名为.php,会成功上传

    1. 2.       服务器验证content-type检测文件类型

    上传一个.php文件,利用burpsuite改content-type类型为image/jpeg

     

    1. 3.       服务器端验证文件扩展名

    1*(在apathe低版本2.0 -2.2的情况可以执行)

    上传一个文件扩展名不存在的文件,比如1.php.aaa,在通过其他的手段改成.php的可执行的扩展名

    2*使用00截断(在一些情况下,因为函数的原因,会导致00截断不能成功绕过)

    上传文件名为1.phpp.jpg,通过burpsuite修改1.phpp.jpg中的p的十六进制为70改为00

    1. 4.       服务器端验证图片文件头

     

     实验:我们使用一个真的11.php文件,修改扩展名为11.jpg

                  一个真的图片,1.jpg

    将两个都分别上传,结果会发现真图片可以上传,而修改的.php文件却不能

    原因就是服务器验证了图片的文件头,可以使用winhex软件进行查看

     

     

     是因为getiamgesize()函数检测过滤了

    解决方法

    第一步:将一句话代码嵌入到图片中,构造图片马,上传图片

    第二步:通过解析漏洞或其他的方法将jpg还原为可执行文件

    Iis6.0解析漏洞

    目录解析:

    在网站下建立文件夹名字为.asp/.asa的文件夹,在其目录中的任何扩展名的文件都被、iis当做.asp文件来解析并执行

    利用方法:建目录a.asp,目录中a.asp/a.jpg将会被按照正常的asp文件进行解析

    文件解析:

    在iis6.0下,分号后面的不被解析,如a.asp;.jpg会被当做a.asp

    利用方法:上传文件名为xx.asp;.jpg格式

    Iis6.0默认的可执行文件除了asp还包含(常用来绕过黑名单检测)

    .asa   .cer   .cdx

     

    Apache  2.0-2.2

    未知扩展名解析漏洞

     Apache是从右往左开始判断文件扩展名来解析文件,如果文件扩展名不被识别,就在往左判断,直到可以识别为止

    举个例子:abc.php.aaa这个.aaa是apathe不可识别解析的,它就会往前判断直到识别.php时,会将这个文件解析为abc.php文件

    .htaccess配置文件(iis平台上不存在该文件)

     负责某一个目录下的网页配置,通过.htaccess可以实现分布式的配置

    比如:网页301重定向、自定义404错误页面、改变文件扩展名、允许/阻止特定用户或者目录的访问、禁止目录列表、配置默认文档等功能

    Apache .htaccess配置文件的解析利用

    1.       建立.htaccess文件,写入 AddType application/x-httpd-php  .jpg

                             可以实现将.jpg的文件按照php解析执行

    2.将木马上传.htaccess到服务器的目录(在同目录或者子目录都可)

    3.上传.jpg的图片马,访问图片即可执行

     

    Nginx解析漏洞

    1. 低版本(0.5、0.6、0.7<=0.7.65、0.8<=0.8.37)的Nginx可以在任意文件名后面添加%00.php进行解析攻击       abc.txt%00.php
    2. 对于任意的文件名,在后面添加斜杠+某某某.php的解析漏洞(本质与nginx无关)

    如:test.jpg/abc.php

    漏洞场景:iis+php    nginx+php

     

     一些开源的文件编辑器可会有自身的漏洞,一般写博客什么的都会有上传图片功能,这些地方也可能会有文件上传漏洞

  • 相关阅读:
    win10 UWP button
    内网分享资源
    内网分享资源
    CF724F Uniformly Branched Trees
    win10 UWP FlipView
    win10 UWP FlipView
    win10 UWP FlipView
    搭建阿里云 centos mysql tomcat jdk
    搭建阿里云 centos mysql tomcat jdk
    win10 UWP 申请微软开发者
  • 原文地址:https://www.cnblogs.com/7-58/p/12863163.html
Copyright © 2011-2022 走看看