文件上传分类

本文探讨了文件上传漏洞中非法用户利用WebShell攻击的原理,介绍了前端js、黑名单、文件类型检查、路径绕过等绕过方法。通过一个实际考核题目的例子,展示了如何通过MIME类型绕过和PHP双写绕过上传恶意文件,以及后续路径隐藏和文件名查找的技巧。
摘要由CSDN通过智能技术生成

一,原理。

文件上传漏洞服务端代码未对客户端上传的文件进行严格的验证,导致漏洞。非法用户可以利用上传的恶意文件控制整个网站,这个恶意文件被称为 WebShell ,也可以称为一种网页后门。

二,绕过类型

(1).前端js绕过

我们上传1.php文件时,前端阻止上传弹窗,说明存在前端验证文件。

绕过:

  1. 修改前端js代码,利用f12可修改
  2. 把1.php改为1.jpg,再利用bp抓包,修改回1.php也可上传

(2)黑白名单绕过

  1. 如果可以上传phtml php3 php4 php5 Php php (空格) php.,pphphp等后缀。

  2. 如果上传成功,测试是否能够解析不能就判断此方法不行

(3)针对文件类型绕过

      1.对文件的类型:content-type进行了判断绕过——image/jpeg

       2.判断文件头:上传1.php抓包在文件内容增加GIF89a

        3.判断文件内容:上传图片马1.jpg,再修改回1.php

(4)路径截断绕过与普通截断绕过

 路径截断绕过

1、Get:在上传路径处../upload/1.php%00

2、Post:对../upload/1.php后进行16进制hex修改为00

3、还有一种非路径截断,上传图片马(视情况加GIF89a)

抓包修改为:1.php;jpg或者1.php%00.jpg或者1.php/00.jpg

(5)其他。

还有很多类型,但是目前就知道这些,其他有待补充。

二,示例

以考核的题目为例。分别涉及文件类型,判断文件头,文件内容以及双写绕过,同时设计了白名单,只允许图片格式上传。

此题为文件上传题,按基本方法应该先上传一个一句话木马

返还信息说只可以上传jpg格式,我们改格式以后又返还信息说,其中包含php语言,不可以通过通过百度得知这是mime类型的绕过,借鉴ctfhub技能树中的绕过,要对两个内容进行修改,即:connect-type(image/jpeg)和filename(双写绕过),但是该网页本身就是php的,即使上传其他语言可以成功上传,网页也解析不了,因此如何修改php小马就成了问题,此处涉及特殊编码或字符变换

修改完成后,上传成功,但是访问路径时发现路径被修改过,此处解决方案也有几种,可以使用御剑或爬虫等进行查找,也可以用猜和试,此处实验过后,知道被隐藏的其实是文件名,成功访问后可以用蚁剑或hackbar找答案

在打开后还是不能正常访问,因为之前没有把文件格式改过来,木马文件不能正常执行,但前文说过,PHP格式是不允许的,于是又要使用双写绕过,让php语言正常被解析

修改后即可得到flag

  • 21
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值