Web应用防火墙(WAF)解析

简单介绍

Web应用防火墙(WAF)是专门对web应用提供保护的产品,相较于传统防火墙,WAF工作在应用层,通过执行一系列针对HTTP/HTTPS的安全策略来为专门的web应用提供保护。WAF通过对请求的内容通过进行规则匹配,行为分析等相关动作来判断是否存在威胁,并采取相应的阻断,记录,警告等动作。

基于规则构建的WAF

基于规则构建的WAF主要通过一个规则数据库的抵御外来入侵,WAF厂商维护一个安全数据库,WAF对每一个到来的请求通过数据库中的规则进行检测,如果测试通过,则认为是安全请求,否则拒绝请求,这种方式可以有效的防范已知的安全问题,但是对于0day则没有防御能力。

基于异常保护的WAF

基于异常保护的WAF根据检测合法的应用数据建立一个统计模型,以这个模型为依据判断通信数据是否存在恶意行为,但是基于异常保护的系统难以构建,同时对用户的体验来说没有基于规则的WAF更加直观,使得其应用并不广泛。

ModSecurity

ModSecurity作为WAF的事实标准,其是一个开源并跨平台的WAF,被称为WAF界的瑞士军刀(另一款瑞士军刀为netcat),早期的ModSecurity被开发为Apache的一个模块,随着发展,并提高独立性,ModSecurity团队开发了ModeSecurity v3版本,同时起了一个新名字叫Libmodsecrity。V3版本可以不依赖WEB服务进行独立安全,但是与Web服务联动工作时,需要安装对应的连接器。作为业界的实施标准ModSecurity的功能亦是大部分WAF的功能。如图是ModSecurity功能介绍

在这里插入图片描述

ModSecurity处理事件阶段

  1. 请求头阶段: 该阶段是ModSecurity的第一个入口点,处在该阶段的ModSecurity规则会在Apache完成请求头后立即执行。主要是允许规则编写器在执行代价高昂的请求正文处理之前做一个评估。这个评估将会影响modsecurity如何处理请求主体,到这个时候还没有读取(或解析)到请求体。默认情况下,ModSecurity不会解析XML或JSON请求体,但是可以通过将适当的规则放到第一阶段来构建他。
  2. 请求体阶段: 该阶段是主要的请求分析阶段,在接收和处理完完整的请求正文之后立即执行,这个阶段的规则拥有所有可用的请求数据,之后web服务器将生成响应本身(在嵌入模式下),或者将事务转发到后端web服务器(反向代理模式下)。请求体阶段Modsecurity支持Application/x-www-form-urldecode、Multipart/from-data、Text/xml。
  3. 响应头阶段: 响应投阶段发生在响应头可用之后(响应头被发送到客户端之前),但在读取响应体之前,需要决定是否检查响应主体的规则应被在这个阶段运行。此时的响应状态码在请求的早期被Apache服务器管理着,所以没法触发预期结果。
  4. 响应体阶段: 到此阶段时,响应体已经被读取,并且所有的数据都可以供规做出决定,可以运行规则阶段响应体。
  5. 日志记录阶段: 此时事务已经完成,已不能对事务施加影响,但是可以进行记录。

我的个人博客,欢迎大家访问 ~~~

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值