CN114915578A - Waf测试方法和装置 - Google Patents
Waf测试方法和装置 Download PDFInfo
- Publication number
- CN114915578A CN114915578A CN202110171238.0A CN202110171238A CN114915578A CN 114915578 A CN114915578 A CN 114915578A CN 202110171238 A CN202110171238 A CN 202110171238A CN 114915578 A CN114915578 A CN 114915578A
- Authority
- CN
- China
- Prior art keywords
- waf
- processing result
- data
- processing
- flow data
- 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.)
- Granted
Links
- 238000010998 test method Methods 0.000 title claims abstract description 9
- 238000012545 processing Methods 0.000 claims abstract description 138
- 238000012360 testing method Methods 0.000 claims abstract description 83
- 238000000034 method Methods 0.000 claims description 39
- 238000007781 pre-processing Methods 0.000 claims description 12
- 230000015654 memory Effects 0.000 claims description 9
- 238000004590 computer program Methods 0.000 claims description 7
- 238000000586 desensitisation Methods 0.000 claims description 4
- 230000007246 mechanism Effects 0.000 claims description 2
- 230000008569 process Effects 0.000 description 12
- 238000010586 diagram Methods 0.000 description 10
- 238000004458 analytical method Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 5
- 101100128227 Caenorhabditis elegans lid-1 gene Proteins 0.000 description 4
- 238000004422 calculation algorithm Methods 0.000 description 4
- 238000004891 communication Methods 0.000 description 4
- 238000013515 script Methods 0.000 description 4
- 230000007547 defect Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000005457 optimization Methods 0.000 description 3
- 238000011160 research Methods 0.000 description 2
- 230000006399 behavior Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000010267 cellular communication Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000007123 defense Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000002347 injection Methods 0.000 description 1
- 239000007924 injection Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000012827 research and development Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/50—Testing arrangements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1408—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
- H04L63/1416—Event detection, e.g. attack signature detection
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Automatic Analysis And Handling Materials Therefor (AREA)
- Measuring Volume Flow (AREA)
Abstract
本公开的一个方面涉及WAF测试方法和装置。具体公开了一种WAF测试方法,包括:获取流量数据;将获取的流量数据中每一条流量数据分别传入到待测WAF和基准WAF;将针对同一条流量数据的待测WAF的待测处理结果与所述基准WAF的基准处理结果进行比对;以及基于比对的一致性来确定待测WAF的测试结果。
Description
技术领域
本公开总体上属于网络信息安全领域,并且更具体地,涉及web应用防护系统(WAF)的测试方法和装置。
背景技术
WAF作为web应用的一道强大防线,时刻保障着web服务器的安全。当前,WAF研发领域出现了很多新的技术,然而人们对WAF测试领域的重视程度却仍然较低。
多样、全面且贴近真实业务的测试数据是完成WAF测试的关键。传统的WAF测试主要是通过事先编写攻击载荷(payload)脚本的方式来制作测试数据,这难以满足WAF系统对大量的真实、合理、复杂的测试数据的需求。并且,手工编写测试脚本人工成本高,效率低。
目前,业界内较为先进的WAF测试方法是通过采集线上流量来进行测试的,这减少了手工制作测试脚本的环节,同时也提取到了相对真实、合理的海量数据。然而,这种方法在测试过程中仍然存在一些弊端。
具体来说,这种方法通常需要在真实的业务系统旁搭建镜像服务器并获取线上流量,然后将获取的流量导入测试系统。这样虽然能够快速地获取大量真实数据,但在测试过程中直接使用这种线上流量会引入数据泄露的风险,造成难以评估的损失。
此外,这种方法提升的测试效率也是有限的。因为它在测试过程中仍然需要对每笔线上流量进行预先人工研判。具体而言,这种方法需要通过分析WAF日志或查看响应报文来判断WAF系统的处理结果是否正确。这意味着需要逐条地分析请求是被拦截、告警或是放行,甚至还存在攻击报文绕过WAF,进入web服务器的情况。也就是说,这种测试方法需要对每一条测试结果进行断言、分析,其人工成本较高且测试效率较低。
发明内容
在下文中给出了关于本公开的简要概述,以便提供关于本公开的一些方面的基本理解。但是,应当理解,这个概述并不是关于本公开的穷举性概述。它并不是意图用来确定本公开的关键性部分或重要部分,也不是意图用来限定本公开的范围。其目的仅仅是以简化的形式给出关于本公开的某些概念,以此作为稍后给出的更详细描述的前序。
为了克服上述现有技术的弊端,本公开提供了一种WAF测试方法和装置。它在测试过程中能够自动分析WAF对每条流量的处理结果,而不需要对每条流量的处理结果都进行人工研判。这大大提高了测试效率。此外,在优选的实施例中,本公开的WAF测试方法和装置能够对测试期间使用的真实流量进行离线保存和预处理,使得数据泄露的风险大大降低。
根据本公开的一个方面,提供一种WAF测试方法,其包括:获取流量数据;将获取的流量数据中每一条流量数据分别传入到待测WAF和基准WAF;将针对同一条流量数据的待测WAF的待测处理结果与所述基准WAF集群的基准处理结果进行比对;以及基于比对的一致性来确定待测WAF的测试结果。
根据本公开的另一个方面,提供一种WAF测试装置,其包括:存储器,其上存储有指令;以及处理器,被配置为执行存储在所述存储器上的指令,以执行根据本公开的上述方面所述的WAF测试方法。
根据本公开的又一个方面,提供一种计算机程序产品,其包括计算机可执行指令,所述计算机可执行指令在由一个或多个处理器执行时,使得所述一个或多个处理器执行根据本公开的上述方面所述的方法。
附图说明
构成说明书的一部分的附图描述了本公开的实施例,并且连同说明书一起用于解释本公开的原理。
参照附图,根据下面的详细描述,可以更清楚地理解本公开,其中:
图1示出了根据本公开的实施例的WAF测试系统的框图;
图2示出了根据本公开的实施例的WAF测试方法的流程图;
图3示出了根据本公开的另一实施例的WAF测试方法的流程图;
图4示出了根据本公开的另一实施例的WAF测试方法的流程图;
图5示出了根据本公开的实施例的待测WAF的待测处理结果与基准WAF的基准处理结果的比对示例的图;以及
图6示出了根据本公开的实施例的WAF测试装置的示例性硬件配置图。
具体实施方式
参考附图进行以下详细描述,并且提供以下详细描述以帮助全面理解本公开的各种示例实施例。以下描述包括各种细节以帮助理解,但是这些细节仅被认为是示例,而不是为了限制本公开,本公开是由随附权利要求及其等同内容限定的。在以下描述中使用的词语和短语仅用于能够清楚一致地理解本公开。另外,为了清楚和简洁起见,可能省略了对公知的结构、功能和配置的描述。本领域普通技术人员将认识到,在不脱离本公开的精神和范围的情况下,可以对本文描述的示例进行各种改变和修改。
图1示出了根据本公开的实施例的WAF测试系统100的框图。
WAF通常被部署在web应用前面,并且WAF中设置有一套完整的防护规则。在请求到达web服务器前,WAF可以基于其防护规则来对每个请求进行分析和校验,以确保放行有效且安全的请求,并对无效或有攻击行为的请求进行拦截或产生告警。这里的WAF可以指任何类型的WAF,例如,硬件WAF、软件WAF和云WAF等。通常,可以通过判断WAF对各种请求的处理结果是否正确来判断该WAF是否存在漏洞并需要进一步优化。当处理结果的正确率高达一定阈值时,表明WAF测试合格并且可投入使用。
如图1所示,根据本公开的实施例的WAF测试系统100包括数据模块101、处理模块102以及分析模块103。
根据一些实施例,数据模块101可以被配置为获取流量数据。例如,可以在目标服务器200前截获流量数据。流量数据可以是被WAF截获的包括向目标服务器发送的请求报文的数据。常见的请求包括GET请求、POST请求、PUT请求等。根据一些实施例,目标服务器可以是业务中实际使用的web服务器,也可以是在测试环境下专门为测试搭建的web服务器。根据一个实施例,可以通过在目标服务器前搭建一台镜像流量回放采集器将截获到的请求报文的镜像流量转发到采集器上。
根据优选的实施例,数据模块101可以进一步被配置为将获取的流量数据离线保存。可以通过任何合适的方式进行离线保存,包括但不限于本地存储和远程存储。根据优选的实施例,数据模块101可以进一步对获取的流量数据执行预处理。这将在下面详细说明。
根据一些实施例,处理模块102可以被配置为将获取的流量数据分别传入到待测WAF以及基准WAF,并使得待测WAF和基准WAF执行对流量数据的处理。对于一条流量数据,待测WAF和基准WAF可能分别作出相同或不同的处理结果。处理结果至少包括例如,“放行”、“拦截”和“告警”等。“放行”包括“正常放行”和“绕过”。例如,对于有效且安全的流量数据,WAF应作出的正确处理结果为“正常放行”;而对于有攻击行为的流量数据,WAF应作出的正确处理结果为“拦截”。处理模块102可以进一步被配置为记录针对每条流量数据的所有处理结果,供后续分析使用。
根据一些实施例,分析模块103可以被配置为自动比对待测WAF对一条流量数据作出的待测处理结果与基准WAF对同一条流量数据作出的基准处理结果。可以通过任何合适的计算机指令或程序来实现自动分析。然后,可以基于比对的一致性来确定测试结果。
以上各个模块可以分别通过软件、硬件或软硬件结合的方式实现。利用这种WAF测试系统100能够实现高效的WAF测试。这是因为本发明不需要如现有技术那样对每一笔线上流量进行预先人工研判,而是能够通过与基准WAF的处理结果进行比对来自动判断待测WAF对流量数据的处理结果是否正确,从而大大提高了测试效率。
图2示出了根据本公开的实施例的WAF测试方法的流程图。
如图2所示,在步骤202,获取流量数据。可以通过本领域人员已知的任何方式来获取流量数据。
根据一些实施例,获取的流量数据可以是线上真实流量数据的镜像流量数据。例如,可以通过在目标服务器前搭建镜像流量回放采集器,利用流量回放机制来获取线上真实流量数据的镜像数据。通过这种方式能够获得大量的真实、合理且复杂的测试数据,能够满足WAF的测试需求。
根据一些实施例,可以将获取的流量数据离线保存,从而离线地完成WAF测试。可以根据实际需要选择适当的存储方式,包括但不限于本地存储和远程存储。与使用线上流量(即,实时获取的流量)相比,使用离线保存的流量降低了数据使用的安全风险。例如,降低了关键数据泄露的风险。此外,使用离线保存的数据还使得测试环境的搭建更加方便、灵活。
在步骤204,将获取的流量数据中的每一条流量数据分别传入到待测WAF和基准WAF。待测WAF可以是WAF迭代开发过程中的新版本,或者是新研发的WAF产品。基准WAF是已经经过充分测试并且达到一定标准(例如,使用标准)的WAF的现有版本。基准WAF的防护规则通常是较完善的,防护水平也是稳定且有保障的。
在步骤206,将针对同一条流量数据的待测WAF的待测处理结果与所述基准WAF的基准处理结果进行比对。通过比对,可以确定待测WAF的待测处理结果与基准WAF的基准处理结果是否一致。
处理结果至少包括“拦截”、“告警”和“放行”等。处理结果的比对可以通过任何合适的计算机指令来实现。
在步骤208,基于比对的一致性来确定WAF测试结果。例如,如果所有待测处理结果与所有基准处理结果比对完全一致,则可以表明待测WAF的防护水平至少与基准WAF的防护水平持平。如果待测处理结果与基准处理结果比对存在不一致,则本领域技术人员可以对比对结果不一致的原因进行分析,进而确定下一步的处理,例如,继续优化并再次进行测试。
根据优选的实施例,对于某一条流量数据,如果待测处理结果与基准处理结果不一致,可以对这一条流量数据进行人工研判。如果人工研判的结果与待测处理结果不一致,则表明待测WAF有可能存在安全漏洞。如果人工研判与待测处理结果一致,则表明待测WAF有可能在一定程度上弥补了基准WAF的缺陷。以攻击报文为例,如果待测WAF对它作出了“拦截”的待测处理结果,而基准WAF对它作出了“放行”的基准处理结果,则表明基准WAF可能被该报文“绕过”,而待测WAF可能在一定程度上弥补了基准WAF的缺陷。根据一个实施例,测试人员可以在对处理结果不一致的所有流量进行人工研判之后,进一步基于人工研判的结果确定WAF测试结果。例如,待测WAF可以投入使用还是需要进一步优化和测试。
通过建立基准WAF,对同一条流量数据进行比对测试,可以不必对所有流量数据逐条地分析待测WAF所作出的处理结果是否正确。通常,大部分的待测处理结果与基准WAF的基准处理结果一致,无需进行人工处理,只有剩下少量不一致的结果才转入人工研判,这样节省了人力成本,大大提高了测试效率。
图3示出了根据本公开的优选实施例的WAF测试方法的流程图。
如图3所示,首先,在步骤301,向源地址发起对于流量数据的请求。在步骤302,所请求的流量数据被发送到该源地址的镜像地址。源地址可以是指向源目标服务器的链接。镜像地址可以是指向镜像服务器的链接。通常,镜像地址可以为相同信息内容提供不同的源,并且可以在一定程度上为源地址分流或者作为源地址的后备地址。通常,将镜像流量回放采集器布置在目标服务器前,以采集真实流量的镜像流量数据。
在获取流量数据之后,在步骤303,对获取的流量数据进行离线保存,以供后续测试使用。这可以通过任何合适的方式进行。
在步骤304,对获取的流量数据进行预处理。例如,通过在镜像流量回放采集器后进一步布置预处理模块来实现。该预处理模块可以是被配置为对流量数据执行预处理的脚本或程序。
根据一些实施例,预处理可以包括对流量数据进行脱敏处理。例如,将流量数据中的敏感数据变形。敏感数据包括但不限于用户安全数据以及商业安全数据等。用户安全数据可以包括用户姓名、手机号码、银行卡号等个人隐私数据。商业安全数据可以包括企业经营情况、企业网络结构等企业级安全数据。可以使用现有技术中已知的任何合适的数据脱敏技术来实现流量数据的脱敏处理。通过对流量数据实施脱敏处理而不是直接使用真实流量数据(或镜像流量数据),既可以在测试中使用接近真实、全面、多样化的线上数据,又可以有效地规避数据泄露的风险,使得测试更加安全。
根据一些实施例,预处理还可以包括为流量数据中的每一条流量数据分配唯一标识符Lid。可以根据流量数据的数据量来使用不同格式的唯一标识符。例如,在流量数据的数据量大的情况下,可以将唯一标识符的格式设置为例如,LYYYYMMDDHHMMSS00001。如果采用这种格式的唯一标识符,系统每秒最多可以获取99999条流量数据。通过为每一条流量数据分配唯一标识符,能够方便地实现待测WAF和基准WAF对同一条流量数据的处理结果之间的比对。
进一步如图3所示,在步骤305和306,经预处理的流量数据中的每一条流量数据分别被传入到待测WAF以及基准WAF。待测WAF和基准WAF分别对流量数据中的每一条流量数据作出各自的处理结果。
接着,在步骤307,将待测处理结果和基准处理结果进行比对。为了方便比对,可以将流量数据的标识Lid分配给其相应的待测处理结果和基准处理结果。在比对过程中,通过识别每条待测处理结果和基准处理结果的标识来确定要进行相互比对的一对待测处理结果和基准处理结果。
比对的步骤307可以在全部流量都已被处理并得到相应的处理结果之后进行,也可以仅在一部分流量被处理完之后就开始进行,以提高效率。
然后,在步骤308,基于比对的一致性来确定待测WAF的测试结果。确定测试结果的过程与图2中关于步骤208的描述一致,在此不再详述。
图4示出了根据本公开的另一实施例的WAF测试方法的流程图。与图3的不同之处在于,在图4的实施例中,基准WAF为由多个基准WAF构成的集群。
首先,由用户向源地址发起的请求(即,流量数据)被发送到该源地址的镜像地址。然后,利用预处理模块对流量数据执行预处理。获取流量、离线保存和预处理的步骤与图3中的描述一致,此处不再详述。
在步骤405和406中,经预处理的流量数据中的每一条流量数据分别被传入到待测WAF和多个基准WAF的集群。相比于使用单个基准WAF,使用多个基准WAF的集群可以使得测试更准确。下面描述在使用多个基准WAF的集群的情况下,确定基准处理结果的过程。
优选地,可以使用预设条件,基于多个基准WAF的多个处理结果来确定多个基准WAF的集群的基准处理结果。
根据一些实施例,该预设条件可以被配置为将多个基准WAF针对同一条流量数据的多个处理结果中出现次数最多的处理结果确定为基准处理结果。例如,可以利用argmax函数来实现这一目的。例如,在使用6个基准WAF的情况下,针对同一条流量数据,可能存在其中1个基准WAF作出“放行”的处理结果,2个基准WAF作出“告警”的处理结果,3个基准WAF作出“拦截”的处理结果的情况。在这种情况下,可以选择出现次数最多的处理结果(即,“拦截”)作为多个基准WAF的基准处理结果。
在某些情况下,对于一条特定的流量数据,无法确定出现次数最多的处理结果。例如,有两种或两种以上的处理结果出现的次数最多且相同。仍以6个基准WAF为例,当有两个基准WAF的处理结果为“放行”,而两个基准WAF的处理结果为“告警”时,不存在满足预设条件的基准处理结果。这种情况表明无法基于基准WAF的集群的处理结果对该流量数据作出正确的判断,即,无法确定该条流量数据的基准处理结果。此时,不再使用基准WAF的处理结果,而是对这一条流量数据进行人工研判,以确定待测WAF的待测处理结果是否正确。
根据优选的实施例,该预设条件还可以被配置为将多个基准WAF的多个处理结果中出现次数最多并且所述出现次数在所述多个基准WAF的多个处理结果的总数量中的占比大于预定阈值P的处理结果确定为基准处理结果。其中预定阈值P是预设常数,且0<P≤1。通常,预定阈值P设置得越大,所得到的基准处理结果的准确度越高。
仍然以使用6个基准WAF(1个处理结果为“放行”,2个处理结果为“告警”,3个处理结果为“拦截”)的情况为例,如果将预定阈值P设置为0.4,则可以得到符合预设条件的处理结果为“拦截”(“拦截”出现次数最多,且其占比为0.5,0.5>0.4);而如果将预定阈值P设置为0.6,则不存在符合预设条件的处理结果(“拦截”出现次数最多,且其占比为0.5,但0.5<0.6),此时,需要对这一条流量进行人工研判。
通过设置阈值P可以进一步提高基准处理结果的准确度,排除每种处理结果数量相差不够大的情况,只有当一种处理结果的数量明显多于其它处理结果时,才将其确定为最终的基准处理结果。
上述预设条件可以具体表达为以下表达式(1):
其中,y为确定的集群的基准处理结果,Z表示处理结果构成的集合,x表示所述集合中的一种处理结果,P表示预定阈值。处理结果包括但不限于“放行”、“告警”和“拦截”等。
虽然以上描述了特定的预设条件,但这并非是限制性的,而是本发明的优选实施方式。本领域技术人员可以根据需要选择其它预设条件来确定基准处理结果。例如,本领域人员可以根据不同基准WAF的特性对其中一个或多个基准WAF分配以较高的权重。
在得到处理结果之后,将针对同一条流量数据确定的基准处理结果和待测处理结果进行比对。随后,可以基于比对的一致性来确定待测WAF的测试结果。这些步骤于图3所描述的相同,此处不再详述。
图5是示出了根据本公开的实施例的待测WAF的待测处理结果与基准WAF的基准处理结果的比对示例的图。
图5中描绘了针对3条不同的流量数据,待测WAF所作的待测处理结果与基准WAF所作的基准处理结果的比对的示例。通常,流量数据中除了安全有效的请求外,还包括各种无效或攻击请求。攻击类型包括但不限于跨站脚本攻击(XSS)、SQL注入攻击、权限绕过等。防护功能完善的WAF通常能够对这些无效或攻击请求作出正确的拦截或告警处理,并对其它的有效且安全的请求作出放行处理。
如图5所示,3条流量数据具有不同的Lid(Lid1,Lid2和Lid3),并且流量数据Lid1用实线表示,流量数据Lid2用虚线表示,流量数据Lid3用点划线表示。流量数据Lid1、Lid2和Lid3中可能包含攻击请求。
待测WAF和基准WAF分别对三条流量数据作出各自的处理结果。处理结果包括但不限于“放行”、“告警”和“拦截”等,其中“放行”又进一步包括“正确放行”和“绕过”。具体而言,对于有效且安全的请求,“放行”为“正确放行”;而对于攻击请求,“放行”的处理结果表明攻击请求“绕过”了WAF。
对于流量数据Lid1,待测WAF和基准WAF都作出了相同的“拦截”的处理结果。在这种待测处理结果和基准处理结果一致的情况下,可以将待测WAF的处理结果视为是正确的,因此该流量通过,即,无需对其作进一步的分析。
对于流量数据Lid2,待测WAF作出了“放行”的处理结果,而基准WAF作出了“拦截”的处理结果。也就是说,待测处理结果和基准处理结果出现了不一致。此时,可以进行人工研判。如果人工研判结果和基准处理结果一致,那么表明待测WAF的防护规则可能存在漏洞。
对于流量数据Lid3,待测WAF作出了“拦截”的处理结果,而基准WAF作出了“放行”的处理结果。此时,可以进行人工研判。如果人工研判结果和待测处理结果一致,表明基准WAF有可能存在漏洞,其作出的“放行”的处理结果实际上是因为基准WAF被Lid3绕过了。而待测WAF作出了正确的判断,表明其在一定程度上弥补了基准WAF的缺陷。也就是说,对于流量数据Lid3,有可能待测WAF的防护规则比基准WAF的防护规则要更好。
图6示出了可以实现根据本公开的实施例的WAF测试装置600的示例性配置。
测试装置600是能够应用本公开的上述方面的硬件设备的实例。测试装置600可以是被配置为执行处理和/或计算的任何机器。测试装置600可以是但不限制于工作站、服务器、台式计算机、膝上型计算机、平板计算机、个人数据助手(PDA)、智能电话、车载计算机或以上组合。
如图6所示,测试装置600可以包括可以经由一个或多个接口与总线602连接或通信的一个或多个元件。总线602可以包括但不限于,工业标准架构(Industry StandardArchitecture,ISA)总线、微通道架构(Micro Channel Architecture,MCA)总线、增强ISA(EISA)总线、视频电子标准协会(VESA)局部总线、以及外设组件互连(PCI)总线等。测试装置600可以包括例如一个或多个处理器604、一个或多个输入设备606以及一个或多个输出设备608。一个或多个处理器604可以是任何种类的处理器,并且可以包括但不限于一个或多个通用处理器或专用处理器(诸如专用处理芯片)。处理器602例如被配置为实现本公开中的WAF测试方法。输入设备606可以是能够向计算设备输入信息的任何类型的输入设备,并且可以包括但不限于鼠标、键盘、触摸屏、麦克风和/或远程控制器。输出设备608可以是能够呈现信息的任何类型的设备,并且可以包括但不限于显示器、扬声器、视频/音频输出终端、振动器和/或打印机。
测试装置600还可以包括或被连接至非暂态存储设备614,该非暂态存储设备614可以是任何非暂态的并且可以实现数据存储的存储设备,并且可以包括但不限于盘驱动器、光存储设备、固态存储器、软盘、柔性盘、硬盘、磁带或任何其他磁性介质、压缩盘或任何其他光学介质、缓存存储器和/或任何其他存储芯片或模块、和/或计算机可以从其中读取数据、指令和/或代码的其他任何介质。测试装置600还可以包括随机存取存储器(RAM)610和只读存储器(ROM)66。ROM 66可以以非易失性方式存储待执行的程序、实用程序或进程。RAM 610可提供易失性数据存储,并存储与测试装置600的操作相关的指令。测试装置600还可包括耦接至数据链路618的网络/总线接口616。网络/总线接口616可以是能够启用与外部装置和/或网络通信的任何种类的设备或系统,并且可以包括但不限于调制解调器、网络卡、红外线通信设备、无线通信设备和/或芯片集(诸如蓝牙TM设备、802.11设备、WiFi设备、WiMax设备、蜂窝通信设施等)。
本公开可以被实现为装置、系统、集成电路和非瞬时性计算机可读介质上的计算机程序的任何组合。可以将一个或多个处理器实现为执行本公开中描述的部分或全部功能的集成电路(IC)、专用集成电路(ASIC)或大规模集成电路(LSI)、系统LSI,超级LSI或超LSI组件。
本公开包括软件、应用程序、计算机程序或算法的使用。可以将软件、应用程序、计算机程序或算法存储在非瞬时性计算机可读介质上,以使诸如一个或多个处理器的计算机执行上述步骤和附图中描述的步骤。例如,一个或多个存储器以可执行指令存储软件或算法,并且一个或多个处理器可以关联执行该软件或算法的一组指令,以根据本公开中描述的实施例提供各种功能。
软件和计算机程序(也可以称为程序、软件应用程序、应用程序、组件或代码)包括用于可编程处理器的机器指令,并且可以以高级过程性语言、面向对象编程语言、功能性编程语言、逻辑编程语言或汇编语言或机器语言来实现。术语“计算机可读介质”是指用于向可编程数据处理器提供机器指令或数据的任何计算机程序产品、装置或设备,例如磁盘、光盘、固态存储设备、存储器和可编程逻辑设备(PLD),包括将机器指令作为计算机可读信号来接收的计算机可读介质。
提供本公开的主题作为用于执行本公开中描述的特征的装置、系统、方法和程序的示例。但是,除了上述特征之外,还可以预期其他特征或变型。可以预期的是,可以用可能代替任何上述实现的技术的任何新出现的技术来完成本公开的部件和功能的实现。
另外,以上描述提供了示例,而不限制权利要求中阐述的范围、适用性或配置。在不脱离本公开的精神和范围的情况下,可以对所讨论的元件的功能和布置进行改变。各种实施例可以适当地省略、替代或添加各种过程或部件。例如,关于某些实施例描述的特征可以在其他实施例中被结合。
类似地,虽然在附图中以特定次序描绘了操作,但是这不应该被理解为要求以所示的特定次序或者以顺序次序执行这样的操作,或者要求执行所有图示的操作以实现所希望的结果。在某些情况下,多任务处理和并行处理可以是有利的。
Claims (15)
1.一种WAF测试方法,包括:
获取流量数据;
将获取的流量数据中每一条流量数据分别传入到待测WAF和基准WAF;
将针对同一条流量数据的待测WAF的待测处理结果与基准WAF的基准处理结果进行比对;以及
基于比对的一致性来确定待测WAF的测试结果。
2.根据权利要求1所述的方法,其中,获取流量数据包括利用流量回放机制来获取线上真实流量数据的镜像流量数据。
3.根据权利要求1所述的方法,其中,离线保存获取的流量数据。
4.根据权利要求1所述的方法,其中,所述基准WAF为多个基准WAF构成的集群,并且基准处理结果是使用预设条件基于所述多个基准WAF的多个处理结果确定的。
5.根据权利要求4所述的方法,其中,使用预设条件基于所述多个基准WAF的多个处理结果来确定基准处理结果包括:将所述多个基准WAF的多个处理结果中出现次数最多并且所述出现次数在所述多个基准WAF的多个处理结果的总数量中的占比大于预定阈值P的处理结果确定为基准处理结果。
7.根据权利要求4所述的方法,其中,对于一条流量数据,当不存在满足预设条件的处理结果时,对所述一条流量数据进行人工研判。
8.根据权利要求1所述的方法,其中,对于一条流量数据,当待测处理结果与基准处理结果的比对结果为不一致时,对所述一条流量数据进行人工研判。
9.根据权利要求8所述的方法,其中,基于比对的一致性和人工研判的结果来确定待测WAF的测试结果。
10.根据权利要求1所述的方法,进一步包括:在将获取的流量数据分别传入到待测WAF和基准WAF之前,对获取的流量数据进行预处理。
11.根据权利要求10所述的方法,其中,所述预处理包括将流量数据中的敏感数据变形,以实现流量数据的脱敏处理。
12.根据权利要求10所述的方法,其中,所述预处理包括为获取的流量数据中的每一条流量数据分配唯一标识符。
13.根据权利要求1所述的方法,其中,所述处理结果至少包括告警、放行或拦截之一。
14.一种WAF测试装置,包括:
存储器,其上存储有指令;以及
处理器,被配置为执行存储在所述存储器上的指令,以执行以根据权利要求1至13中的任一项所述的方法。
15.一种计算机程序产品,包括计算机可执行指令,所述计算机可执行指令在由一个或多个处理器执行时实现如权利要求1至13中的任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110171238.0A CN114915578B (zh) | 2021-02-08 | 2021-02-08 | Waf测试方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110171238.0A CN114915578B (zh) | 2021-02-08 | 2021-02-08 | Waf测试方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114915578A true CN114915578A (zh) | 2022-08-16 |
CN114915578B CN114915578B (zh) | 2024-04-30 |
Family
ID=82761450
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110171238.0A Active CN114915578B (zh) | 2021-02-08 | 2021-02-08 | Waf测试方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114915578B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115776414A (zh) * | 2023-02-10 | 2023-03-10 | 天翼云科技有限公司 | 一种监测方法、装置、电子设备及可读存储介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100199345A1 (en) * | 2009-02-04 | 2010-08-05 | Breach Security, Inc. | Method and System for Providing Remote Protection of Web Servers |
CN104461888A (zh) * | 2014-12-11 | 2015-03-25 | 中国科学院声学研究所 | 一种应用测试方法和系统 |
CN108667687A (zh) * | 2018-04-17 | 2018-10-16 | 四川长虹电器股份有限公司 | 一种基于Nginx的WAF测试方法 |
CN108694104A (zh) * | 2017-04-12 | 2018-10-23 | 北京京东尚科信息技术有限公司 | 一种接口功能对比测试方法、装置、电子设备和储存介质 |
CN109274669A (zh) * | 2018-09-18 | 2019-01-25 | 四川长虹电器股份有限公司 | 一种基于在线流量镜像旁路waf反向代理方法 |
CN110505235A (zh) * | 2019-09-02 | 2019-11-26 | 四川长虹电器股份有限公司 | 一种绕过云waf的恶意请求的检测系统及方法 |
CN112035617A (zh) * | 2020-08-31 | 2020-12-04 | 康键信息技术(深圳)有限公司 | 基于数据比对的系统测试方法、装置、计算机设备和介质 |
-
2021
- 2021-02-08 CN CN202110171238.0A patent/CN114915578B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100199345A1 (en) * | 2009-02-04 | 2010-08-05 | Breach Security, Inc. | Method and System for Providing Remote Protection of Web Servers |
CN104461888A (zh) * | 2014-12-11 | 2015-03-25 | 中国科学院声学研究所 | 一种应用测试方法和系统 |
CN108694104A (zh) * | 2017-04-12 | 2018-10-23 | 北京京东尚科信息技术有限公司 | 一种接口功能对比测试方法、装置、电子设备和储存介质 |
CN108667687A (zh) * | 2018-04-17 | 2018-10-16 | 四川长虹电器股份有限公司 | 一种基于Nginx的WAF测试方法 |
CN109274669A (zh) * | 2018-09-18 | 2019-01-25 | 四川长虹电器股份有限公司 | 一种基于在线流量镜像旁路waf反向代理方法 |
CN110505235A (zh) * | 2019-09-02 | 2019-11-26 | 四川长虹电器股份有限公司 | 一种绕过云waf的恶意请求的检测系统及方法 |
CN112035617A (zh) * | 2020-08-31 | 2020-12-04 | 康键信息技术(深圳)有限公司 | 基于数据比对的系统测试方法、装置、计算机设备和介质 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115776414A (zh) * | 2023-02-10 | 2023-03-10 | 天翼云科技有限公司 | 一种监测方法、装置、电子设备及可读存储介质 |
CN115776414B (zh) * | 2023-02-10 | 2023-04-07 | 天翼云科技有限公司 | 一种监测方法、装置、电子设备及可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN114915578B (zh) | 2024-04-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112003870A (zh) | 一种基于深度学习的网络加密流量识别方法及装置 | |
CN112906010B (zh) | 一种自动化攻击测试方法及基于此的自动化安全测试方法 | |
CN110929264B (zh) | 漏洞检测方法、装置、电子设备及可读存储介质 | |
CN112884092A (zh) | Ai模型生成方法、电子设备及存储介质 | |
CN110298662B (zh) | 交易重复提交的自动化检测方法及装置 | |
CN104182681B (zh) | 基于hook的iOS系统关键行为检测装置和方法 | |
CN106570399A (zh) | 一种跨App组件间隐私泄露的检测方法 | |
CN112506798B (zh) | 一种区块链平台的性能测试方法、装置、终端及存储介质 | |
CN103268448A (zh) | 动态检测移动应用的安全性的方法和系统 | |
CN109408309B (zh) | 多终端的测试方法及装置 | |
CN115145587B (zh) | 一种产品参数校验方法、装置、电子设备及存储介质 | |
CN111783159A (zh) | 网页篡改的验证方法、装置、计算机设备和存储介质 | |
CN114915578B (zh) | Waf测试方法和装置 | |
CN114595765A (zh) | 数据处理方法、装置、电子设备及存储介质 | |
WO2021139139A1 (zh) | 权限异常检测方法、装置、计算机设备和存储介质 | |
CN108427882B (zh) | 基于行为特征抽取的安卓软件动态分析检测法 | |
CN115361450B (zh) | 请求信息处理方法、装置、电子设备、介质和程序产品 | |
CN115022201B (zh) | 一种数据处理功能测试方法、装置、设备及存储介质 | |
KR101626581B1 (ko) | 휴대통신 단말의 오류 애플리케이션 진단방법 | |
CN109271781B (zh) | 一种基于内核的应用程序获取超级权限行为检测方法与系统 | |
CN116340127A (zh) | 一种接口测试方法、装置 | |
CN113282506A (zh) | 测试数据获取方法、装置、设备及计算机可读存储介质 | |
CN113760675A (zh) | 负载预测方法和装置、电子设备以及计算机可读存储介质 | |
CN114449052B (zh) | 一种数据压缩方法、装置、电子设备及存储介质 | |
CN114969759B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |