本篇文章将会从文件上传漏洞的基本概念讲起,然后去了解在文件上传中我们的网站都有哪些检测机制,如何去绕过这些检测机制,最后是如何去修复文件上传漏洞。

参考靶场:upload在github上搜索即可在本地搭建。

一、什么是文件上传?

大家duck不必把文件上传漏洞看的高深莫测,因为我们经常做一些文件上传的操作,就比如你发一个qq空间,发个朋友圈,在上面上传的图片就属于文件上传,只不过可能没有漏洞罢了。

比如这就是一个上传文件的窗口

二、知道了什么是文件上传,那么文件上传漏洞又是什么?

上传文件时服务器后端语言没有对上传的文件进行严格的验证和过滤,容易造成上传任意文件的情况,从而使得攻击者绕过上传机制上传恶意代码并执行控制服务器。

恶意代码文件就是php asp aspx jsp等,也被称为webshell。

本篇文章主要以php语言中的一句话木马进行介绍,比如

<?php eval($_POST['a']);?>

三、可以利用这个文件上传漏洞有哪些前提条件嘞?

  1. 首先这个包含一句话木马的文件可以上传

  2. 上传之后我知道这个文件的位置,也就是他的文件路径

  3. 然后这个文件路径可以正常访问

  4. 最后这个文件可以被解析,就是里面的内容。

四、服务器去检测我们上传的文件有哪些机制?

网络中的攻防,也要做到知己知彼,只有知道对方有哪些武器,我们才能更好的去应对。

为了各位更好的理解层次之间的关系,采用了脑图的呈现方式,主要就是包括客户端检测和服务端检测,在服务端检测中有文件后缀检测(黑名单检测,白名单检测),内容检测,MIME类型检测。下面将会围绕这些检测机制逐步展开讲解。

五、客户端检测是?

这是最容易绕过的一种检测机制,可能在现实生活中没有公司会用吧。主要来讲就是根本不会上传到服务端,在客户前端就完成了检测。

想要绕过也很简单,如果你是edge浏览器在设置里面把JavaScript检测关闭就好,在火狐中我是没找到关闭的地方,下了一个插件,也是可以关闭的。关闭之后相当于没有了检测机制,现在就可以上传任意文件了。

六、文件后缀检测是?

首先我们介绍比较容易绕过的黑名单检测机制。

黑名单也是比较容易理解,整个的流程用一个真实的例子就可以理解,比如说你和你女朋友分手了,女朋友很伤心,再也不想联系到你,所以她把你的手机号拉黑了,现在你再给你女朋友打电话还能接通吗?想都别想,根本不可能嘛,但是如果你真的渴望女朋友还能再给自己一次机会,你会怎么做?如果你想到了办法,那么恭喜你,你已经掌握了黑名单绕过的基本原理。肯定是去借一个别人的手机号,不管女朋友答不答应,起码手机号是可以接通了对吧。

基于这种情况,你打给女朋友不接通,别人打过去就可以接通,证明确实存在着黑名单这种情况,在我们网络世界那便是,你上传一个.php后缀的文件人家服务器拒绝你,但是你随便上传一个.lalala,哎,服务器竟然通过了,这就是黑名单检测。

下面我们要做的就是怎么挽回女朋友了哈哈(开个玩笑, 还是得想办法绕过这个黑名单的控制。

1.双写绕过

我上传了testconnect.php文件后在burpsuite中竟然给我把php抹了

好吧,你也暴露了嘿嘿,这个时候我们改成testconnect.pphphp就可以成功上传了。

2.大小写绕过,仅限Windows

改成testconnect.Php就OK,因为服务器会把php替换为空,但是Php有个大写嘛,就把他骗了呗,但是解析执行的时候,我们的Windows又不区分大小写,嘿嘿,搞定。

这是替换为空的代码原理,可以参考一下哈。

3.其他可解析绕过

这个比较容易理解,还是拿女朋友来讲(虽然没有女朋友,现在发现女朋友真的发挥了好大作用hahaha~),现在尽管女朋友把你的手机号拉黑了,但是,万一我有两个手机号嘞,她只拉黑的一个,我的其他的是不是可以打通,正是这种道理我们的php也有挺多别的手机号喔。

4.最后一个方法我们是浅浅打一套组合拳了,图片加配置文件绕过

绕过思路,先上传一个解析器,再把代上传的一句话木马按照指定的png方式进行上传,但是,我们提前上传的解析器会把这个png的文件解析。

关于解析器的操作:就是写一个.htaccess文件,女朋友应该不知道还有这种陌生号码吧,如果真知道,那么兄弟还是放弃吧,我黑名单检测绕过只能到这了哈哈。

在这个.htaccess文件中需要有以下内容

<FilesMatch "target.png">

setHandler application/x-httpd-php //自动转化为php文件

</FilesMatch>

现在把含有一句话木马的文件名,一字不差的改成target.png,上传成功,就可以成功上传webshell啦!

以上就是黑名单检测我所学的全部内容了,如有不当之处,欢迎大佬师傅们的指正,后续检测机制的介绍敬请期待!

我是哈皮,祝您每天嗨皮,我们下期再会!

01文件上传漏洞(黑名单检测篇)相关推荐

  1. 网络安全课第七节 文件上传漏洞的检测与防御

    13 文件上传漏洞:种植服务器木马的捷径 上一讲介绍过反序列化漏洞,利用漏洞常可以造成执行代码的严重后果. 从本讲开始将介绍文件上传漏洞,它比反序列化漏洞原理与利用更加简单,但同样可以达到控制服务器的 ...

  2. php黑名单绕过,文件上传漏洞之黑名单检测绕过

    0x00 前言 文件上传是一个很常见的功能,文件上传漏洞也比较普遍,原理简单,造成的危害却很大,是一个入门级别的漏洞.这篇文章主要针对文件上传漏洞中的 黑名单检测绕过 这个点,结合upload-lab ...

  3. 文件上传漏洞-原理篇

    目录 第1章 文件上传漏洞基础 1.1 漏洞概述 1.2 漏洞成因 1.3 漏洞危害 1.4 漏洞利用姿势 第2章 文件上传漏洞检测与绕过 2.1 前端检测和绕过 2.2 服务器端检测和绕过 第3章 ...

  4. 文件上传漏洞总结(含原因+防御措施)+白名单+黑名单+内容、头+解析漏洞/修补方案

    文件上传漏洞简单总结+白名单+黑名单+内容.头+解析漏洞/修补方案 问题 什么是文件上传漏洞? 危害? 防御措施? 文件上传(验证/绕过)措施? 前端 js类绕过? 后端 黑名单绕过 特殊解析后缀 . ...

  5. 【《编辑器篇》kindeditor 文件上传漏洞利用】

    <编辑器篇>kindeditor 文件上传漏洞利用             一.漏洞描述 KindEditor是一套开源的HTML可视化编辑器,其采用的开发语言支持asp.aspx.php ...

  6. 致远OA文件上传漏洞(含批量检测POC)

    文章目录 文件上传 wpsAssistServlet 任意文件上传 漏洞描述 漏洞影响 网络测绘 批量检测POC ajax.do 任意文件上传 CNVD-2021-01627漏洞 漏洞描述 漏洞影响 ...

  7. 【文件上传漏洞-01】文件上传漏洞概述、防御以及WebShell基础知识补充

    目录 1 文件上传漏洞概述 2 文件上传漏洞防御.绕过.利用 2.1 黑白名单策略 3 WebShell基础知识补充 3.1 WebShell概述 3.2 大马与小马 1 文件上传漏洞概述 概述:文件 ...

  8. 文件上传漏洞及绕过检测的方式

    文章目录 一.什么是文件上传漏洞? 二.目标会对文件上传做哪些防护? (一)客户端检测 (二)服务端检测 (三)白名单和黑名单的区别 三.绕过后端黑名单检测 (一)换一个后缀名绕过黑名单检测 (二)用 ...

  9. html 上传文件_【实战篇】记一次文件上传漏洞绕过

    点击上方"公众号" 可以订阅哦! Hello,各位小伙伴大家好~ 最近有点高产似母猪~ 那今天就少写点,简单记录一个文件上传漏洞的绕过吧~(机智如我..) 之前也介绍过一期文件上传 ...

最新文章

  1. 设备物理像素、设备独立像素
  2. 关于nginx信号控制的“故障”案例
  3. Linux命令(007) -- systemctl
  4. golang []byte 和 string相互转换
  5. ActiveMq C#客户端 消息队列的使用(存和取)
  6. 事件监听一直报错Cannot set property 'display' of undefined
  7. 22.循环控制.rs
  8. mysql多个外键删除设置_Mysql在删除集上使用多个外键创建表
  9. mysql 数据库乱码_Mysql数据库乱码问题的对应方式
  10. URI is not registered (Settings | Languages Frameworks | Schemas and DTDs)怎么解决?
  11. 蓝牙模块:详解蓝牙通信模块的使用
  12. java十大排序算法
  13. 二、SSD网络原理及代码讲解
  14. ZYNQ下载程序出现错误Memory write error at 0x100000. APB
  15. java收费_一文看懂Java收费 附可替换方案!
  16. HDLBits刷题Day6
  17. 塔望3W消费战略全案丨阳澄湖牌大闸蟹:承诺就是价值,打响官方第一枪
  18. Coursera--DataStructure-加州理工大学圣地亚哥分校课程
  19. 2008中国十佳IC设计公司(二):土鳖博士创业一样成功
  20. Virtualbox源码分析16 APIC虚拟化1 APIC概念和初始化

热门文章

  1. 基于Huffman树的文件压缩(详细)
  2. 一行代码加速 sklearn 运算上千倍
  3. 删除某路径下所有空文件夹
  4. 想评计算机中级职称,请问需要参加什么考试?
  5. oracle回滚表空间的操作
  6. IBM推出创建语言运行时的工具包Eclipse OMR
  7. H5新特性(四)——语义化标签
  8. 关于2PC(二阶段提交)和3PC(三阶段提交)的理解
  9. 2022年资料员-通用基础(资料员)考试及资料员-通用基础(资料员)找解析
  10. mvc npoi导出excel ajax,ASP.Net MVC利用NPOI导入导出Excel