文件上传漏洞类型汇总(详细)

文件上传漏洞类型汇总

首先看看文件上传的过程(微圆框代表可执行漏洞)

在这里插入图片描述

类型:

1.无限制:

(1)直接用1.php放一句话木马上传

2.绕过前端:

(1)Javascript绕过:

  • 浏览器设置中选择禁用javascript即可

(2)抓包修改:

  • burpsuite抓包后修改filename

3.绕过服务端:

(1)黑名单绕过:

  • 例如:不允许php,jsp文件上传,则使用1.php3,1.php5等上传

(2)白名单绕过:

  • 例如:允许图片只允许jpg,则抓包改后缀改php为jpg

(3)MIME绕过:

  • MIME通过通过检查http包的Content-Type字段来判断上传文件是否合法,所以把类型改成允许上传的格式即可
    在这里插入图片描述

(4)文件头欺骗:

  • 例如:只允许jpg上传,且文件头必须符合jpg格式。则使用含有jpg文件头的一句话马上传即可

(5)解析漏洞:

  • apache解析漏洞:
    • .apache文件解析规则:文件从右向左判断,后缀名不认识则继续识别,直到寻找到可以识别的文件名,如果都不能识别则暴露源码。
    • 则可以这样定义:1.php.qwe.asd绕过文件识别
  • IIS解析漏洞:
    • 原理: IIS中建立.asa,.asp文件时,其目录下的所有文件都会被当成asp文件解析
    • 方法:在1.asp文件夹中放个1.txt文件,内容为<%=now()%>,则1.txt文件就会被当成脚本解析
  • Nginx解析漏洞
    • 方法:在下面这个链接中,此时1.jpg会被当成1.php解析,但是3.php不存在,则可以在1.jpg中放php木马获得webshell
 http://....../1.jpg/3.php

4.其他(主要是懒得归类了)

1-大小写绕过

  • 如果禁止php文件上传,把文件名改成pHp,PhP等绕过

2-00截断绕过

  • 利用解析漏洞,利用00字符截止判断,例如1.php%00.jpg,或者1.php0x00.jpg

3-.htaccess绕过

  • .htaccess是apache配置文件,提供自定法则让服务器运行,例如如下1.htaccess文件,上传后再上传1.png即可获得webshell
<FilesMatch "jpg">
 SetHandler application/x-httpd-php
</FilesMatch>
#进行文件名的正则匹配,服务器会对文件名为1.png当做php解析

4-双写绕过

  • 如果禁止php文件上传,把文件名改成1.phphpp即可,其中中间的php过滤掉后仍可成功上传

5-点绕过

  • 如果服务器开启了黑名单过滤,则可采用1.php.的方式(仔细看有两个点)绕过并解析

6-二次渲染绕过

  • 有些网站会使用二次渲染清除恶意代码,使上传的一句话木马失效
  • 方法:做图片马,上传后发现被清除,下载源码和上传的进行比较,发现未被渲染的字段之后把一句话马放到未被渲染的字段即可获得webshell

::$DATA绕过

在1.php后加上::$DATA
1.php-->1.php::$DATA
  • 5
    点赞
  • 28
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值