WEB漏洞-文件上传之WAF绕过及安全修复

#上传参数解析:

Content-disposition:一般不可更改

Name:表单参数值,不能更改(更改需要达到统一)

Filename:文件名,可以更改

Content-type:文件MIME,视情况更改

#常见绕过方法:

数据溢出-防匹配(xxx...)---垃圾数据溢出(容易将服务器弄崩溃)

Name前加";"

符号变异-防匹配(' " ;)

符号替换、去掉尾、去掉符号、双写/多写符号、、、、、

注:将图中单个双引号替换为单个单引号,甚至去掉符号,都可以实现绕过的功能。但将前面的引号去掉,还是会被拦截---跟安全软件自身的匹配规则有关。

或者根据前面的测试,将x.php写到引号外

;-----代表一个语句的结束

"x.jpg;.php"----安全软件会当成x.jpg文件,但数据包又会解析成为一个php文件

数据截断-防匹配(%00 ; 换行)

如果写:filename="a.php%00.jpg"----可以绕过安全软件成功上次,但数据包会解析成jpg文件,无法当成php后门。

换行---换行符("\n")或者在数据包中直接回车(属于将数据分块传输---但有限制条件)

数据重复-防匹配(参数多次)

递归循环(验证的次数)

白名单技术-----将x.php当成正常数据(重复数据)

"/"也可作为绕过条件

Upload_fuzz 测试

链接地址:

GitHub - fuzzdb-project/fuzzdb: Dictionary of attack patterns and primitives for black-box application fault injection and resource discovery.

GitHub - TheKingOfDuck/fuzzDicts: Web Pentesting Fuzz 字典,一个就够了。

#文件上传安全修复方案

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

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

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

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

利用自带的函数:(upload中许多的过滤函数)

自定义函数过滤:黑白名单自定义、限定文件类型

WAF防护产品:宝塔、云盾、安全公司产品。

相关推荐
我不是QI21 小时前
周志华《机器学习—西瓜书》二
人工智能·安全·机器学习
简道云平台21 小时前
缺货预警到底怎么做?终于有人把“安全库存”这件事讲清楚了
安全
AI绘画小331 天前
Web 安全核心真相:别太相信任何人!40 个漏洞挖掘实战清单,直接套用!
前端·数据库·测试工具·安全·web安全·网络安全·黑客
北京耐用通信1 天前
告别“牵一发而动全身”:耐达讯自动化Profibus PA分线器为石化流量计网络构筑安全屏障
人工智能·网络协议·安全·自动化·信息与通信
galaxylove1 天前
Gartner发布2025年人工智能和网络安全技术成熟度曲线:网络安全领域对AI的期望值达到顶峰
人工智能·安全·web安全
galaxylove1 天前
Gartner发布CISO人工智能安全指南:将AI安全治理融入所有网络安全治理体系
人工智能·安全·web安全
小曹要微笑1 天前
MPU (Memory Protection Unit) 详解(嵌入式系统安全与可靠性的核心守护者)
安全·系统安全
414a1 天前
LingJing(灵境):Linux Amd64局域网设备访问靶机教程
linux·安全·web安全·网络安全·lingjing·灵境
Black蜡笔小新1 天前
视频汇聚平台EasyCVR赋能石油管道计量站精准监控与安全管理
安全·音视频
Token_w1 天前
openGauss:全密态数据库的金融级安全实践
数据库·安全·金融