WAF绕过

作者: 似龙在渊 | 来源:发表于2020-10-20 16:46 被阅读0次

一、WAF简介

WAF(WebApplicationFirewall)也称:网站应用级入侵防御系统,是通过执行一系列针对HTTP/HTTPS的安全策略来专门为Web应用提供保护的一款产品。

1.工作原理

对web应用程序客户端发出的流量进行内容检测和验证,检测其安全性与合法性,来屏蔽常见的网站漏洞攻击,如SQL注入,XML注入、XSS等。

2.WAF分类

软件型WAF

以软件形式装在所保护的服务器上的WAF,由于安装在服务器上,所以可以接触到服务器上的文件,直接检测服务器上是否存在WebShell是否有文件被创建等。代表性的产品有:安全狗,D盾。

硬件型WAF

以硬件形式部署再链路中,支持多种部署方式,当串联到链路中时可以拦截恶意流量,在旁路监听模式时只记录攻击不进行拦截。代表性的产品有:nsfocus, imperva硬件。

云WAF

一般以反向代理的形式工作,通过配置NS记录或CNAME记录,使对网站的请求报文优先经过WAF主机,经过WAF主机过滤后,将认为无害的请求报文再发生给实际网站服务器进行请求,可以说是戴防护功能的CDN。代表性的产品有:百度云加速,阿里云云盾。

网站系统内置的WAF

网站系统内置的WAF也可以说是网站系统中内置的过滤,直接镶嵌在代码中,相对来说自由度高一般有以下这几种情况。

输入参数强制类型转换(intval等)。

输入参数合法性检测。

关键函数执行(SQL执行、页面显示、命令执行等)前,对经过流程的输入进行检测。

对输入的数据进行替换过滤后再继续执行代码流程(转义/替换掉特殊字符等)。

网站系统内置的WAF与业务更加锲合,在对安全与业务都比较了解的情况下,可以更少的收到误报与漏报。

二、WAF绕过方法(以注入为主)

1.大小写绕过

比如waf拦截union select,可以构造Union sElEcT来绕过。

2.特殊字符替换空格或注释绕过

可以用注释来替代空格进行绕过,有些waf在检测时不会识别注释或者将注释替换掉,如sqlserver中可以用/**/代替空格,在mysql中 %0a 是换行,可以代替空格。

如union select 1,2可转换为union/*xx*/select/*xx*/1,2

3.编码绕过

少数waf不会对普通字符进行URL解码,还有一部分waf只会进行一次url解码,所以可以对payload进行二次url编码。常见的SQL编码有unicode、HEX、URL、ascll、base64等,XSS编码有:HTML、URL、ASCII、JS编码、base64等等。

如 union select 1,2可对其进行url编码后进行绕过waf。

4.关键字替换绕过

有些WAF会删除或者替换关键字,如遇到select union等敏感字词。

如 union select 1,2,3可替换为ununionion selselectect 1,,2,3

5.多请求拆分绕过

对于多个参数的语句,可以将注入语句分割插入。

如这样的请求:?a=[inputa]&b=[inputb]可将参数a和b拼接如:and a=[inputa] and b=[inputb]

6.利用cookies绕过

对于用了$_REQUEST来获取参数的网站可以尝试将payload放在cookie中进行绕过REQUEST会依次从GET POST cookie中获取参数,如果WAF只检测了GET/POST而没有检测cookie,可以将语句放在cookie中进行绕过。

7.云WAF绕过之寻找网站源ip

采用云WAF的网站可以寻找网站真实ip来绕过云WAF的检测。

常见方法有:

采用多地ping的方法查看ip地址解析分析真实ip

在线ping网站有:

http://ping.chinaz.com/

http://ping.aizhan.com/

http://ce.cloud.360.cn/

使用 nslookup 进行检测,原理同上。

寻找网站历史解析记录。

找网站的二级域名、NS、MX记录等对应的ip。

订阅网站邮件,查看邮件发送方的ip。

相关文章

  • 🎪waf绕过

    ? waf注入绕过检测方法 云waf直接找真实ip就可绕过 方法总结:绕过waf的方法: 1、白名单绕过2、大小写...

  • 绕过waf

    绕过云锁进行SQL注入 EXP: 1.php?id=-1 union(select 1,2,3,@@datadir...

  • WAF绕过

    一、WAF简介 WAF(WebApplicationFirewall)也称:网站应用级入侵防御系统,是通过执行一系...

  • 利用ASP.NET中的x-up-devcap-post-char

    以前我发表过几篇利用编码技术绕过WAF的文章。在文章中我不仅介绍了绕过WAF的方法,还明确指出WAF产品可以通过拦...

  • SQL注入专题(三)

    一、WAF及绕过WAF原理介绍 WAF的定义: waf,即web应用防火墙,是通过执行一系列针对http/http...

  • web渗透测试中WAF绕过讲解(三)规则层面的绕过注入

    0x01 前言 对于渗透测试人员来说掌握绕过各类WAF是一项重要的基本技能而WAF又分云WAF、硬件WAF...

  • XSS绕过WAF

    http://www.freebuf.com/articles/web/54686.html

  • 绕过waf方法

    一、各种编码绕过 id=1 union select pass from admin limit 1 id=1%2...

  • 绕过waf方法

    参考:绕过WAF、安全狗知识整理 - 珍惜少年时 - 博客园 SQL注入 | 9种绕过Web应用程序防火墙的方式 ...

  • 🎆组合绕过waf

    我们可以活跃头脑将and1=1换成-1=-1之类的或者使用or mod(8,7) in (1)意思是8/7余数等于...

网友评论

    本文标题:WAF绕过

    本文链接:https://www.haomeiwen.com/subject/xvykmktx.html