赞
踩
提示:本文将会对xss攻击常见的手动绕过WAF测试手段进行总结。并且结尾会给出针对网站安全狗与宝塔的防护进行实战,给出一种有效的绕过方式。
本文总结的绕waf方式仅仅只用于学习网络安全学科,不可以用于非法网络攻击破坏!守护网络安全,人人有责!
跨站脚本攻击(Cross-Site Scripting,XSS)是一种常见的网络安全漏洞,攻击者利用这种漏洞向网站注入恶意的脚本,从而窃取用户的信息或者进行其他恶意行为。
为了防止XSS攻击,许多网站都采用了Web应用程序防火墙(Web Application Firewall,WAF)技术来检测和阻止恶意脚本的注入。
XSS攻击绕过WAF是指攻击者通过某种手段绕过WAF的防御机制,成功地向网站注入恶意脚本,从而实现攻击目的。
在默认配置下,为了节省资源,许多WAF只会对GET请求进行过滤拦截,
而忽略了对POST请求等提交方式的检测,因此,常用的一种xss绕WAF的
方式是更改有害语句的提交方式,如将GET提交方式修改为POST、cookie、http
header等来尝试绕过WAF拦截,尝试这一方法的前提是当前网页代码支持修改
的提交方式。
混淆伪装方式与sql注入的绕过类似,如编码绕过、大小写绕过、双写绕过、转义字符绕过等,可以参考这篇推文学习构造:
sql注入绕过方式总结
xss漏洞主要是利用payload来执行js代码,因此WAF拦截的重点对象就是能
够触发js代码中事件的HTML标签,如script,但js语法中可以执行js代码的标签
十分多,因此可以尝试替换常规标签来尝试绕过 WAF的拦截,如标签
button/form/div/img/a等都可以执行js代码,可以构造出数量巨大的字段
尝试绕过。
xss漏洞执行js代码对系统实行的攻击依赖于事件函数的触发,因此WAF也
会重点识别事件函数字段,如onclick。但是在js语法中,事件函数还有十余种,
合理构造也能被触发,如onerror/oninput/onmousedown/onsumbmit/onchange等,
因此可以尝试变换常用事件函数来绕过WAF的拦截。
在提交方式绕过中,网站安全狗并没有对post型xss漏洞进行防御,而宝塔进行了防护。
而在变换函数与标签绕过中,两款WAF都没有对构造的payload
< svg onload="alert(document.cookie)">
进行拦截,导致了网站cookie值被盗取
如图:
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。