WAF网页应用防火墙详解(设计思路-防御恶意文件上传实例-厂商防御技术-Imperva WAF部分特色功能了解)

定义:Web防火墙,主要是对Web特有入侵方式的加强防护,如DDOS防护、SQL注入、XML注入、XSS等。由于是应用层而非网络层的入侵,从技术角度都应该称为Web IPS,而不是Web防火墙。这里之所以叫做Web防火墙,是因为大家比较好理解,业界流行的称呼而已。由于重点是防SQL注入,也有人称为SQL防火墙。

一、首先了解WAF设计思路

  1. 部署在Web应用的前面
  2. 以白名单思路来设计(定义保护对象 不能单个阻拦)
  3. 只对HTTP、HTTPS协议进行检测
  4. Web应用模型、关联分析的技术

二、防御恶意文件上传

  • 文件名

    • 解析文件名,判断是否在黑名单内。

  • 文件内容

    • 解析文件内容,判断是否为webshell。

  • 文件目录权限

    • 该功能需要主机WAF实现,比如我见过的云锁。

目前,市面上常见的是解析文件名,少数WAF是解析文件内容,比如长亭。下面内容,都是基于文件名解析。

大致步骤如下:

  1. 获取Request Header里的Content-Type值中获取boundary值

  2. 根据第一步的boundary值,解析POST数据,获取文件名

  3. 判断文件名是否在拦截黑名单内

三、厂商防御技术

1.代理服务:代理方式本身就是一种安全网关,基于会话的双向代理,中断了用户与服务器的直接连接,适用于各种加密协议,这也是Web的Cache应用中最常用的技术。代理方式防止了入侵者的直接进入,对DDOS攻击可以抑制,对非预料的“特别”行为也有所抑制。Netcontinuum(梭子鱼)公司的WAF就是这种技术的代表。

2.特征识别:识别出入侵者是防护他的前提。特征就是攻击者的“指纹”,如缓冲区溢出时的Shellcode,SQL注入中常见的“真表达(1=1)”…应用信息没有“标准”,但每个软件、行为都有自己的特有属性,病毒与蠕虫的识别就采用此方式,麻烦的就是每种攻击都自己的特征,数量比较庞大,多了也容易相象,误报的可能性也大。虽然目前恶意代码的特征指数型地增长,安全界声言要淘汰此项技术,但目前应用层的识别还没有特别好的方式。

3.算法识别:特征识别有缺点,人们在寻求新的方式。对攻击类型进行归类,相同类的特征进行模式化,不再是单个特征的比较,算法识别有些类似模式识别,但对攻击方式依赖性很强,如SQL注入、DDOS、XSS等都开发了相应的识别算法。算法识别是进行语义理解,而不是靠“长相”识别。

4.模式匹配:是IDS中“古老”的技术,把攻击行为归纳成一定模式,匹配后能确定是入侵行为,当然模式的定义有很深的学问,各厂家都隐秘为“专利”。协议模式是其中简单的,是按标准协议的规程来定义模式;行为模式就复杂一些,

四、Imperva WAF部分功能讲解

1.多层防护措施
 
Protocol Validation
检测HTTP协议的合规情况
Attack Signatures 侦测流行的攻击行为

Application Profile

侦测流行的攻击行为
Data Leak Prevention 防止敏感数据泄露
ThreatRadar

在攻击展开前就阻止恶意用户的行为

 

2.Imperva专利技术

部分参考来源:

参考1. https://www.secfree.com/a/585.html

参考2.https://blog.csdn.net/chenyulancn/article/details/78842941

发布了33 篇原创文章 · 获赞 29 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/qq_40993864/article/details/100515351