文件上传漏洞利用与防御

文件上传漏洞利用与防御

文件上传漏洞

用户上传了一个可执行的脚本文件,并通过这个脚本文件获得了执行服务器端命令的能力

  • 漏洞危害
    挂黑链提高网站权重
    占用服务器cpu进行挖矿
    网站源码泄露
  • 漏洞利用
    1.找到上传点
    2.绕过校验上传文件
    3.获得文件位置
    4.文件可被访问、执行或包含
  • 漏洞防御
    扩展名黑白名单
    MIME类型校验
    文件头校验
    文件内容二次渲染
    上传的文件重命名
    不回显上传位置
    禁用上传文件的执行权限

文件上传绕过

  1. 前端JS校验绕过
    F12删除校验动作;通过bp抓包修改文件后缀;禁用网站JS
  2. MIME类型绕过
    bp抓包修改content-type,改为image/jpeg等白名单图片类型
  3. 等价扩展名绕过黑名单
    asp:asa,cer,cdx
    aspx:ashx,asmx,ascx
    php:php2,php3,php4,php5,phps,phtml
    jsp:jspx,jspf
  4. 上传配置文件绕过黑名单
    上传.htaccess将x.jpg文件解析成php文件
<FilesMatch "x.jpg">
SetHandler application/x-httpd-php
</FilesMatch>
  1. 扩展名大小写绕过黑名单
  2. 扩展名末尾加空格绕过黑名单
    windows操作系统会自动删除空格,bp抓包给文件扩展名添加空格
  3. 扩展名末尾加点绕过黑名单
    windows操作系统会自动删除点,bp抓包给文件扩展名添加.
  4. 扩展名末尾加::$DATA绕过黑名单
    windows操作系统自动去掉不符合规则符号后面的内容,bp抓包给文件扩展名添加::$DATA
  5. 多重点空格绕过黑名单
  6. 双写扩展名绕过黑名单
  7. 文件名截断绕过
    url编码使用%00截断后面的文件名,上传文件1.jpg,请求路径./upload/1.php%00
    bp抓包查看hex添加16进制00截断后面的文件名,上传文件1.jpg,请求路径./upload/1.php+,查看hex中+位置将2b修改为00
  8. 图片马绕过
    合成图片马copy 1.gif /b + shell.php /a shell.gif,绕过文件头检测,配合文件包含漏洞可执行命令
  9. 图片二次渲染绕过
    查看渲染后的文件内容没有更改的位置插入木马
  10. 条件竞争
    bp抓包Intruder模块不断发包,上传一个运行能产生木马的文件,不断的访问该文件直至生成木马文件
  11. 中间件解析漏洞
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值