WAF是如何被绕过的?

作者:掌控安全学员-暗箭

欢迎关注公众号:掌控安全EDU

不知不觉来到掌控学院也快两个月了,想起俩个月前,从零开始,一步一个脚印的走到现在。

虽然有时很疲惫,但是却很快乐。

在下才疏学浅,仅在这里发表一下不成熟的见解,希望对大家的提升有所帮助

首先我们要了解什么是waf:

Web应用防火墙,Web Application Firewall的简称

我们口头相谈的waf有什么功能呢?

WAF可以发现和拦截各类Web层面的攻击,记录攻击日志,实时预警提醒,在Web应 用本身存在缺陷的情况下保障其安全。

但是,WAF不是万能的、完美的、无懈可击的,在种种原因下,它们也会有 各自的缺陷,作为用户不可以盲目相信WAF而不注重自身的安全。

我们来看一下目前主流的WAF绕过技术:
作为攻击者,我们要清楚我们利用哪方面来进行绕过:

Web容器的特性
Web应用层的问题
WAF自身的问题
数据库的一些特性

Web容器特性1

在IIS+ASP的环境中,对于URL请求的参数值中的%,如果和后面的字符构成的字符串在URL编码表之外,ASP脚本 处理时会将其忽略。

在这里插入图片描述

现在假设有如下请求:

http://zkaq666.com/1.asp?id=1 union se%lect 1,2,3,4 fro%m adm%in

在WAF层,获取到的id参数值为

1 union all se%lect 1,2,3,4 fro%m adm%in

此时waf因为 % 的分隔,无法检测出关键字 select from 等

但是因为IIS的特性,id获取的实际参数就变为

 1 union all select 1,2,3,4 from admin 

从而绕过了waf。

这个特性仅在iis+asp上 http://asp.net并不存在。

Web容器特性2

在这里插入图片描述

IIS的Unicode编码字符
IIS支持Unicode编码字符的解析,但是某些WAF却不一定具备这种能力。

//已知 ‘s’ 的unicode编码为:%u0053, ‘f’ 的unicode编码为 %u0066

如下:

http://zkaq666.com/1.asp?id=1 union all %u0053elect 1,2,3,4, %u0066rom admin

但是IIS后端检测到了Unicode编码会将其自动解码,脚本引擎和数据库引擎最终获取到的参数会是: 1 union all select 1,2,3,4 from admin

这种情况需要根据不同的waf进行相应的测试,并不是百发百中。但是对于绕过来说,往往只要一个字符成功绕过 即可达到目的。

Web容器特性3

HPP(HTTP Parameter Pollution): HTTP参数污染:
如下图

在这里插入图片描述

在HTTP协议中是允许同样名称的参数出现多次的。例如:

http://zkaq666.com/1.asp?id=123&id=456 这个请求。

根据WAF的不同,一般会同时分开检查 id=123 和 id=456 ,也有的仅可能取其中一个进行检测。但是对于 IIS+ASP/http://ASP.NET来说,它最终获取到的ID参数的值是123,空格456(asp)或123,456(http://asp.net)。

所以对于这类过滤规则,攻击者可以通过:

id=union+select+password/&id=/from+admin来逃避对 select * from 的检测。因为HPP特性,id的参数值最终会变为:union select password/,/from admin

Web容器的特性 –4

畸形HTTP请求
当向Web服务器发送畸形的,非RFC2616标准的HTTP请求时, Web服务器出于兼容的目的,会尽可能解析畸形HTTP请求。而如果Web服务器的兼容方式与WAF不一致,则可能会出现绕过的情况。

下面来看这个POST请求:

  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
WAF(Web应用程序防火墙)被绕过是指黑客通过某种手法绕过WAF的防护机制,成功攻击目标网站。为了解决这个问题,我们可以采取以下措施: 1. 定期更新和升级云WAF:及时检查云WAF的更新和升级,确保其与最新的攻击技术和漏洞攻击方法保持同步。这样可以增强云WAF的防护能力,减少被绕过的概率。 2. 强化访问控制策略:加强对访问源的筛选和过滤,设置有效的白名单和黑名单,限制访问源IP地址和用户,防止非法入侵。同时,注意对已知攻击者和恶意IP的封禁。 3. 加强网络安全监控和日志分析:实时监控网络流量和攻击行为,及时发现并针对新的攻击手法做出应对。对日志进行分析和审计,发现异常行为和漏洞,加强防御机制。 4. 引入人工智能技术:结合人工智能技术,利用机器学习和深度学习算法分析行为和模式,提升云WAF的自动学习和智能感知能力。通过引入AI技术,可以对攻击进行预测和自动化响应,防止云WAF绕过。 5. 多层次防护策略:除了云WAF外,还应该采取其他防护措施,如IPS(入侵防御系统)、IDS(入侵检测系统)、DDoS防护等,形成多层次的安全防护体系。这样可以提供更全面的保护,减少云WAF绕过的可能性。 总之,解决云WAF绕过的问题需要不断跟进最新的攻击技术和漏洞,并采取多种措施加强防护。通过定期更新和升级云WAF、强化访问控制策略、加强网络安全监控、引入人工智能技术以及实施多层次防护策略,可以提高云WAF的安全性,减少被绕过的风险。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值