CN114422234A - 一种waf规则加载方法、装置、电子设备及存储介质 - Google Patents

一种waf规则加载方法、装置、电子设备及存储介质 Download PDF

Info

Publication number
CN114422234A
CN114422234A CN202210051298.3A CN202210051298A CN114422234A CN 114422234 A CN114422234 A CN 114422234A CN 202210051298 A CN202210051298 A CN 202210051298A CN 114422234 A CN114422234 A CN 114422234A
Authority
CN
China
Prior art keywords
file
rule
updated
waf
loading
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202210051298.3A
Other languages
English (en)
Inventor
宋建昌
高玉玺
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Kingsoft Cloud Network Technology Co Ltd
Original Assignee
Beijing Kingsoft Cloud Network Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Kingsoft Cloud Network Technology Co Ltd filed Critical Beijing Kingsoft Cloud Network Technology Co Ltd
Priority to CN202210051298.3A priority Critical patent/CN114422234A/zh
Publication of CN114422234A publication Critical patent/CN114422234A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0227Filtering policies
    • H04L63/0263Rule management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6227Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database where protection concerns the structure of data, e.g. records, types, queries
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/20Network architectures or network communication protocols for network security for managing network security; network security policies in general
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]

Abstract

本发明实施例提供了一种WAF规则加载方法、装置、电子设备及存储介质,应用于计算机技术领域,该加载方法包括:当满足针对文件加载的触发条件时,扫描指定规则库中的各个规则文件;其中,所述指定规则库为针对Web应用防火墙WAF的规则库;针对扫描到的每一规则文件,基于该规则文件的目标信息和各个历史文件的目标信息,识别该规则文件是否为相对于各历史文件发生更新的文件;其中,所述历史文件为已执行加载的规则文件,所述目标信息包括名称和/或指定属性,所述指定属性为在文件内容更新时发生变更的属性;将所识别出的发生更新的规则文件,进行加载处理。通过本方案可解决相关技术在规则库被更新后加载效率低的问题。

Description

一种WAF规则加载方法、装置、电子设备及存储介质
技术领域
本发明涉及计算机技术领域,特别是涉及一种WAF规则加载方法、装置、电子设备及存储介质。
背景技术
WAF(Web Application Firewall,Web应用防火墙)设备,即部署有WAF程序的设备,用于对来自Web应用程序的各类请求进行内容检测和验证,确保其安全性与合法性,对非法的请求予以实时阻断,从而对各类网站站点进行有效防护。其中,记录有防护规则的规则文件保存在针对WAF的规则库中,并且,通过将规则文件加载到WAF引擎中,从而实现WAF规则加载,WAF引擎为WAF程序的核心模块。
由于防护需求存在变化,因此,规则文件也需要更新,并且,发生更新的规则文件被存储于规则库中。相关技术中,在规则文件发生更新并存储于规则库后,WAF设备当接收到运维人员发出的热加载命令时,将规则库的全部文件进行加载处理。
然而,采用相关技术无疑会产生大量冗余的加载操作,导致加载效率较低,尤其是在只有少量规则更新的场景下,加载效率低的问题更为明显。
发明内容
本发明实施例的目的在于提供一种WAF规则加载方法、装置、电子设备及存储介质,用以解决相关技术在规则库被更新后加载效率低的问题。具体技术方案如下:
第一方面,本发明实施例提供了一种WAF规则加载方法,包括:
当满足针对文件加载的触发条件时,扫描指定规则库中的各个规则文件;其中,所述指定规则库为针对Web应用防火墙WAF的规则库;
针对扫描到的每一规则文件,基于该规则文件的目标信息和各个历史文件的目标信息,识别该规则文件是否为相对于各个历史文件发生更新的文件;其中,所述历史文件为已执行加载的规则文件,所述目标信息包括名称和/或指定属性,所述指定属性为在文件内容更新时发生变更的属性;
将所识别出的发生更新的规则文件,进行加载处理。
可选地,所述针对扫描到的每一规则文件,基于该规则文件的目标信息和各个历史文件的目标信息,识别该规则文件是否为相对于各个历史文件发生更新的文件,包括:
针对扫描到的每一规则文件,检测目标历史文件是否与该规则文件的指定属性相同;其中,所述目标历史文件为与该规则文件的名称相同的历史文件;
若不同,识别出该规则文件为发生更新的文件,若相同,识别出该规则文件为未发生更新的文件。
可选地,所述检测目标历史文件是否与该规则文件的指定属性相同之前,所述方法还包括:
从各个历史文件的名称中,查找该规则文件的名称;
若查找到,则执行所述检测目标历史文件是否与该规则文件的指定属性相同的步骤;
若未查找到,识别出该规则文件为发生更新的文件。
可选地,所述针对文件加载的触发条件,包括:达到预设的定时时间。
可选地,所述将所识别出的发生更新的规则文件,进行加载处理之后,所述方法还包括:
利用发生更新的规则文件的目标信息,更新各个历史文件的目标信息。
第二方面,本发明实施例提供了一种WAF系统,包括中控设备和Web应用防火墙WAF设备;
所述中控设备,用于当接收到发生更新的规则文件时,将所接收到的规则文件下发到所述WAF设备;
所述WAF设备,用于当接收所述中控设备下发的规则文件时,将所接收的规则文件存储于指定规则库中;其中,所述指定规则库为针对WAF的规则库;
所述WAF设备,还用于当满足针对文件加载的触发条件时,扫描指定规则库中的各个规则文件;针对扫描到的每一规则文件,基于该规则文件的目标信息和各个历史文件的目标信息,识别该规则文件是否为相对于各个历史文件发生更新的文件;将所识别出的发生更新的规则文件,进行加载处理。
其中,所述历史文件为已执行加载的规则文件,所述目标信息包括名称和/或指定属性,所述指定属性为在文件内容更新时发生变更的属性。
可选地,所述WAF设备为内容分发网络CDN系统中的节点。
第三方面,本发明实施例提供了一种WAF规则加载装置,所述装置包括:
扫描模块,用于当满足针对文件加载的触发条件时,扫描指定规则库中的各个规则文件;其中,所述指定规则库为针对Web应用防火墙WAF的规则库;
识别模块,用于针对扫描到的每一规则文件,基于该规则文件的目标信息和各个历史文件的目标信息,识别该规则文件是否为相对于各个历史文件发生更新的文件;其中,所述历史文件为已执行加载的规则文件,所述目标信息包括名称和/或指定属性,所述指定属性为在文件内容更新时发生变更的属性;
加载模块,用于将所识别出的发生更新的规则文件,进行加载处理。
可选地,所述识别模块包括:
识别子模块,用于针对扫描到的每一规则文件,检测目标历史文件是否与该规则文件的指定属性相同;其中,所述目标历史文件为与该规则文件的名称相同的历史文件;若不同,识别出该规则文件为发生更新的文件,若相同,识别出该规则文件为未发生更新的文件。
可选地,所述识别子模块还用于:在检测目标历史文件是否与该规则文件的指定属性相同之前,从各个历史文件的名称中,查找该规则文件的名称;若查找到,则执行所述检测目标历史文件是否与该规则文件的指定属性相同的步骤;若未查找到,识别出该规则文件为发生更新的文件。
可选地所述装置还包括:
更新模块,用于在所述加载模块将所识别出的发生更新的规则文件,进行加载处理之后,利用发生更新的规则文件的目标信息,更新各个历史文件的目标信息;其中,所述历史文件为与该规则文件的名称相同的历史文件。
第四方面,本发明实施例提供了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现任一种WAF规则加载方法的步骤。
第五方面,本发明实施例提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现任一种WAF规则加载方法的步骤。
本发明实施例有益效果:
本发明实施例提供的方案,当满足针对文件加载的触发条件时,扫描指定规则库中的各个规则文件;其中,所述指定规则库为针对Web应用防火墙WAF的规则库;针对扫描到的每一规则文件,基于该规则文件的目标信息和各个历史文件的目标信息,识别该规则文件是否为相对于各历史文件发生更新的文件;其中,所述历史文件为已执行加载的规则文件,所述目标信息包括名称和/或指定属性,所述指定属性为在文件内容更新时发生变更的属性;将所识别出的发生更新的规则文件,进行加载处理。可见,本方案在进行WAF规则加载时,能够自动识别出指定数据库中,相对于各历史文件发生更新的规则文件,只加载被更新的规则文件,避免每次热加载都全量加载规则文件,这样使得WAF规则加载时,不会产生大量冗余的加载操作。因此,通过本方案可解决相关技术在规则库被更新后加载效率低的问题,提高了加载效率。
当然,实施本发明的任一产品或方法并不一定需要同时达到以上所述的所有优点。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种WAF规则加载方法的流程图;
图2为本发明实施例提供的一种WAF规则加载方法的另一流程图;
图3为本发明实施例提供的一种WAF规则加载方法的又一流程图;
图4为本发明实施例提供的一种WAF规则加载装置的结构示意图;
图5为本发明实施例提供的一种WAF规则加载装置的另一结构示意图;
图6为本发明实施例提供的一种WAF规则加载系统的结构示意图;
图7为本发明实施例提供的一种电子设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
相关技术中,在规则文件发生更新并存储于规则库后,WAF设备当接收到运维人员发出的热加载命令时,将规则库的全部文件进行加载处理。然而,采用相关技术无疑会产生大量冗余的加载操作,导致加载效率较低,尤其是在只有少量规则更新的场景下,加载效率低的问题更为明显。另外,对于WAF与CDN(Content Delivery Network,内容分发网络)相结合的系统而言,WAF设备作为CDN网络中的节点,即CDN网络中的各个节点均可以作为WAF设备,那么,由于节点数量众多,因此,若每一节点均按照相关技术来进行规则加载,每一节点的加载效率均较低,对于系统性能影响相当严重。
为了解决相关技术WAF规则加载效率低的问题,本发明实施例提供了一种WAF规则加载方法、装置、电子设备及存储介质。
下面首先对本发明实施例所提供的一种WAF规则加载方法进行介绍。
本发明实施例所提供的一种WAF规则加载方法可以应用于WAF设备,其中,WAF设备为部署有WAF程序的设备。并且,该方法可以应用于规则文件可更新的任一应用场景中的WAF设备。在实际应用中,WAF设备可以为能够部署WAF程序的任一类型的设备,例如:服务器、终端设备,这都是合理的。
其中,实现该WAF规则加载方法的功能软件可以为:运行于WAF设备的WAF程序,具体而言,可以通过WAF程序中设置的指定模块来实现该方法,该指定模块可以命名为实时加载模块,当然并不局限于此。
另外,可以理解的是,记录有防护规则的规则文件保存在针对WAF的规则库中,并且,通过将规则文件加载到WAF引擎中,从而实现WAF规则加载。其中,WAF引擎为WAF程序的核心模块,当WAF设备接收到任一网络请求时,WAF引擎可以基于预先加载的规则文件中的防护规则,对该网络请求进行检测和验证,以确保其安全性与合法性。需要说明的是,不同的防护场景下,规则文件所记录的规则内容不同,本发明实施例并不对具体的规则内容进行限定。
为了解决相关技术所具有的问题,本发明实施例提供的一种WAF规则加载方法,可以包括如下步骤:
当满足针对文件加载的触发条件时,扫描指定规则库中的各个规则文件;其中,所述指定规则库为针对Web应用防火墙WAF的规则库;
针对扫描到的每一规则文件,基于该规则文件的目标信息和各个历史文件的目标信息,识别该规则文件是否为相对于各个历史文件发生更新的文件;其中,所述历史文件为已执行加载的规则文件,所述目标信息包括名称和/或指定属性,所述指定属性为在文件内容更新时发生变更的属性;
将所识别出的发生更新的规则文件,进行加载处理。
可见,本方案在进行WAF规则加载时,能够自动识别出指定数据库中,相对于各历史文件发生更新的规则文件,只加载被更新的规则文件,避免每次热加载都全量加载规则文件,这样使得WAF规则加载时,不会产生大量冗余的加载操作。因此,通过本方案可解决相关技术在规则库被更新后加载效率低的问题,提高了加载效率。另外,对于WAF与CDN相结合的系统而言,在采用本发明所提供的方案进行规则文件加载时,可以大大提升系统性能。
下面,结合附图,对本发明实施例提供的一种WAF规则加载方法进行具体说明。
图1为本发明实施例提供的一种WAF规则加载方法的流程示意图,如图1所示,该方法可以包括如下步骤S101-S103:
S101:当满足针对文件加载的触发条件时,扫描指定规则库中的各个规则文件;
其中,所述指定规则库为针对WAF的规则库;
为了解决相关技术存在的问题,WAF设备可以检测是否满足针对文件加载的触发条件,若检测到满足针对文件加载的触发条件,为了对发生更新的规则文件进行加载,可以扫描指定规则库中的各个规则文件,进而,基于扫描到的规则文件执行后续的处理。
可以理解的是,针对文件加载的触发条件可以存在多种。
示例性的,在一种实现方式中,触发条件可以包括:接收到热加载命令。针对该种实现方式而言,在发生更新的规则文件下发至WAF设备后,运维人员可以对WAF设备发出热加载命令,相应的,WAF设备可以接收到该热加载命令,从而检测到满足针对文件加载的触发条件。
示例性,在另一种实现方式中,触发条件可以包括:达到预设的定时时间。通过该种实现方式,WAF设备可以实现对于WAF设备的定时扫描,无需运维人员发出热加载命令,降低运维成本,保证线上服务质量。在WAF设备数量众多的场景中,该种实现方式可以大大降低运维成本。
上述的针对触发条件的说明,仅仅作为示例,并不应该构成对本发明实施例的限定。
并且,扫描指定规则库中的各个规则文件的方式可以包括多种。例如:按照文件大小从小到大进行扫描、按照文件存储时间的先后顺序进行扫描或按照文件所属类别进行扫描。需要说明的是,上述针对于扫描规则库中的各个规则文件的方式说明,仅仅作为实施例,并不应构成对本发明实施例的限定。
另外,WAF设备可以在接收到发送端发送的任一规则文件后,直接将规则文件存储到指定规则库中,该任一规则文件可以为发生更新的规则文件。在一种实现方式中,用于管理各个WAF设备的中控设备可以作为发送端,向WAF设备下发发生更新的规则文件,具体而言:中控设备当接收到发生更新的规则文件时,将所接收到的规则文件下发到WAF设备。这样,WAF设备当接收中控设备下发的规则文件时,直接将所接收的规则文件存储于指定规则库中;其中,发生更新的规则文件可以是配置人员通过前端上传至中控设备,当然并不局限于此。需要强调的是,上述的向WAF设备下发发生更新的规则文件的具体实现方式,仅仅作为示例,并不应该构成对本发明实施例的限定。
S102:针对扫描到的每一规则文件,基于该规则文件的目标信息和各个历史文件的目标信息,识别该规则文件是否为相对于各个历史文件发生更新的文件;
其中,所述历史文件为已执行加载的规则文件,所述目标信息包括名称和/或指定属性,所述指定属性为在文件内容更新时发生变更的属性。需要说明的是,各个历史文件为已加载至WAF引擎中的规则文件。
在扫描指定规则库的过程中,针对扫描的每一规则文件,可以分析该规则文件是否为相对于各个历史文件发生更新的文件,并根据分析出的结果,对该规则文件执行不同的处理。
由于在更新规则文件时,可以存在两种更新方式中的至少一种:针对WAF设备中已存在的规则文件进行内容更新,以及,新增规则文件,因此,所谓的相对于各个历史文件发生更新的文件可以包括:相对于任一历史文件而言文件内容发生更新的文件,或者,相对于各个历史文件而言属于新增加的文件。
基于上述的更新方式,本发明实施例中,将指定属性和/或名称,作为目标信息,并针对每一规则文件,基于该规则文件的目标信息和各个历史文件的目标信息,识别该规则文件是否为相对于各个历史文件发生更新的文件。示例性的,指定属性可以包括文件修改时间或文件版本,当然并不局限于此。
在实际应用中,若在规则文件更新时,仅仅存在一种更新方式:针对WAF设备中已存在的规则文件进行内容更新,或者,两种更新方式均存在,此时,针对该种应用场景,由于需要通过名称来定位文件,而指定属性是在内容更新时发生变更的属性,因此,目标信息具体可以包括名称和指定属性。为了方案清楚以及布局清晰,关于具体的识别方式,后续结合其他实施例进行说明。
若在文件更新时,仅仅存在一种更新方式:新增规则文件,此时,针对该种应用场景,目标信息具体可以包括名称,这样,通过检测各个历史文件的名称中是否存在该规则文件的名称,则可以识别出该规则文件是否为相对于各个历史文件发生更新的文件。
另外,若在某些场景下,若指定属性具有定位文件的功能,此时,无论存在上述的何种更新方式,目标信息可以仅仅包括指定属性,例如:各个名称不同的规则文件,在指定属性的描述形式上存在差异,也就是,指定属性的描述方式不同的文件,表征文件的名称不同;此时,可以通过指定属性达到定位文件的目的。该种实现方式中,若检测到一规则文件的指定属性的描述形式,与各个历史文件的指定属性的描述方式均不相同,表征该规则文件是新增的文件,即该规则文件为发生更新的文件;若检测到一规则文件的指定属性的描述形式,与一历史文件的指定属性的描述方式相同但具体内容不同,表征该规则文件是内容发生更新的文件,即该规则文件为发生更新的文件。
S103:将所识别出的发生更新的规则文件,进行加载处理;
本实施例中,将所识别出的发生更新的规则文件,进行加载处理具体可以为:将所识别出的发生更新的规则文件,加载到WAF引擎中。其中,在将发生更新的规则文件加载到WAF引擎中时,若WAF引擎中已经加载有与发生更新的规则文件命名相同的历史文件,则与发生更新的规则文件命名相同的历史文件,将会被替换。
另外,将所识别出的发生更新的规则文件,进行加载处理之后,还可以利用发生更新的规则文件的目标信息,更新各个历史文件的目标信息。这样,可以保证每次规则文件发生更新时,都能准确的检测到相比于上一次加载完成后本次发生更新的规则文件。
可以理解的是,更新各个历史文件的目标信息可以包括多种方式,例如:运维人员在被更新的规则文件加载完成后,记录被发生的规则文件,并将各个历史文件的目标信息替换为各个发生更新的规则文件目标信息,或WAF设备自动记录发生更新的规则文件,并将各个历史文件的目标信息替换为各个发生更新的规则文件目标信息,这都是合理的。
可见,本实施例所提供方案在进行WAF规则加载时,能够自动识别出指定数据库中相对于各历史文件发生更新的规则文件,只加载被更新的规则文件,避免每次热加载都全量加载规则文件,这样使得WAF规则加载时,不会产生大量冗余的加载操作。因此,通过本方案可解决相关技术在规则库被更新后加载效率低的问题,提高了加载效率。
下面结合另一实施例,介绍本发明实施例所提供的WAF规则加载方法。该实施例中,针对文件的更新方式为:针对WAF设备中已存在的规则文件进行内容更新的方式。
如图2所示,本发明实施例所提供的一种WAF规则加载方法,可以包括如下步骤:
S201,当满足针对文件加载的触发条件时,扫描指定规则库中的各个规则文件;
本实施例中,S201与上述实施例中的S101相同,在此不做赘述。
S202,针对扫描到的每一规则文件,检测目标历史文件是否与该规则文件的指定属性相同;若不同,识别出该规则文件为发生更新的文件,若相同,识别出该规则文件为未发生更新的文件;
其中,目标历史文件为与该规则文件的名称相同的历史文件。
本实施例中,由于仅仅存在内容更新,并未新增规则文件,因此,在扫描到每一规则文件后,可以首先确定出与该规则文件的命名相同的目标历史文件,进而,检测目标历史文件是否与该规则文件的指定属性相同,根据不同的检测结果,确定不同的分析结果。
S203,将所识别出的发生更新的规则文件,进行加载处理。
本实施例中,S203与上述实施例中的S103相同,在此不做赘述。
可见,本实施例所提供方案在进行WAF规则加载时,针对仅存在内容更新的规则文件的场景,能够自动识别出指定数据库中,相对于各个历史文件发生更新的规则文件,只加载被更新的规则文件,避免每次热加载都全量加载规则文件,这样使得WAF规则加载时,不会产生大量冗余的加载操作。因此,通过本方案可解决相关技术在规则库被更新后加载效率低的问题,提高了加载效率。
下面结合另一实施例,介绍本发明实施例所提供的WAF规则加载方法。该实施例中,针对文件的更新方式为:针对WAF设备中已存在的规则文件进行内容更新的方式,以及新增规则文件。
如图3所示,本发明实施例所提供的一种WAF规则加载方法,可以包括如下步骤:
S301,当满足针对文件加载的触发条件时,扫描指定规则库中的各个规则文件;
本实施例中,S301与上述实施例中的S101相同,在此不做赘述。
S302,针对扫描到的每一规则文件,从各个历史文件的名称中,查找该规则文件的名称,若查找到,执行S303,若未查找到,执行S304;
由于文件在发生更新时,可能是文件内容存在更新,也可能是新增文件,因此,本实施例中,在扫描到每一规则文件时,可以先从各个历史文件的名称中,查找该规则文件的名称,即识别该规则文件是否为新增加的文件,并根据不同的查找结果,执行不同的操作。
具体而言,若未查找到该规则文件的名称,表明该规则文件是相对于各历史文件新增加的文件,因此,可以执行S304;若存在到该规则文件的名称,表明该规则文件不是相对于各历史文件新增加的文件,此时可以继续识别该规则文件是否内容发生更新的文件,因此,可以执行S303。
S303,检测目标历史文件是否与该规则文件的指定属性相同;若不同,识别出该规则文件为发生更新的文件,若相同,识别出该规则文件为未发生更新的文件;
其中,目标历史文件为与该规则文件的名称相同的历史文件。
本实施例中,S303与上述实施例中的S202相同,在此不做赘述。
S304,识别出该规则文件为发生更新的文件;
S305,将所识别出的发生更新的规则文件,进行加载处理。
本实施例中,S305与上述实施例中的S103相同,在此不做赘述。
可见,本实施例所提供方案在进行WAF规则加载时,针对存在内容更新的规则文件以及新增的规则文件的场景,能够自动识别出指定数据库中,相对于各个历史文件发生更新的规则文件,只加载被更新的规则文件,避免每次热加载都全量加载规则文件,这样使得WAF规则加载时,不会产生大量冗余的加载操作。因此,通过本方案可解决相关技术在规则库被更新后加载效率低的问题,提高了加载效率。
相对于上述方法的实施例,如图4所示,本发明实施例提供了一种WAF规则加载装置,所述装置包括:
扫描模块401,当满足针对文件加载的触发条件时,扫描指定规则库中的各个规则文件;其中,所述指定规则库为针对Web应用防火墙WAF的规则库;
识别模块402,针对扫描到的每一规则文件,基于该规则文件的目标信息和各个历史文件的目标信息,识别该规则文件是否为相对于各个历史文件发生更新的文件;其中,所述历史文件为已执行加载的规则文件,所述目标信息包括名称和/或指定属性,所述指定属性为在文件内容更新时发生变更的属性;
加载模块403,将所识别出的发生更新的规则文件,进行加载处理。
可见,本方案在进行WAF规则加载时,能够自动识别出指定数据库中,相对于各历史文件发生更新的规则文件,只加载被更新的规则文件,避免每次热加载都全量加载规则文件,这样使得WAF规则加载时,不会产生大量冗余的加载操作。因此,通过本方案可解决相关技术在规则库被更新后加载效率低的问题,提高了加载效率。
可选地,所述识别模块包括:
识别子模块,用于针对扫描到的每一规则文件,检测目标历史文件是否与该规则文件的指定属性相同;其中,所述目标历史文件为与该规则文件的名称相同的历史文件;若不同,识别出该规则文件为发生更新的文件,若相同,识别出该规则文件为未发生更新的文件。
可选地,所述识别子模块还用于:在检测目标历史文件是否与该规则文件的指定属性相同之前,从各个历史文件的名称中,查找该规则文件的名称;若查找到,则执行所述检测目标历史文件是否与该规则文件的指定属性相同的步骤;若未查找到,识别出该规则文件为发生更新的文件。
可选地,如图5所示,所述装置还包括:
更新模块404,用于在加载模块403将所识别出的发生更新的规则文件,进行加载处理之后,利用发生更新的规则文件的目标信息,更新各个历史文件的目标信息;其中,所述历史文件为与该规则文件的名称相同的历史文件。
相对于上述方法实施例,如图6所示,本发明实施例还提供了一种WAF设备加载系统,中控设备610和WAF设备620;
所述中控设备610,用于当接收到发生更新的规则文件时,将所接收到的规则文件下发到所述WAF设备;
所述WAF设备620,用于当接收所述中控设备下发的规则文件时,将所接收的规则文件存储于指定规则库中;其中,所述指定规则库为针对WAF的规则库;
所述WAF设备620,还用于当满足针对文件加载的触发条件时,扫描指定规则库中的各个规则文件;针对扫描到的每一规则文件,基于该规则文件的目标信息和各个历史文件的目标信息,识别该规则文件是否为相对于各个历史文件发生更新的文件;将所识别出的发生更新的规则文件,进行加载处理。
其中,所述历史文件为已执行加载的规则文件,所述目标信息包括名称和/或指定属性,所述指定属性为在文件内容更新时发生变更的属性。
可选地,所述WAF设备为内容分发网络CDN系统中的节点。
针对本实施例中的中控设备610和WAF设备620的具体实现步骤,可以参照上述实施例中的步骤,在此不做赘述。
可见,本方案在进行WAF规则加载时,能够自动识别出指定数据库中,相对于各历史文件发生更新的规则文件,只加载被更新的规则文件,避免每次热加载都全量加载规则文件,这样使得WAF规则加载时,不会产生大量冗余的加载操作。因此,通过本方案可解决相关技术在规则库被更新后加载效率低的问题,提高了加载效率。
本发明实施例还提供了一种电子设备,如图7所示,包括处理器701、通信接口702、存储器703和通信总线704,其中,处理器701,通信接口702,存储器703通过通信总线704完成相互间的通信,
存储器703,用于存放计算机程序;
处理器701,用于执行存储器703上所存放的程序时,实现任意一种WAF规则加载方法的步骤。
上述电子设备提到的通信总线可以是外设部件互连标准(Peripheral ComponentInterconnect,PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口用于上述电子设备与其他设备之间的通信。
存储器可以包括随机存取存储器(Random Access Memory,RAM),也可以包括非易失性存储器(Non-Volatile Memory,NVM),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(Digital SignalProcessing,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
在本发明提供的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任意一种WAF规则加载方法的步骤。
在本发明提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一WAF规则加载方法。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置、电子设备而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。

Claims (11)

1.一种WAF规则加载方法,其特征在于,所述方法包括:
当满足针对文件加载的触发条件时,扫描指定规则库中的各个规则文件;其中,所述指定规则库为针对Web应用防火墙WAF的规则库;
针对扫描到的每一规则文件,基于该规则文件的目标信息和各个历史文件的目标信息,识别该规则文件是否为相对于各个历史文件发生更新的文件;其中,所述历史文件为已执行加载的规则文件,所述目标信息包括名称和/或指定属性,所述指定属性为在文件内容更新时发生变更的属性;
将所识别出的发生更新的规则文件,进行加载处理。
2.根据权利要求1所述的方法,其特征在于,所述针对扫描到的每一规则文件,基于该规则文件的目标信息和各个历史文件的目标信息,识别该规则文件是否为相对于各个历史文件发生更新的文件,包括:
针对扫描到的每一规则文件,检测目标历史文件是否与该规则文件的指定属性相同;其中,所述目标历史文件为与该规则文件的名称相同的历史文件;
若不同,识别出该规则文件为发生更新的文件,若相同,识别出该规则文件为未发生更新的文件。
3.根据权利要求2所述的方法,其特征在于,所述检测目标历史文件是否与该规则文件的指定属性相同之前,所述方法还包括:
从各个历史文件的名称中,查找该规则文件的名称;
若查找到,则执行所述检测目标历史文件是否与该规则文件的指定属性相同的步骤;
若未查找到,识别出该规则文件为发生更新的文件。
4.根据权利要求1-3任一项所述的方法,其特征在于,所述指定属性包括:文件修改时间或文件版本。
5.根据权利要求1-3任一项所述的方法,其特征在于,所述针对文件加载的触发条件,包括:达到预设的定时时间。
6.根据权利要求1-3任一项所述的方法,其特征在于,所述将所识别出的发生更新的规则文件,进行加载处理之后,所述方法还包括:
利用发生更新的规则文件的目标信息,更新各个历史文件的目标信息。
7.一种WAF系统,其特征在于,包括中控设备和Web应用防火墙WAF设备;
所述中控设备,用于当接收到发生更新的规则文件时,将所接收到的规则文件下发到所述WAF设备;
所述WAF设备,用于当接收所述中控设备下发的规则文件时,将所接收的规则文件存储于指定规则库中;其中,所述指定规则库为针对WAF的规则库;
所述WAF设备,还用于当满足针对文件加载的触发条件时,扫描指定规则库中的各个规则文件;针对扫描到的每一规则文件,基于该规则文件的目标信息和各个历史文件的目标信息,识别该规则文件是否为相对于各个历史文件发生更新的文件;将所识别出的发生更新的规则文件,进行加载处理;
其中,所述历史文件为已执行加载的规则文件,所述目标信息包括名称和/或指定属性,所述指定属性为在文件内容更新时发生变更的属性。
8.根据权利要求7所述的系统,其特征在于,所述WAF设备为内容分发网络CDN系统中的节点。
9.一种WAF规则加载装置,其特征在于,所述装置包括:
扫描模块,用于当满足针对文件加载的触发条件时,扫描指定规则库中的各个规则文件;其中,所述指定规则库为针对Web应用防火墙WAF的规则库;
识别模块,用于针对扫描到的每一规则文件,基于该规则文件的目标信息和各个历史文件的目标信息,识别该规则文件是否为相对于各个历史文件发生更新的文件;其中,所述历史文件为已执行加载的规则文件,所述目标信息包括名称和/或指定属性,所述指定属性为在文件内容更新时发生变更的属性;
加载模块,用于将所识别出的发生更新的规则文件,进行加载处理。
10.一种电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现权利要求1-6任一所述的方法步骤。
11.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1-6任一所述的方法步骤。
CN202210051298.3A 2022-01-17 2022-01-17 一种waf规则加载方法、装置、电子设备及存储介质 Pending CN114422234A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210051298.3A CN114422234A (zh) 2022-01-17 2022-01-17 一种waf规则加载方法、装置、电子设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210051298.3A CN114422234A (zh) 2022-01-17 2022-01-17 一种waf规则加载方法、装置、电子设备及存储介质

Publications (1)

Publication Number Publication Date
CN114422234A true CN114422234A (zh) 2022-04-29

Family

ID=81272919

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210051298.3A Pending CN114422234A (zh) 2022-01-17 2022-01-17 一种waf规则加载方法、装置、电子设备及存储介质

Country Status (1)

Country Link
CN (1) CN114422234A (zh)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109359093A (zh) * 2018-12-19 2019-02-19 杭州安恒信息技术股份有限公司 一种规则文件更新方法和系统
CN112351020A (zh) * 2020-10-29 2021-02-09 北京健康之家科技有限公司 Waf规则解析方法及装置
CN112446707A (zh) * 2020-11-13 2021-03-05 泰康保险集团股份有限公司 规则更新方法、装置、电子设备及存储介质
US20210112032A1 (en) * 2019-10-15 2021-04-15 Dell Products L.P. System of a Distributed Web Application Firewall Cluster
US20210203635A1 (en) * 2019-12-30 2021-07-01 Radware, Ltd. System and method for automatic waf service configuration
WO2021226781A1 (zh) * 2020-05-11 2021-11-18 深圳市欢太科技有限公司 防火墙规则的更新方法、装置、服务器及存储介质
CN113708959A (zh) * 2021-08-11 2021-11-26 新华三技术有限公司 一种规则库更新方法、装置及设备

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109359093A (zh) * 2018-12-19 2019-02-19 杭州安恒信息技术股份有限公司 一种规则文件更新方法和系统
US20210112032A1 (en) * 2019-10-15 2021-04-15 Dell Products L.P. System of a Distributed Web Application Firewall Cluster
US20210203635A1 (en) * 2019-12-30 2021-07-01 Radware, Ltd. System and method for automatic waf service configuration
WO2021226781A1 (zh) * 2020-05-11 2021-11-18 深圳市欢太科技有限公司 防火墙规则的更新方法、装置、服务器及存储介质
CN112351020A (zh) * 2020-10-29 2021-02-09 北京健康之家科技有限公司 Waf规则解析方法及装置
CN112446707A (zh) * 2020-11-13 2021-03-05 泰康保险集团股份有限公司 规则更新方法、装置、电子设备及存储介质
CN113708959A (zh) * 2021-08-11 2021-11-26 新华三技术有限公司 一种规则库更新方法、装置及设备

Similar Documents

Publication Publication Date Title
CN108446407B (zh) 基于区块链的数据库审计方法和装置
CN108897628B (zh) 一种分布式锁的实现方法、装置及电子设备
CN108255620B (zh) 一种业务逻辑处理方法、装置、业务服务器及系统
CN107239701B (zh) 识别恶意网站的方法及装置
CN109213604B (zh) 一种数据源的管理方法和装置
CN112202633B (zh) 区块链网络的测试方法、装置、电子设备及可读存储介质
CN111541561A (zh) 微服务配置信息管理系统、方法、服务器及存储介质
CN112860953A (zh) 图数据库的数据导入方法、装置、设备及存储介质
CN111382206A (zh) 一种数据存储方法及装置
CN115080272A (zh) 一种业务数据处理方法、电子设备及存储介质
CN108650123B (zh) 故障信息记录方法、装置、设备和存储介质
CN114528201A (zh) 异常代码定位方法、装置、设备及介质
CN110674153B (zh) 一种数据一致性检测方法、装置及电子设备
CN109976828B (zh) 一种配置文件的方法及装置
CN112437148A (zh) 业务请求的处理方法、装置、业务服务器及系统
CN110955460A (zh) 一种服务进程启动方法、装置、电子设备和存储介质
CN114422234A (zh) 一种waf规则加载方法、装置、电子设备及存储介质
KR20210048309A (ko) IoT/M2M 플랫폼에서 리소스 속성 값 갱신 방법
CN110083509B (zh) 一种日志数据的规整方法及装置
CN111209304B (zh) 数据处理方法、装置及系统
CN112596867A (zh) 一种悬挂事务处理方法及一种分布式数据库系统
CN114676098A (zh) 一种配置文件加载方法、装置、电子设备及存储介质
CN112488562A (zh) 一种业务实现方法及装置
CN111736848A (zh) 包冲突定位方法、装置、电子设备及可读存储介质
CN114519090B (zh) 一种停用词的管理方法、装置及电子设备

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination