阿里云WAF本地验证及误拦截处理
周五做的实验。WAF本地验证是基于我的好奇心(因为一开始看帮助文档有点懵逼,还瞎问人家),不搞清楚有点郁闷;
另一个误拦截处理,是源于天翼WAF对于误拦截,我们自己是无法在控制台开起来的,只能反馈让他们后台处理,非常被动。而阿里的WAF说我们能自己操作,我特意去验证下是不是真的 = =(骗我不重要,骗了老板就呵呵哒)
一、WAF本地验证
参考:https://help.aliyun.com/document_detail/45267.html
我觉得,这个文档里面没有说清楚为什么需要这个本地验证,倒是前一篇使用教程稍微提了下【https://help.aliyun.com/document_detail/162902.html】
基于我的实验测试和个人理解,特意总结下(如果有啥不妥,欢迎读者指出 ^_^)
为什么需要WAF本地验证?
如果有配置过WAF,都知道防护域名Cname解析到WAF之前,通常是一个A记录解析到公网ip的服务器上。假设根域名为:haha.cn,
ping 这个test1.haha.cn,应该返回的是服务器公网ip。
当真正需要解析到WAF时,需要删除这个A记录,取而代之是CNAME:
WAF本地验证,就是基于域名还是指向服务器公网IP的A记录,但由于你本人在自己本地电脑强制写hosts,当你本人浏览器访问域名的时候,实际域名是指向将要配置的WAF解析的IP(有点拗口)
请看下图,登录WAF控制台后,
(1)网站接入添加域名:
点击下一步,会有个“复制WAF提供的CNAME地址”
ping这个WAF提供的CNAME地址会返回WAF的公网地址,把这个地址跟你添加的防护域名写到你本机电脑hosts即可,详情参考上面的链接。
这种本地验证好处:域名解析到WAF如果有问题,受影响只是你本机电脑的访问,其他人还是访问解析到服务器IP的域名地址。
后面引入误拦截,为了不影响模拟攻击测试,我也是在本地验证基础上先测的:
浏览器入:{xxx测试域名}/alert(xss)
二、WAF误拦截后加白处理
据说,阿里技术对于误拦截出现的问题是这样回答的:
一般代码没问题且不是恶意请求,开宽松规则,基本上不会拦截
我当时试过,宽松规则以上(含宽松规则),对于xss模拟测试攻击的请求: {xxx测试域名}/alert(xss),都是会被阿里拦截的:
如果对该IP开禁,需要在Web入侵防护添加白名单,前提:先获得被拦截的出口ip
这里要注意的是,是从哪个位置添加白名单,所以,最好分清楚是属于Web入侵防护还是数据安全那块的。