文件上传之基础以及过滤方式(一)

漏洞原理

在文件上传的功能处,若服务端脚本语言未对上传的文件进行严格验证和过滤,导致恶意用户上传恶意的脚本文件时,就有可能获取执行服务端命令的能力,这就是文件上传漏洞。

危害

文件上传漏洞危害:上传木马 获取网站权限 高危漏洞;

比sql注入危害还高一点

常规思路

对文件上传类型进行区分,区分完就能想到响应的办法,编辑器类 就找 编辑器的漏洞。

一定要明确这个上传漏洞对应的是那个类型,如果不知道类型就用常规的思路去试探。

常规思路流程:

  • 扫描路径获取上传路径
  • 会员中心里的上传
  • 后台系统的上传
  • 各种途径的上传

路径获取

这里简单用谷歌语: inurl:upload.php

文件上传

就简单找到了一个上传页面  因为这里没有授权 就不进行测试 这里就是一个思路 获得路径的思路。

不同类型的网站对应不同的文件类型后门测试

比如php的站点 就要想办法上传php后门  jsp就上传jsp后门 等 

问题:上传后门 连接不上

后门格式是一个图片格式,需要想办法让里面的代码被解析执行

下面分析几个案例更加深入了解这个漏洞

前端验证文件格式

前端检测就是只涉及网页中,前端验证,是在浏览器中执行,浏览器既可以执行它,也可以禁用它

所以前端验证是不安全的 控制权在用户手里。

但是不推荐直接一把梭 禁用所有js

推荐的是删除这个上传验证的js

简单理解就是前端会检测我们文件格式,检测完就直接传到后端存储起来,如果我们把前端验证给删除了,那么就可以随便上传任意文件,这包括木马。

这里就有两个思路:1.就是删除前端验证,然后直接上传。

                                 2.更简单一点,就是用抓包工具,先把木马改成它要求的文件格式,先上传,然后抓包修改后缀再发送给服务器,存储。

这里本质都是绕过前端验证,这里就演示第二种方式,因为实战偏多。

这里的1.png 我们已经提前往里面写入了 phpinfo();  

1.搭好环境 

uoload1

2.上传图片

up2

3.打开抓包工具进行抓包

up3

4.修改后缀为php 发送!

up5

6.访问对应路径 代码成功被解析! 上传成功

up4

这种是最好绕过的上传漏洞。

Nginx解析漏洞复现

传图片 访问正常图片图片路径后加了一个x.php就执行了 图片里写的php代码 这里的x可以是任意的字符

原理:nginx中间件解析漏洞,格式解析出现混乱,图片解析成脚本,把php代码解析成功。。

条件就是对方用到了这些中间件平台,并且没有打这个补丁。

这里采用ubuntu 上的docker 搭建vulhub靶场 进行复现:

提前把刚才的那个图片移入虚拟机,搭建好环境 

n1

2.上传得到回显路径

n2

3.加入后缀1.php进行解析漏洞利用  代码成功被解析

n3

Weblogic任意文件上传(CVE-2018-2894)

Oracle 7月更新中,修复了Weblogic Web Service Test Page中一处任意文件上传漏洞,Web Service Test Page 在“生产模式”下默认不开启,所以该漏洞有一定限制。

利用该漏洞,可以上传任意jsp文件,进而获取服务器权限。

环境启动后,访问http://your-ip:7001/console,即可看到后台登录页面。

执行docker-compose logs | grep password可查看管理员密码,管理员用户名为weblogic

登录后台页面,点击base_domain的配置,在“高级”中开启“启用 Web 服务测试页”选项:

1 (1)

访问http://your-ip:7001/ws_utc/config.do,设置Work Home Dir为/u01/oracle/user_projects/domains/base_domain/servers/AdminServer/tmp/_WL_internal/com.oracle.webservices.wls.ws-testclient-app-wls/4mcj4y/war/css。我将目录设置为ws_utc应用的静态文件css目录,访问这个目录是无需权限的,这一点很重要。

2

然后点击安全 -> 增加,然后上传webshell:

3

上传后,查看返回的数据包,其中有时间戳:

4

然后访问http://your-ip:7001/ws_utc/css/config/keystore/[时间戳]_[文件名],即可执行webshell:

5

这个只是一个经典上传漏洞的复现,这里有很多限制条件 1 要获取管理账密  2 对方开启了对应的服务功能

这种就属于不是常规思路 也包括CMS上传漏洞,都不是常规思路

CMS 很多上传点 是复杂的 很多复杂的条件需要满足 这都是白盒人找出来的。

所以要分类,有些上传点太复杂了,知道原理即可,常规渗透就走常规思路。

© 版权声明
THE END
喜欢就支持一下吧
点赞7 分享
评论 共1条

请登录后发表评论