本文1000字左右阅读时间5分钟,适合新手入门初步了解认识waf
简介
Web应用程序防火墙是位于Web应用程序与客户端端点之间的安全策略实施点。该功能可以用软件或硬件,在设备设备中运行或在运行通用操作系统的典型服务器中实现。它可以是独立设备,也可以集成到其他网络组件中。
介绍
WAF如何工作:
使用一组规则来区分正常请求和恶意请求。
学习模式通过了解用户行为自动添加规则 。
WAF如何防御:
负面模型(基于黑名单)-黑名单模型使用预设的签名来阻止显然是恶意的Web流量,并使用签名来防止利用某些网站和Web应用程序漏洞的攻击。将模型Web应用程序防火墙列入黑名单是公共互联网上的网站和Web应用程序的绝佳选择,并且对主要的DDoS攻击类型非常有效。例如。阻止所有 输入的规则。
肯定模型(基于白名单)-白名单模型仅允许根据特定配置的标准进行网络访问。例如,可以将其配置为仅允许来自某些IP地址的HTTP GET请求。该模型对于阻止可能的网络攻击可能非常有效,但是白名单将阻止大量合法流量。将模型列入白名单的防火墙可能最适合内部网络上的Web应用程序,该网络应用程序设计为仅由有限的一组人员(例如员工)使用。
混合/混合模型(包含模型)-混合安全模型是一种混合了白名单和黑名单的模型。根据各种具体的配置细节,混合防火墙可能是内部网络上的Web应用程序和公用Internet上的Web应用程序的最佳选择
如何识别WAF
识别waf技术
一些WAF在请求中设置自己的cookie(例如Citrix,Netscaler,Yunsuo WAF,safedog)
有些人将自己与单独的标头关联(例如Anquanbao WAF,AmazonAWSWAF)。
有些经常更改标头和混乱的字符以使攻击者感到困惑(例如Netscaler,Big-IP)。
有些人在服务器头数据包中暴露自己(eg. Approach, WTS WAF)
一些WAF在响应内容body中公开自身(例如DotDefender,Armor,Sitelock)
其他WAF会对恶意请求做出不寻常的响应代码答复(例如WebKnight,360WAF
有些WAF会返回一堆垃圾数据,卡死你(例如:百度云加速乐)
看图识别waf
当前 waf 越来越多,我列举一些我遇到的 waf,上图说话:
安全狗
D 盾
亚信安全 deep edge
Yxlink waf
Imperva waf
创宇盾
玄武盾
腾讯门神
阿里云
网防 G01
wts-waf
WebKnight
ModSecurity
长亭 safeline
openRasp
F5 waf
安恒 waf 老版本
南京铱讯 waf
Imperva WAF
创宇盾
玄武盾
腾讯门神
网防
G01
检测技术:
从浏览器发出普通的GET请求,拦截并记录响应头(特别是cookie)。
从命令行(例如cURL)发出请求,并测试响应内容和标头(不包括user-agent)。
向随机开放的端口发出GET请求,并抓住可能暴露WAF身份的标语。
如果某处有登录页面,表单页面等.请尝试一些常见的(易于检测的)有效负载,例如 " or 1=1 -- -
将../../../etc/passwd附加到URL末尾的随机参数
在url的末尾添加一些吸引人的关键字,如'or sleep(5)'
使用过时的协议(如http/0.9)发出get请求(http/0.9不支持post类型查询)。
很多时候,waf根据不同的交互类型改变服务器头。
删除操作技术-发送一个原始的fin/rst包到服务器并识别响应。
侧通道攻击-检查请求和响应内容的计时行为。
主流WAF指纹识别:
根据一些waf检测特性,我们可以一些小技巧,对WAF进行识别
识别工具
wafw00f https://github.com/enablesecurity/wafw00f
identywaf https://github.com/stamparm/identywaf