type
status
date
slug
summary
tags
category
icon
password
0x00 WAF描述
1):waf功能 防火墙都是防御性的产品, 禁止HTTP协议的非安全方法 伪装Web服务的特征 防止API和命令注入 防止路径遍历和文件包含注入,对敏感的系统路径进行保护 防止sql注入 防止XSS攻击 防止网页挂马 防护CC攻击 文件上传的防护 动态IP黑名单 白名单 与实时计算平台对接等等 2):常见waf软件:安全狗 阿里盾 华为云 360等等
0x01 常见文件上传waf(安全狗实例)绕过思路
截取流量包,从流量包数据中做分析,有关上传文件的几个主要参数主要有
content-disposition:一般可更改 name:表单参数值,不能更改 filename:文件名,可以更改 content-type:文件MIME,视情况更改
绕过思路:
1.数据溢出(垃圾数据)-防waf匹配: name=前加分号填充大量垃圾数据在数据头前面 2.符号变异-防waf匹配: 单双引号变换使用,单双引号缺失提交,不使用单双引号(安全狗匹配符号内 数据,故绕过),分号截断 3.数据截断: 例如x. php%00.jpg 换行
4.重复数据防匹配: ilename=“1.php”filename=“1.php”filename=“1.php”filename=“1.php”多次填充尝试变换使用 重复数据填充
5.fuzz配合bur抓包模糊测试
payload:
大量垃圾数据缓冲溢出(Content-Disposition,filename等) filename=x.php
filename="x.php filename='x.php filename=“a.jpg;.php”; filename=“a.php%00.jpg”
filename=“Content-Disposition: form-data; name=“upload_file”;x.php” filename=“x.jpg”;filename=“x.jpg”;…filename=“x.php”; filename=“xxx/x.jpg”
filename= "
x
.
p
h
p
0x02 绕过方式部分图片示例(不一定过)
随着waf的防护的一步步加强,当面临比赛或者需要尝试绕过waf可以多多尝试各种方法,思路就是了解wf的拦截方法,尝 试防止waf检测到匹配数值达到绕过,还是要多多尝试,能过切过(狗头)
0x03 文件上传修复思路
文件上传安全修复方案
后端验证:采用服务端验证模式 后缀检测:基于黑名单,白名单过滤 MIME检测:基于上传自带类型检测 内容检测:文件头,完整性检测
自带函数过滤:参考uploadlabs函数 自定义函数过滤:function check_file(){} WAF防护产品:宝塔,云盾,安全公司产品等
0x04 常见脚本语言可解析文件类型
- 作者:告白
- 链接:https://www.gbsec.top/article/%E6%96%87%E4%BB%B6%E4%B8%8A%E4%BC%A0
- 声明:本文采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。