文件上传漏洞详解

原理

        文件上传并不是一个漏洞,而是web程序中常见的一个功能,经常听到的文件上传漏洞成因就是程序员在开发的时候由于某种原因对前端页面中用户上传的的文件没有进行安全性检查或者是检查不到位,导致能够上传任意文件,这时候上传一个带有恶意马的文件到服务器,就会形成文件上传漏洞。

条件

       1.必须能够上传文件 。

       2.文件能被服务端进行解析。

       3.客户端能够访问到文件。

利用

        在文件内写入一句话木马,然后上传到网站根目录进行访问拿到webshell。

常用的一句话木马:<php eval($_REQUEST['id']> eval函数表示将传入的参数作为php代码来执行

绕过 

        通常网站是不允许直接上传.php等后缀的文件,那么我们就需要各种绕过黑名单或检测机制,下面是几种常见的绕过方式:

  1. 抓包删除相关js检测代码
  2. 抓包修改文件后缀名
  3. 尝试上传.phtml php1 php2 php3 php4等文件后缀,php5.3版本以下是默认支持解析的,高版本需要手动更改php配置文件。
  4. .htaccess文件绕过
  5. 大小写绕过
  6. 双写绕过
  7. 后缀名加空格或加.空格或..
  8. 00截断
  9. 图片马绕过
  10. 条件竞争

 

 

防护

        1.客户端检测:前端js代码检测,但是意义不大

        2.服务端设置黑白名单,检查文件后缀、类型、针对上传文件更改后缀等。

以上就是文件上传的相关内容,是否能够帮助到你呢?内容仅供参考,欢迎各位同学多多指教~

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值