文件上传绕过waf

本文探讨了如何通过参数解析和常见技巧如数据溢出、符号变异、防匹配策略来绕过Web应用程序防火墙(WAF)。重点讲解了如何利用content-disposition、content-type等字段,并分享了绕过实例和安全修复建议,包括后端验证、MIME检测和自定义函数过滤等最佳实践。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

文件上传绕过waf

safedog 绕过方式

上传参数解析:明确哪些东西能修改?

content-disposition:一般可更改,就是表单数据

image-20210812104836012

name:表单参数值,不能更改

这个值是固定的,不能更改的,这个是和后端绑定的

image-20210812104706488

filename:文件名不能更改

这个是最关键的 它包含了文件的后缀名

content-type:文件MIME,视情况更改,这是一个绕过条件,我们可以根据它进行绕过,如果对方不是这个绕过条件,就没有意义了

image-20210812105045109

常见绕过方法
数据溢出-防匹配(xxx…)

把数据搞多一点 数据多了之后就会崩溃 多一点垃圾数据

添加垃圾数据

image-20210812112614580

image-20210812113007689

绕过

image-20210812114742903

符号变异-防匹配(‘ “ )

思路:

image-20210812113524233

将原来的双引号改成单引号,安全狗是不是只检测双引号里面的数据而不检测单引号的数据?

没绕过

image-20210812122459739

去除双引号

image-20210812114704282

绕过

image-20210812122459739

数据阶段-防匹配(%00)

尝试改成x.php%00.jpg(%00需要编码)

image-20210812120614876

未绕过

image-20210812122459739

尝试改成x.php;.jpg

image-20210812121330709

绕过

image-20210812114742903

尝试换行

image-20210812121701271

绕过

image-20210812114742903

重复数据-防匹配

多写几个filename干扰

借助代码的递归循环

先测试以那个为准

image-20210812122112704

判断出以y.jpg为准

尝试

image-20210812122332093

未绕过

image-20210812122459739

尝试多几条数据

image-20210812114742903

绕过

image-20210812122603602

尝试‘/’ ‘;’绕过

image-20210812123437016

成功绕过

image-20210812123555444

fuzz模糊测试

资源链接

image-20210812124335893

怎么进行fuzz

步骤

  1. 单击右键发送到intruder

image-20210812124856681

  1. 点击清除

image-20210812125002968

  1. 把这个地方当成一个字典去变化

image-20210812125051215

  1. 点击payloads 再选择字典

image-20210812125206958

  1. 点击option 设置

image-20210812125411414

  1. 执行

image-20210812125532066

安全修复

文件上传安全方式

后端验证:采用服务端验证模式

后缀监测:基于黑名单,白名单过滤

MIME检测:基于上传自带类型检测

内容检测:文件头,完整性检测

自带函数过滤:如下图

image-20210812130827741

自定义函数过滤:function

waf防护产品:宝塔,云盾,安全公司产品

后端验证:采用服务端验证模式

后缀监测:基于黑名单,白名单过滤

MIME检测:基于上传自带类型检测

内容检测:文件头,完整性检测

自带函数过滤:如下图

[外链图片转存中…(img-K5mLY9MJ-1629768951801)]

自定义函数过滤:function

waf防护产品:宝塔,云盾,安全公司产品

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值