一、什么是Web应用防火墙?

Web应用防火墙对网站、APP的业务流量安全及合规性保护,对业务流量的识别恶意特征提取、分析识别出恶意流量并进行处理, 将正常安全的流量回源到业务服务器, 保护网站核心业务和数据安全。

京东云Web应用防火墙的产品架构示意图如下:

二、Web攻击常见的检测手段?

Web攻击常见的三种检测手段,规则检测、AI检测或语义检测。

1.规则检测:效率高、识别精准度高。其表现形式是正则表达式,通过正则表达式或组合来检测攻击,例如:OWASP Top10十大安全漏洞,也有与其对应的规则集合 owasp top10 rules set,通过规则拦截恶意攻击已经是各大厂商的主流检测手段。目前各大WAF厂商都有自己的安全规则集合。

2.AI检测:通过AI机器学习或深度学习算法来检测Web攻击, 能检出未知威胁, 缺点检测效率低,一般用于离线检测,误报率相对较高, 具体取决于算法模型及训练样本等。

3.语义检测:通过对SQL或XSS注入进行语法及词法分析来检测攻击, 鉴于算法特点, 误报率较高,一般用于告警, 不直接拦截业务请求。

三、公有云上用户及业务场景的特点

公有云上的用户包含各个行业,业务场景具有多样性和复杂性的特点,例如:电商和政务云都是公有云的常见客户,通用的规则集合可以有效满足用户的防护需求, 但针对特点活动场景,例如优惠券活动、重点场景需要针对性定制不同的防护规则集合, 以满足特殊场景下防护需求。

四、针对公有云多态、复杂的业务场景的解决方案

1.默认规则组: 采用规则组集合的方式进行全面安全防护。

2.规则组分级: 规则组级别分为宽松、正常、严格,用以满足不同场景或同一场景不同时期的需求。

3.自定义规则组:定制化的防御策略组,针对复杂,特定需求的业务场景,例如:专门针对SQL注入自定义规则组,在选择规则时只选择SQL注入类的规则。

4.误报处理:通过白名单对请求特征加白或在自定义规则组中去掉误报的规则来处理误报。

4.1 默认规则组

Web应用攻击防护引擎基于内置的专家经验规则集,自动为网站防御SQL注入、XSS跨站,webshell上传、命令注入、后门隔离、非法文件请求、路径穿越、常见应用漏洞攻击等通用的Web攻击。

4.2 规则组分级

规则组级别分为宽松、正常、严格,用以满足不同场景或同一场景不同时期的需求。

例如在平时我们将规则组设置为正常级别, 但是在重保时期可以将规则组提升为严格级别,从而来阻断更多的攻击风险。

正常级别:检测常见的Web应用攻击(默认选择)。

严格级别:当您需要更严格地防护路径穿越、SQL注入、命令执行时,建议选择此等级。

宽松:当发现存在较多误拦截,或者业务存在较多不可控的用户输入时,可以选择此等级。

4.3 自定义规则组

定制化的防御策略组,针对复杂,特定需求的业务场景,例如:专门针对SQL注入自定义规则组,在选择规则时只选择SQL注入类的规则。

例如:

选择一个规则组模板,之后对模板内的规则进行删除,或添加新的规则到规则组中;

已选择的安全规则

未添加的安全规则

4.4 解决业务误报

4.4.1 自定义规则组

通过自定义规则组除去误报规则的方式来解决误报问题。

4.4.2 白名单加白

基于请求特征对误报流量加白, 加白后的流量会被WAF bypass,从而解决误报问题。

五、京东云WAF规则检测引擎主要特性

1.实时全面检测http报文,且跨包流量无遗漏检测;

2.自适应内容解析:自适应解析JSON、XML、Multipart等数据格式,提升检测的准确率;

3.自适应解码:包括URL、HTML、Base64、Unicode、十六进制、二进制等多种格式解码,提高检测的召回率;

4.支持HPP参数污染及依赖注入攻击防护,自适应SQL、XSS去注释。

作者:京东科技 范朋飞

来源:京东云开发者社区 转载请注明来源

Web应用防火墙--规则防护的更多相关文章

  1. 阿里云Web应用防火墙采用规则引擎、语义分析和深度学习引擎相结合的方式防护Web攻击

    深度学习引擎最佳实践 {#concept_1113021 .concept} 阿里云Web应用防火墙采用多种Web攻击检测引擎组合的方式为您的网站提供全面防护.Web应用防火墙采用规则引擎.语义分析和 ...

  2. 干货 | 利用京东云Web应用防火墙实现Web入侵防护

    摘要 本指南描述如何利用京东云Web应用防火墙(简称WAF),对一个简单的网站(无论运行在京东云.其它公有云或者IDC)进行Web完全防护的全过程.该指南包括如下内容: 准备环境 在京东云上准备Web ...

  3. 利用京东云Web应用防火墙实现Web入侵防护

    摘 要 本指南描述如何利用京东云Web应用防火墙(简称WAF),对一个简单的网站(无论运行在京东云.其它公有云或者IDC)进行Web完全防护的全过程.该指南包括如下内容: 1 准备环境 1.1 在京东 ...

  4. docker上面部署nginx-waf 防火墙“modsecurity”,使用CRS规则,搭建WEB应用防火墙

    web防火墙(waf)免费开源的比较少,并且真正可以商用的WAF少之又少,modsecurity 是开源防火墙鼻祖并且有正规公司在维护着,目前是https://www.trustwave.com在维护 ...

  5. [转]Web应用防火墙WAF详解

    通过nginx配置文件抵御攻击 0x00 前言 大家好,我们是OpenCDN团队的Twwy.这次我们来讲讲如何通过简单的配置文件来实现nginx防御攻击的效果. 其实很多时候,各种防攻击的思路我们都明 ...

  6. 2019年十大开源WEB应用防火墙点评

    2019年十大开源WEB应用防火墙点评 随着WEB应用的爆炸式成长和HTTPS加密的普及,针对网络应用层的攻击,像SQL注入.跨站脚本攻击.参数篡改.应用平台漏洞攻击.拒绝服务攻击等越来越多,传统的防 ...

  7. Web应用防火墙云WAF详细介绍

    Web应用防火墙,或叫Web应用防护系统(也称为:网站应用级入侵防御系统.英文:Web Application Firewall,简称: WAF).利用国际上公认的一种说法:Web应用防火墙是通过执行 ...

  8. fedora 28 , firewalld 防火墙控制,firewall-cmd 管理防火墙规则

    今天,在使用fedora时,需要修改防火墙规则,一时间忘记了命令是什么,这里进行记录一下. 目前 fedora 28/ centos 7 使用 firewalld 作为防火墙软件:下面我就怎么简单管理 ...

  9. Linux防火墙基础与编写防火墙规则

    Iptables采用了表和链的分层结构,每个规则表相当于内核空间的一个容器,根据规则集的不同用途划分为默认的四个表,raw表,mangle表,nat表,filter表,每个表容器内包括不同的规则链,根 ...

  10. Iptables防火墙规则使用梳理

    iptables是组成Linux平台下的包过滤防火墙,与大多数的Linux软件一样,这个包过滤防火墙是免费的,它可以代替昂贵的商业防火墙解决方案,完成封包过滤.封包重定向和网络地址转换(NAT)等功能 ...

随机推荐

  1. git解决一个电脑多用户情况(win7)

    首先:在输入ssh-keygen -t rsa -C "注册邮箱"后不要急着按enter,此时输入秘钥对的文件名,不要跟默认文件重名(默认的是id_rsa)

  2. 图书机读目录MARC简介,ISO格式目录数据生成

    一.简介 机读目录(Machine-Readable Catalogue,MARC),是利用计算机读取和处理书目信息,是计算机编目的产品. 它以代码形式和特定的结构将书目信息记录在计算机的存储载体上, ...

  3. 可视化生信分析利器 Galaxy 之 Docker 开发

    1. 背景 我们常常会基于某个 image 来启动一个 container,在这个 container 中我们可能会执行某些操作,比如创建一个文件,但是当这个 container 退出以后,如果我们以 ...

  4. 原来kafka也有事务啊,再也不担心消息不一致了

    前言 现在假定这么一个业务场景,从kafka中的topic获取消息数据,经过一定加工处理后,发送到另外一个topic中,要求整个过程消息不能丢失,也不能重复发送,即实现端到端的Exactly-Once ...

  5. 深入理解注解驱动配置与XML配置的融合与区别

    摘要:本文旨在深入探讨Spring框架的注解驱动配置与XML配置,揭示两者之间的相似性与差异. 本文分享自华为云社区<Spring高手之路2--深入理解注解驱动配置与XML配置的融合与区别> ...

  6. Vue——动态组件、插槽、Vue-cli创建项目、Vue项目目录结构、编写规范、es6导入导出语法

    动态组件 // <component :is="who"></component> // component标签的is属性等于组件名字,这里就会显示这个组件 ...

  7. C++内敛函数,构造函数,析构函数,浅拷贝

    inline //inline函数可以有声明和实现,但是必须在同一文件//inline函数不能分成头文件和实现文件 inline int add(int x, int y){ //一般不要放循环语句 ...

  8. 【HMS Core】Health Kit云测数据接入相关问题

    ​[问题描述1] 1.由于存在IOS.android.微信小程序,计划接入"云侧数据开放服务",使用模式为我们自己的服务端去同步华为健康数据,终端通过服务端获取最新的数据. 2.在 ...

  9. 使用Git进行版本控制和协作:代码共享、协作和版本管理

    目录 引言 Git 是一款开源的分布式版本控制系统,它已经成为了现代软件开发中必不可少的工具之一.在这篇文章中,我们将介绍如何使用 Git 进行版本控制和协作,以实现代码共享.协作和版本管理.Git ...

  10. php处理emoji表情 存数据库

    PHP 处理emoji表情 存数据库 直接过滤掉 1 function filter_emoji($str) { 2 $regex = '/(\\\u[ed][0-9a-f]{3})/i'; 3 $s ...