CN114760083B - 一种攻击检测文件的发布方法、装置及存储介质 - Google Patents
一种攻击检测文件的发布方法、装置及存储介质 Download PDFInfo
- Publication number
- CN114760083B CN114760083B CN202110025978.3A CN202110025978A CN114760083B CN 114760083 B CN114760083 B CN 114760083B CN 202110025978 A CN202110025978 A CN 202110025978A CN 114760083 B CN114760083 B CN 114760083B
- Authority
- CN
- China
- Prior art keywords
- attack
- network
- data packet
- detection file
- environment
- 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.)
- Active
Links
- 238000001514 detection method Methods 0.000 title claims abstract description 259
- 238000000034 method Methods 0.000 title claims abstract description 61
- 238000003860 storage Methods 0.000 title claims abstract description 21
- 238000012360 testing method Methods 0.000 claims description 77
- 238000013101 initial test Methods 0.000 claims description 45
- 238000012545 processing Methods 0.000 claims description 19
- 238000012986 modification Methods 0.000 claims description 12
- 230000004048 modification Effects 0.000 claims description 12
- 238000012544 monitoring process Methods 0.000 claims description 9
- 238000000605 extraction Methods 0.000 claims description 4
- 230000000295 complement effect Effects 0.000 claims 1
- 230000006870 function Effects 0.000 description 31
- 238000005516 engineering process Methods 0.000 description 14
- 230000001186 cumulative effect Effects 0.000 description 9
- 239000000243 solution Substances 0.000 description 8
- 238000002347 injection Methods 0.000 description 6
- 239000007924 injection Substances 0.000 description 6
- 230000014509 gene expression Effects 0.000 description 5
- 230000008569 process Effects 0.000 description 5
- 239000003795 chemical substances by application Substances 0.000 description 4
- 238000004891 communication Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 238000012795 verification Methods 0.000 description 4
- 235000014510 cooky Nutrition 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000011160 research Methods 0.000 description 3
- 241000700605 Viruses Species 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 2
- 230000006399 behavior Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000000354 decomposition reaction Methods 0.000 description 2
- ZXQYGBMAQZUVMI-GCMPRSNUSA-N gamma-cyhalothrin Chemical compound CC1(C)[C@@H](\C=C(/Cl)C(F)(F)F)[C@H]1C(=O)O[C@H](C#N)C1=CC=CC(OC=2C=CC=CC=2)=C1 ZXQYGBMAQZUVMI-GCMPRSNUSA-N 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 230000002155 anti-virotic effect Effects 0.000 description 1
- 238000012098 association analyses Methods 0.000 description 1
- 238000012550 audit Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000002955 isolation Methods 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 239000000047 product Substances 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000012954 risk control Methods 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Classifications
-
- 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
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/50—Testing arrangements
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请涉及一种攻击检测文件的发布方法、装置及存储介质,所述发布方法包括:利用发布至旁路环境中的攻击检测文件对所述旁路环境中的网络流量数据进行检测,得到至少一个网络攻击数据包;在所述网络攻击数据包满足第一预设条件时,利用所述攻击检测文件提取所述网络攻击数据包中的攻击字符串;对所述攻击字符串进行误报检测;在接收到线上发布指令且误报检测的结果满足第二预设条件时,将所述攻击检测文件发布至所述线上环境。本申请能够解决现有技术中因人为操作或疏忽导致上线错误的攻击检测文件的问题。
Description
技术领域
本申请涉及计算机技术领域,尤其涉及一种攻击检测文件的发布方法、装置及存储介质。
背景技术
WAF(Web application firewall,网络应用防火墙)通过检测Http/Https报文中的特征来对恶意的攻击请求进行阻断,主流的WAF均集成了正则表达式引擎,通过编写基于正则表达式的规则来检测恶意请求,从而进行对恶意的攻击请求进行阻断。
面对各种新增的漏洞和丰富的业务场景,在实际应用中需要频繁对基于正则表达式的规则进行变更,以保证变更后的规则能够用于检测新增的漏洞或适应丰富的业务场景。
然而,在对基于正则表达式的规则进行变更时,容易因人为操作或疏忽导致上线错误的规则,从而对正常业务造成误拦,或漏防恶意的攻击请求。
发明内容
本申请所要解决的技术问题在于,提供一种攻击检测文件的发布方法、装置及存储介质,能够解决现有技术中因人为操作或疏忽导致上线错误的检测文件的问题。
为了解决上述技术问题,一方面,本申请提供了一种攻击检测文件的发布方法,所述方法包括:利用发布至旁路环境中的攻击检测文件对所述旁路环境中的网络流量数据进行检测,得到至少一个网络攻击数据包;在所述网络攻击数据包满足第一预设条件时,利用所述攻击检测文件提取所述网络攻击数据包中的攻击字符串;对所述攻击字符串进行误报检测;在接收到线上发布指令且误报检测的结果满足第二预设条件时,将所述攻击检测文件发布至所述线上环境。
另一方面,本申请提供了一种攻击检测文件的发布装置,所述装置包括:网络攻击数据包获取模块,用于利用发布至旁路环境中的攻击检测文件对所述旁路环境中的网络流量数据进行检测,得到至少一个网络攻击数据包;攻击字符串获取模块,用于在所述网络攻击数据包满足第一预设条件时,利用所述攻击检测文件提取所述网络攻击数据包中的攻击字符串;误报检测模块,用于对所述攻击字符串进行误报检测;发布模块,用于在接收到线上发布指令且误报检测的结果满足第二预设条件时,将所述攻击检测文件发布至所述线上环境。
另一方面,本申请提供了一种计算机存储介质,其特征在于,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、至少一段程序、代码集或指令集由处理器加载并执行任一项所述的攻击检测文件的发布方法。
本申请实施例利用发布至旁路环境中的攻击检测文件对所述旁路环境中的网络流量数据进行检测,得到至少一个网络攻击数据包,在所述网络攻击数据包满足第一预设条件时,利用所述攻击检测文件提取所述网络攻击数据包中的攻击字符串,并对所述攻击字符串进行误报检测,以及在接收到线上发布指令且误报检测的结果满足第二预设条件时,将所述攻击检测文件发布至所述线上环境。如此,只有在所述网络攻击数据包符合第一预设条件时才会提取其中的攻击字符串,以及在提取攻击字符后还会进一步对所述攻击字符串进行误报检测,从而避免了网络攻击数据包的异常增加,提高了发布在线上环境的攻击检测文件的可靠性,避免了上线后的攻击检测文件对正常业务造成误拦截或漏报攻击数据;并且,充分利用了旁路环境中的网络流量数据,在此基础上,可以将从旁路环境中网络流量数据中拦截的攻击内容回归到测试***中以保证后续变更中不会出现漏报的情况。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案和优点,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它附图。
图1是本申请实施例提供的硬件环境示意图;
图2是本申请实施例提供的一种攻击检测文件的发布方法的流程图;
图3是本申请实施例提供的一种攻击检测文件的发布方法中误报检测方法的流程图;
图4是本申请实施例提供的一种攻击检测文件的发布方法中另一种误报检测方法的流程图;
图5是本申请实施例提供的一种攻击检测文件的发布方法中判断网络攻击数据包是否满足第一预设条件的方法的流程图;
图6是本申请实施例提供的一种攻击检测文件的发布方法中另一种判断网络攻击数据包是否满足第一预设条件的方法的流程图;
图7是本申请实施例提供的一种攻击检测文件的发布方法中将攻击检测文件发布至旁路环境的方法的流程图;
图8是本申请实施例提供的一种攻击检测文件的发布方法中将攻击检测文件发布至线上环境的方法的流程图;
图9是本申请实施例提供的一种攻击检测文件的发布装置的结构示意图;
图10是本申请实施例提供的一种攻击检测文件的发布设备的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请作进一步地详细描述。显然,所描述的实施例仅仅是本申请的一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、***、产品或服务器不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
本申请涉及以下关键术语,以下为各关键术语的含义。
编辑环境,即用户的本地环境,用户可以在本地环境中编写对应的攻击检测文件以及对应的测试用例,编辑环境还包括本地测试的接口,以通过该接口对编写的攻击检测文件以及对应的测试用例进行本地测试。
线上环境,即WAF的现网环境,攻击检测文件发布到这里以后,会对恶意攻击请求产生拦截,因此,需要保证攻击检测文件不会错误的发布到线上环境。
旁路环境,命中发布至旁路环境中的攻击检测文件不会产生拦截,只会将检测数据记录到拦截表中,所述旁路环境中的网络流量数据可以是线上环境的镜像数据,即从线上环境镜像全量的流量,也可以是事先存储的一段时间内的正常流量。
测试***,是一个独立的测试逻辑,其可以读取攻击检测文件和测试用例来进行自动化测试,也可以读取自动化测试的结果,并可以补充测试用例,当测试不通过还可以阻断对应攻击检测文件的发布。
统计***,可以读取旁路环境、线上环境的拦截信息,并进行统计和监控,判断拦截信息是否符合阈值,当不符合阈值时,可以下线对应的攻击检测文件。
发明人在研究过程中发现,目前关于发布的相关内容,主要是针对应用变更的发布,采用的方式类似于灰度发布和蓝绿发布。这些灰度发布或蓝绿发布和WAF的发布的逻辑有一个不同,WAF的发布一般是不需要用户进行交互或反馈来判断结果,WAF的发布只依赖于请求包的内容,且处置的结果也比较简单,只会进行阻断或拦截两种。因此,针对WAF发布需要保证规则上线前不存在问题,而不是拿实际业务进行测试。
并且,对于正常的业务测试,其输入和输出的逻辑是固定的,正常来说输入的内容较为固定,测试时只需考虑与其内的输入就可以,对于预期外的内容只需要统一做一层处理,而WAF发布的目的是为了拦截特定的恶意流量,面对多种多样的正常流量,需要保证它们不能被WAF中的规则所命中。如果要和传统的测试一样,就需要保证测试用例能覆盖所有已有的白流量,这是很难做到的。
有鉴于此,本发明实施例提供了一种攻击检测文件的发布方法,可选的,在本发明实施例中,上述的攻击检测文件的发布方法可以应用于如图1所示的第一服务器101、第二服务器102和终端103所构成的硬件环境中。。
可选的,第一服务器或第二服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式***,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN、以及大数据和人工智能平台等基础云计算服务的云服务器。终端可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能手表等,但并不局限于此。终端以及服务器可以通过有线或无线通信方式进行直接或间接地连接,本申请在此不做限制。
其中,云服务器涉及云技术(Cloud technology),云技术是指在广域网或局域网内将硬件、软件、网络等系列资源统一起来,实现数据的计算、储存、处理和共享的一种托管技术。
云技术是基于云计算商业模式应用的网络技术、信息技术、整合技术、管理平台技术、应用技术等的总称,可以组成资源池,按需所用,灵活便利。云计算技术将变成重要支撑。技术网络***的后台服务需要大量的计算、存储资源,如视频网站、图片类网站和更多的门户网站。伴随着互联网行业的高度发展和应用,将来每个物品都有可能存在自己的识别标志,都需要传输到后台***进行逻辑处理,不同程度级别的数据将会分开处理,各类行业数据皆需要强大的***后盾支撑,只能通过云计算来实现。
云技术的应用包括医疗云、云物联、云安全、云呼叫、私有云、公有云、混合云、云游戏、云教育、云会议、云社交、人工智能云服务等。
其中,云安全(Cloud Security)是指基于云计算商业模式应用的安全软件、硬件、用户、机构、安全云平台的总称。云安全融合了并行处理、网格计算、未知病毒行为判断等新兴技术和概念,通过网状的大量客户端对网络中软件行为的异常监测,获取互联网中木马、恶意程序的最新信息,并发送到服务端进行自动分析和处理,再把病毒和木马的解决方案分发到每一个客户端。
云安全主要研究方向包括:1.云计算安全,主要研究如何保障云自身及云上各种应用的安全,包括云计算机***安全、用户数据的安全存储与隔离、用户接入认证、信息传输安全、网络攻击防护、合规审计等;2.安全基础设施的云化,主要研究如何采用云计算新建与整合安全基础设施资源,优化安全防护机制,包括通过云计算技术构建超大规模安全事件、信息采集与处理平台,实现对海量信息的采集与关联分析,提升全网安全事件把控能力及风险控制能力;3.云安全服务,主要研究各种基于云计算平台为用户提供的安全服务,如防病毒服务等。
如图1所示,用户(例如测试人员)可以通过终端103向第一服务器101发送旁路发布指令,所述第一服务器101在接收到终端103发布的旁路发布指令后,从所述第二服务器102中拉取待发布的攻击检测文件,并将待发布的攻击检测文件发布至布置在所述第一服务器101上的旁路环境,所述第一服务器101继而利用发布至所述旁路环境中的攻击检测文件检测网络攻击数据包,从所述网络攻击数据包中提取攻击字符串,以及对所述攻击字符串进行误报检测,在所述第一服务器101接收到所述终端103发布的线上发布指令且误报检测的结果满足第二预设条件时,所述第一服务器101将所述攻击检测文件发布至布置在所述第一服务器101上的线上环境。
以下结合图2对本发明实施例提供的一种攻击检测文件的发布方法进行说明。如图2所示,所述方法包括:
步骤S201:利用发布至旁路环境中的攻击检测文件对所述旁路环境中的网络流量数据进行检测,得到至少一个网络攻击数据包;
在本发明实施例中,所述攻击检测文件可以是指集成了正则表达式引擎的WAF,所述网络流量数据可以是指事先存储的一段时间内的正常流量;也可以是指线上环境的镜像数据,即从线上环境镜像全量的流量,也即,所述利用发布至旁路环境中的攻击检测文件对所述旁路环境中的网络流量数据进行检测可以包括:
在所述旁路环境中镜像线上环境的网络流量数据;
利用发布至旁路环境中的攻击检测文件对镜像得到的所述网络流量数据进行检测。
在实际应用中,如若采用事先存储的一段时间内的正常流量作为旁路环境中的网络流量数据,那么事先将需要存储大量的请求(千亿级别),同时也不能保证请求内容的实时有效,以及存在存储敏感信息的风险,而在所述旁路环境中镜像线上环境的网络流量可以很好地解决上述问题。
并且,在本实施例中,由于旁路环境镜像了线上环境的网络流量数据,可以保证回归到测试***中的攻击内容更加符合线上的实际环境,可以减少后续变更中的漏报。
所述网络攻击数据包可以包括结构化查询语言注入攻击数据包(SQL,StructuredQuery Language)、跨站脚本攻击数据包(XSS,Cross Site Scripting)以及跨站伪造攻击数据包(CSRF,Cross-Site Request Forgery)等各种可能导致网页服务器拒绝服务的网络攻击方式。
步骤S203:在所述网络攻击数据包满足第一预设条件时,利用所述攻击检测文件提取所述网络攻击数据包中的攻击字符串;
在本发明实施例中,可以根据攻击检测文件在旁路环境中检测的网络攻击数据包的数量来确定网络攻击数据包是否满足第一预设条件,例如,攻击检测文件在旁路环境中检测的网络攻击数据包的数量与修改前的攻击检测文件在旁路环境中检测的网络攻击数据包的数量的差值的绝对值小于等于预设数量阈值,则确定网络攻击数据包满足第一预设条件。
相反,如果所述网络数据包不满足所述第一预设条件,则发出告警或直接从旁路环境中下线所述攻击检测文件,以对所述攻击检测文件进行修改。
在实际应用中,由于只有在满足特定条件时才会利用所述攻击检测文件提取所述网络攻击数据包中的攻击字符串,相当于对所述攻击检测文件进行了一次可靠性检测,提高了发布至线上环境的攻击检测文件的可靠性,并且,由于进行了初步的可靠性检测才继续进行后续攻击字符串的提取及误报检测,从而可以及时下线错误的攻击检测文件,避免浪费后续流程,占用服务器的计算资源。
利用所述攻击检测文件提取所述网络攻击数据包中的攻击字符串通常需要先对所述网络攻击数据包进行分解,分解结束后,将分解的各个部分与所述攻击检测文件中的各个功能函数(即攻击规则)进行匹配,如果分解后的某一部分被任一攻击规则命中,则将该部分的字符串确定为攻击字符串。
示例的,以SQL注入攻击数据包为例,服务器获取的一个SQL注入攻击数据包示例如下:
GET
/cgi-bin/session/checklogin?appid=wxcbc3ab3807acb685&openid=oA0GbjokU2EOG3o_TvAmBNpvodlE&fskey=v0ae789cc105c8d00bfcf5e7fe13a88b')AS wxmfWHERE 8610=8610AND
(SELECT*FROM(SELECT(SLEEP(4)))wxmf)limit 1 HTTP/1.1
Host:ifzq.gtimg.cn
User-Agent:Go-http-client/1.1
Content-Type:application/json;charset=utf-8
Cookie:
Accept-Encoding:gzip
其中,Host是主机和端口,User-Agent是客户端浏览器的名称,Content-Type是文档所属的多用途互联网邮件扩展类型(MIME,Multipurpose Internet Mail Extensions),Cookie是保存的Cookie对象,Accept-Encoding是浏览器知道如何解码的数据编码类型。
将SQL注入攻击数据包中包括的Get参数分解成appid、openid以及fskey,并将appid、openid以及fskey作为键,将其对应的参数作为值进行保存,结果如下:
{'appid':['wxcbc3ab3807acb685'],
'openid':['oA0GbjokU2EOG3o_TvAmBN pvodlE'],
'fskey':["v0ae789cc105c8d00bfcf5e7fe13a88b')AS wxmf WHERE 8610=8610AND(SELECT*FROM(SELECT(SLEEP(4)))wxmf)limit 1"]}
分解结束后,将分解后的SQL注入攻击数据包与攻击检测文件中的攻击规则进行匹配,就能返回匹配的位置,该匹配位置对应的参数就是攻击字符串。例如,将上述分解后的SQL注入攻击数据包与攻击检测文件进行匹配时,返回的位置为fskey,则对应确定出的攻击字符串为:
v0ae789cc105c8d00bfcf5e7fe13a88b')AS wxmf WHERE 8610=8610 AND(SELECT*FROM(SELECT(SLEEP(4)))wxmf)limit 1
步骤S205:对所述攻击字符串进行误报检测;
在本发明实施例中,在将所述攻击字符串从所述网络攻击数据包中提取出来以后,需要对所述攻击字符串再进行误报检测。当攻击字符串存在误报检测时,说明发布至旁路环境中的攻击检测文件并不能很好的完成漏洞检测,因此,需要从旁路环境中下线该攻击检测文件,以对该攻击检测文件进行修改;当攻击字符串不存在误报检测时,说明该攻击检测文件能够发布至线上环境中。
在一些实施例中,如图3所示,所述对所述攻击字符串进行误报检测可以包括:
步骤S301:判断所述攻击字符串所在的所述网络攻击数据包是否包括预设白特征,所述预设白特征用于表征具有其的网络数据包是可信的;
步骤S303:若是,确定所述网络攻击数据包为可信网络数据包;
步骤S305:将从所述可信网络数据包中提取的攻击字符串确定为误报的攻击字符串。
例如,User-Agent特征是某些可信的浏览器,或者IP(Internet ProtocolAddress,互联网协议地址)是公司内部的,如果网络攻击数据包中包括可信的User-Agent特征或者公司内部的IP,则说明包括这些特征的网络攻击数据包是可信的数据包,而之前从该网络攻击数据包中提取的攻击字符串为误报,也即,之前从该网络数据包中提取的攻击字符串实际是非攻击字符串。
在另一些实施例中,如图4所示,所述对所述攻击字符串进行误报检测还可以包括:
步骤S401:提取所述攻击字符串所在的所述网络攻击数据包中的不用命中字段,所述不用命中字段为所述网络攻击数据包中不会被所述攻击检测文件命中的字段;
步骤S403:基于任一所述网络攻击数据包中的不用命中字段与其余所有所述网络攻击数据包中的不用命中字段的相似度,判断任一所述网络攻击数据包是否为离群攻击数据包;
步骤S405:若是,将从所述离群攻击数据包中提取的攻击字符串确定为误报的攻击字符串。
例如,从网络流量数据中检测到3个网络攻击数据包,分别为网络攻击数据包A、B和C,在该3个网络攻击数据包满足第一预设条件时,从每个网络攻击数据包中分别提取到1个不用命中字段,分别为字段a、字段b和字段c,任选一字段如字段a,计算字段a分别与其余所有字段b和c的相似度,如字段a与字段b的相似度为0.1(假设字段a和字段b完全相同时的相似度为1),字段a与字段c的相似度为0.2,那么说明字段a和字段b的相似度较差,字段a和字段b的相似度也较差,因此,网络攻击数据包A为离群攻击数据包,从其中提取出来的攻击字符串也相应判断为误报。
其中,所述不用命中字段为所述网络攻击数据包中不会被所述攻击检测文件命中的字段。示例的,以如下网络攻击数据包为例:
POST/SdkApi/enter?×tamp=1605806506 HTTP/1.1
host:www.qq.com
connection:close
content-length:1009
charset:UTF-8
accept-encoding:identity
content-encoding:gzip
content-type:application/json
{"ssid":"ping fan zhi lu_5G","lat":29.60291,"lng":106.546554,
"nearbyWifi":"ping fan zhi lu;ping fan zhi lu_5G;1805;ccegyy;susanna;
HUAWEI-PZD2MD;CMCC-aMjQ;CMCC-eZd7;CCN_sunyong;"}
其中的字段;ping fan zhi lu_5G;为不用命中字段。
当然,具体对所述攻击字符串进行误报检测的方式还可以有很多种,例如,响应于用户(如测试人员)的标注指令,对所述攻击字符串进行误报标识;又例如,聚合网络攻击数据包的请求头长度、请求体长度、关联IP、User-Agent等属性进行分类,识别出误报,本说明书在此不再一一赘述。
步骤S207:在接收到线上发布指令且误报检测的结果满足第二预设条件时,将所述攻击检测文件发布至所述线上环境。
在本发明实施例中,可以根据误报的攻击字符串的数量来确定误报检测的结果是否满足第二预设条件,例如,误报的攻击字符串的数量与提取的总的攻击字符串的数量的比值小于等于第一预设比值,则确定误报检测的结果满足第二预设条件;或者,误报的攻击字符串的数量超过预设的误报数值时,则确定误报检测的结果满足第二预设条件。
本申请实施例利用发布至旁路环境中的攻击检测文件对所述旁路环境中的网络流量数据进行检测,得到至少一个网络攻击数据包,在所述网络攻击数据包满足第一预设条件时,利用所述攻击检测文件提取所述网络攻击数据包中的攻击字符串,并对所述攻击字符串进行误报检测,以及在接收到线上发布指令且误报检测的结果满足第二预设条件时,将所述攻击检测文件发布至所述线上环境。如此,只有在所述网络攻击数据包符合第一预设条件时才会提取其中的攻击字符串,以及在提取攻击字符后还会进一步对所述攻击字符串进行误报检测,从而提高了发布至线上环境的攻击检测文件的可靠性,避免了上线后的攻击检测文件对正常业务造成误拦截或漏报攻击文件;并且,充分利用了旁路环境中的网络流量数据,在此基础上,可以将从旁路环境中网络流量数据中拦截的攻击内容回归到测试***中以保证后续变更中不会出现漏报的情况。
参见图5,图5是本发明实施例提供的攻击检测文件的发布方法的一个可选的流程示意图,在一些实施例中,在步骤S203之前,还可以包括如图5示出的步骤S501至步骤S505,具体步骤说明如下:
步骤S501:在所述攻击检测文件中包括修改类型的第一功能函数时,获取所述第一功能函数在第一预设时间内在所述旁路环境中命中的网络攻击数据包的第一累计数量,所述修改类型用于表征所述攻击检测文件中的第一功能函数是在原功能函数的基础上修改得到的;
步骤S503:获取所述原功能函数在第一预设时间内在所述旁路环境中命中的历史网络攻击数据包的第二累计数量;
步骤S505:在所述第一累计数量与所述第二累计数量的差值的绝对值小于等于第一预设阈值时,确定所述网络攻击数据包满足第一预设条件。
例如,所述第一功能函数为修改得到的IP规则,该IP规则在旁路环境中命中的网络攻击数据包的第一累计数量为4000个,而原功能函数,即修改前的IP规则在旁路环境中检测的历史网络攻击数据包第二累计数量为4100个,即所述第一累计数量和所述第二累计数量的差值的绝对值为100,如果所述第一预设阈值设置为200,那么可以确定所述网络攻击数据包满足第一预设条件,可以利用攻击检测文件提取所述网络攻击数据包中的攻击字符。
而如果修改得到的IP规则在旁路环境中命中的网络攻击数据包的第一累计数量为4400个,所述第一累计数量和所述第二累计数量的差值的绝对值为300,大于第一预设阈值200,所述网络攻击数据包将不满足第一预设条件,此时,所述攻击检测文件自动从所述旁路环境中下线,而不会触发提取网络攻击数据包中的攻击字符的操作。
在实际应用中,可以有针对性的进行阈值验证,也即,只针对有修改的功能函数进行阈值验证,而不是针对整个攻击检测文件进行阈值验证,从而可以在保证检测可靠性的基础上提高检测的效率。
参见图6,图6是本发明实施例提供的攻击检测文件的发布方法的一个可选的流程示意图,在一些实施例中,在步骤S203之前,还可以包括如图6示出的步骤S601至步骤S607,具体步骤说明如下:
步骤S601:在所述攻击检测文件中包括新增类型的第二功能函数时,获取所述第二功能函数在第二预设时间内在所述旁路环境中命中的网络攻击数据包的第三累计数量,所述新增类型用于表征所述攻击检测文件中的第二功能函数是新增得到的;
步骤S603:获取与所述第二功能函数对应的场景类型,所述场景类型与所述第二功能函数预先建立有对应关系;
步骤S605:基于所述场景类型确定对应的第二预设阈值;
步骤S607:在所述第三累计数量小于等于所述第二预设阈值时,确定所述网络攻击数据包满足第一预设条件。
其中,所述第二功能函数与所述场景类型预先建立有对应关系,例如,新增一条IP规则以及一条域名规则,该两个规则在新建时即建立了与某一场景类型的对应关系,如设定该两个规则用于恶意扫描0day(zero-day,零日漏洞)的场景。
对于不同的场景类型,也预先设置有第二预设阈值,所述第二预设阈值是指,命中所述第二功能函数的网络攻击数据包的数量阈值。例如,对于恶意扫描0day的场景,IP规则对应的第二预设阈值设置为10个,域名规则对应的第二预设阈值设置为50个,总拦截量对应的第二预设阈值设置为5000个,意味着命中新增的IP规则的网络攻击数据包不能超过10个,命中新增的域名规则的网络攻击数据包不能超过50个,命中的总的网络攻击数据包不能超过5000个。如果两条新增的规则均能满足,说明所述网络攻击数据包满足第一预设条件,进而可以收集这些数据包,以用于攻击字符串的提取;如果任一新增规则命中的网络攻击数据包的累计数量不能满足,则说明所述网络攻击数据包不满足第一预设条件,进而可以从旁路环境中下线所述攻击检测文件。
又例如,新增一条用于命中数据包中源IP地址的IP规则,该规则用于网络扫描场景,其对应的第二预设阈值设置为10个,则如果该命中该规则的网络攻击数据包的累计数量小于10个,则说明所述网络攻击数据包满足第一预设条件,进而可以收集这些数据包,以用于攻击字符串的提取。
在实际应用中,可以有针对性的进行阈值验证,也即,只针对新增的功能函数进行阈值验证,而不是针对整个攻击检测文件进行阈值验证,从而可以在保证检测可靠性的基础上提高检测的效率;并且,由于基于不同的应用场景来设置不同的第二预设阈值,可以进一步提高检测的可靠性。
图7是本发明实施例提供的攻击检测文件的发布方法的一个可选的流程示意图,在一些实施例中,在步骤S201之前,还可以包括如图7示出的步骤S701至步骤S705,具体步骤说明如下:
步骤S701:当接收到旁路发布指令时,获取测试用例和待发布的攻击检测文件,所述测试用例包括至少一个初始测试样本,所述初始测试样本均设置有属性标识,所述属性标识用于表征所述初始测试样本为非攻击类型或攻击类型;
步骤S703:利用所述攻击检测文件对所述初始测试样本进行检测,得到拦截的初始测试样本;
步骤S705:在拦截的初始测试样本的属性标识满足第三预设条件时,将所述攻击检测文件发布至所述旁路环境。
其中,所述测试用例和待发布的攻击检测文件可以预先保存在数据库中,所述数据库中可以包括线上分支和旁路分支,所述线上分支用于存储有待发布至线上环境的攻击检测文件,所述旁路分支用于存储待发布至旁路环境中的攻击检测文件,当接收到用户的旁路发布指令,可以基于旁路发布指令中攻击检测文件的标识从所述数据库的旁路分支中拉取与该标识对应的测试用例和待发布的攻击检测文件。
需要说明的是,用户在本地环境中编辑好攻击检测文件和对应的测试用例之后,需要在本地环境进行测试,在本地环境中测试通过后,再将编辑好的攻击检测文件和对应的测试用例保存到所述数据库中的旁路分支。
在获取了攻击检测文件和初始测试样本后,利用所述攻击检测文件对所述初始测试样本进行测试,如果所述攻击检测文件拦截的样本中攻击类型的样本数量与所述初始测试样本中攻击类型的样本数量的比值大于等于第二预设比例时,或者,所述攻击检测文件拦截的样本中非攻击类型的样本数量与所述初始测试样本中非攻击类型的样本数量的比值小于等于第三预设比例时,说明所述初始测试样本的检测结果满足第三预设条件,将所述攻击检测文件发布至所述旁路环境。
例如,所述初始测试样本共有1000个,其中,800个的属性标识为非攻击类型,200个的属性标识为攻击类型,如果所述攻击检测文件拦截的样本中攻击类型的样本数量为100个,那么所述攻击检测文件拦截的样本中攻击类型的样本数量与所述初始测试样本中攻击类型的样本数量的比值为0.5,如果第二预设比例设置为0.8,那么说明所述初始测试样本不能满足第三预设条件。
需要说明的是,所述初始测试样本中也可能为误报样本,这些误报样本通常为上一次测试过程中被误报为攻击样本并回归到测试***中的样本,即,这些误报样本实际为白样本,因此,对于误报样本,可以将其属性标识设置为非攻击类型。
在实际应用中,可以利用已有的样本数据即初始测试样本对待上线的攻击检测样本进行初步筛查,避免在旁线环境中上线不合格的攻击检测样本,也避免了浪费后续流程以及占用服务器的计算资源。
在一些实施例中,在对所述攻击字符串进行误报检测后,可能将是否可以发布的信息记录下来,在接收到用户的线上发布指令时,会直接调取该记录,并直接基于该记录确定是否进行发布。
例如,在对攻击字符串进行误报检测后,确定误报检测的结果满足第二预设条件,即确定所述攻击检测样本可以发布至线上环境,并将该信息记录下来,在接收到用户的线上发布指令时,可以直接基于该信息将所述攻击检测样本发布至线上环境。
但在实际应用中,常会存在一些特殊发布情形,例如,在对攻击字符串进行误报检测后,用户(如用户A)并不立即进行发布,而是在一天或几天后进行发布,或者由另一用户(如用户B)进行发布,如果用户A在发布之前修改过攻击检测文件,而一天后或几天后用户A又忘记对攻击检测文件进行过修改,或者,用户B对用户A的修改并不知情,此时,如果按照之前保存的是否可以发布的记录进行发布,容易造成将错误的攻击检测文本发布至线上环境。
有鉴于此,如图8所示,在所述将所述攻击检测文件发布至所述线上环境的步骤之前,所述方法还可以包括:
步骤S801:为误报检测后的各个所述攻击字符串设置属性标识,其中,误报的攻击字符串的属性标识用于表征其为非攻击类型,非误报的攻击字符串的属性标识用于表征其为攻击类型;
步骤S803:将标识后的各个所述攻击字符串作为补充样本,与所述初始测试样本共同组成所述测试用例的目标测试样本;
步骤S805:当接收到线上发布指令且误报检测的结果满足第二预设条件时,利用所述攻击检测文件对所述目标测试样本进行检测,得到拦截的目标测试样本;
步骤S807:在拦截的目标测试样本的属性标识满足第四预设条件时,执行所述将所述攻击检测文件发布至所述线上环境的步骤。
其中,步骤S805与步骤S703类似,如果所述攻击检测文件拦截的样本中攻击类型的样本数量与所述目标测试样本中攻击类型的样本数量的比值大于等于第二预设比例时,或者,所述攻击检测文件拦截的样本中非攻击类型的样本数量与所述目标测试样本中非攻击类型的样本数量的比值小于等于第三预设比例时,说明所述测试用例中测试样本的检测结果满足第四预设条件,将所述攻击检测文件发布至所述线上环境。
如此,可以避免在如前所述的特殊发布情形下将错误的攻击检测文本发布至线上环境,提高了线上环境中的攻击检测文本的可靠性。
在将攻击检测文件发布至所述线上环境之前,还需要利用软件如GitLab进行一个代码合并的操作,将所述数据库的旁路分支中的变更合并入线上分支中,以实现攻击检测文件在线上环境的发布。
优选的,步骤S803可以包括:
对各个所述攻击字符串进行相似度比较;
若任意两个所述攻击字符串的相似度大于等于预设相似度,确定相应的两个所述攻击字符串为相似的攻击字符串;
对相似的所述攻击字符串进行去重处理;
将去重处理后的所述攻击字符串作为补充样本,与所述初始测试样本共同组成所述测试用例的目标测试样本。
例如,标识后的攻击字符串为a、b和c,其中攻击字符串a和攻击字符串b的相似度大于等于预设相似度,通过对攻击字符串a和攻击字符串b进行去重处理,假设去除攻击字符串b,那么将保留攻击字符串a和攻击字符串c。
可选的,在去重处理后,还可以对去重处理后的所述攻击字符串进行抽样,并将抽样得到的所述攻击字符串作为补充样本,与所述初始测试样本共同组成所述测试用例的目标测试样本。
在实际应用中,通过在旁路环境中的去重和抽样处理,能够大大的减少相似攻击样本的数量,提高在旁路环境中进行拦截测试的效率。
在一些实施例中,在所述将所述攻击检测文件发布至所述线上环境的步骤之后,所述方法还可以包括:
监测在第三预设时间内在所述线上环境中拦截的网络攻击数据包的第四累计数量;
监测在所述第三预设时间内在所述旁路环境中检测的网络攻击数据包的第五累计数量;
在所述第四累计数量和所述第五累计数量的差值的绝对值大于等于第三预设阈值时,从所述线上环境中下线所述攻击检测文件。
在本发明实施例中,在将所述攻击检测文件上线至线上环境后,仍然监测一段时间范围内线上环境和旁路环境拦截的网络攻击数据包的累计数量的差值,在差值大于等于第三预设阈值时,说明上线的攻击检测文件可能仍存在错误,需要下线该攻击检测文件,以对攻击检测文件进行检查或修改;相反,如果差值小于第三预设阈值,则说明上线的攻击检测文件是可靠的。
其中,所述网络攻击数据包可以是指被各种规则拦截的数据包,也可以是指命中所述攻击检测文件中的某一功能函数的网络攻击数据包,例如,命中某一IP规则的网络攻击数据包,或命中某一域名规则的网络攻击数据包。
需要说明的是,所述第四累计数量和所述第五累计数量是基于同一标准下的网络攻击数据包的累计数量,例如,线上环境统计的是命中某一IP规则的网络攻击数据包的累计数量,那么旁路环境中统计的必须也是命中同一IP规则的网络攻击数据包的累计数量。
在实际应用中,在线上环境中上线攻击检测文件后,仍然对攻击检测文件在线上环境的表现进行一段时间的监测,当攻击检测文件在线上环境的表现与其在旁路环境中的表现较为一致时,才会真正将上线的攻击检测文件应用于实际业务,而当攻击检测文件在线上环境的表现与其在旁路环境中的表现的差异较大时,则从线上环境中下线该攻击检测文件,从而进一步保证了发布至线上环境的攻击检测文件的可靠性。
本发明实施例还提供了一种攻击检测文件的发布装置,请参见图9,所述装置包括:
网络攻击数据包获取模块910,用于利用发布至旁路环境中的攻击检测文件对所述旁路环境中的网络流量数据进行检测,得到至少一个网络攻击数据包;
攻击字符串获取模块920,用于在所述网络攻击数据包满足第一预设条件时,利用所述攻击检测文件提取所述网络攻击数据包中的攻击字符串;
误报检测模块930,用于对所述攻击字符串进行误报检测;
线上环境发布模块940,用于在接收到线上发布指令且误报检测的结果满足第二预设条件时,将所述攻击检测文件发布至所述线上环境。
在一些实施例中,所述装置还可以包括:
第一累计数量获取模块,用于在所述攻击检测文件中包括修改类型的第一功能函数时,获取所述第一功能函数在第一预设时间内在所述旁路环境中命中的网络攻击数据包的第一累计数量,所述修改类型用于表征所述攻击检测文件中的第一功能函数是在原功能函数的基础上修改得到的;
第二累计数量获取模块,用于获取所述原功能函数在所述第一预设时间内在所述旁路环境中命中的历史网络攻击数据包的第二累计数量;
判断模块,用于在所述第一累计数量与所述第二累计数量的差值的绝对值小于等于第一预设阈值时,确定所述网络攻击数据包满足第一预设条件。
在一些实施例中,所述装置还可以包括:
第三累计数量获取模块,用于在所述攻击检测文件中包括新增类型的第二功能函数时,获取所述第二功能函数在第二预设时间内在所述旁路环境中命中的网络攻击数据包的第三累计数量,所述新增类型用于表征所述攻击检测文件中的第二功能函数是新增得到的;
场景类型获取模块,用于获取与所述第二功能函数对应的场景类型,所述场景类型与所述第二功能函数预先建立有对应关系;
第二预设阈值确定模块,用于基于所述场景类型确定对应的第二预设阈值;
所述判断模块还用于在所述第三累计数量小于等于所述第二预设阈值时,确定所述网络攻击数据包满足第一预设条件。
在一些实施例中,所述误报检测模块可以包括:
网络攻击数据包判断子模块,用于判断所述攻击字符串所在的所述网络攻击数据包是否包括预设白特征,所述预设白特征用于表征具有其的网络数据包是可信的;
可信网络数据包确定子模块,用于在所述攻击字符串所在的所述网络攻击数据包包括预设白特征时,确定所述网络攻击数据包为可信网络数据包;
误报确定子模块,用于将从所述可信网络数据包中提取的攻击字符串确定为误报的攻击字符串。
在一些实施例中,所述误报检测模块还可以包括:
不用命中字段提取子模块,用于提取所述攻击字符串所在的所述网络攻击数据包中的不用命中字段,所述不用命中字段为所述网络攻击数据包中不会被所述攻击检测文件命中的字段;
离群攻击数据包判断子模块,用于基于任一所述网络攻击数据包中不用命中字段与其余所有所述网络攻击数据包中不用命中字段的相似度,判断任一所述网络攻击数据包是否为离群攻击数据包;
所述误报确定子模块还用于在任一所述网络攻击数据包为离群攻击数据包时,将从所述离群攻击数据包中提取的攻击字符串确定为误报的攻击字符串。
在一些实施例中,所述装置还可以包括:
数据获取模块,用于在接收到旁路发布指令时,获取测试用例和待发布的攻击检测文件,所述测试用例包括至少一个初始测试样本,所述初始测试样本均设置有属性标识,所述属性标识用于表征所述初始测试样本为非攻击类型或攻击类型;
初始测试样本检测模块,用于利用所述攻击检测文件对所述初始测试样本进行检测,得到拦截的初始测试样本;
旁路环境发布模块,用于在拦截的初始测试样本的属性标识满足第三预设条件时,将所述攻击检测文件发布至所述旁路环境。
在一些实施例中,所述装置还可以包括:
属性标识设置模块,用于为误报检测后的各个所述攻击字符串设置属性标识,其中,误报的攻击字符串的属性标识用于表征其为非攻击类型,非误报的攻击字符串的属性标识用于表征其为攻击类型;
目标测试样本生成模块,用于将标识后的各个所述攻击字符串作为补充样本,与所述初始测试样本共同组成所述测试用例的目标测试样本;
目标测试样本测试模块,用于在接收到线上发布指令且误报检测的结果满足第二预设条件时,利用所述攻击检测文件对所述目标测试样本进行检测,得到拦截的目标测试样本;
所述线上环境发布模块还用于在拦截的目标测试样本的属性标识满足第四预设条件时,执行所述将所述攻击检测文件发布至所述线上环境的步骤。
在一些实施例中,所述装置还可以包括:
第四累计数量监测模块,用于监测在第三预设时间内在所述线上环境中拦截的网络攻击数据包的第四累计数量;
第五累计数量监测模块,用于监测在所述第三预设时间内在所述旁路环境中检测的网络攻击数据包的第五累计数量;
攻击检测文件下线模块,用于在所述第四累计数量和所述第五累计数量的差值的绝对值大于等于第三预设阈值时,从所述线上环境中下线所述攻击检测文件。
本实施例还提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、至少一段程序、代码集或指令集由处理器加载并执行如本实施例上述任一方法。
本实施例还提供了一种设备,其结构图请参见图10,该设备1200可因配置或性能不同而产生比较大的差异,可以包括一个或一个以***处理器(central processingunits,CPU)1222(例如,一个或一个以上处理器)和存储器1232,一个或一个以上存储应用程序1242或数据1244的存储介质1230(例如一个或一个以上海量存储设备)。其中,存储器1232和存储介质1230可以是短暂存储或持久存储。存储在存储介质1230的程序可以包括一个或一个以上模块(图示未示出),每个模块可以包括对设备中的一系列指令操作。更进一步地,中央处理器1222可以设置为与存储介质1230通信,在设备1200上执行存储介质1230中的一系列指令操作。设备1200还可以包括一个或一个以上电源1226,一个或一个以上有线或无线网络接口1250,一个或一个以上输入输出接口1258,和/或,一个或一个以上操作***1241,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM等等。本实施例上述的任一方法均可基于图10所示的设备进行实施。
本说明书提供了如实施例或流程图所述的方法操作步骤,但基于常规或者无创造性的劳动可以包括更多或者更少的操作步骤。实施例中列举的步骤和顺序仅仅为众多步骤执行顺序中的一种方式,不代表唯一的执行顺序。在实际中的***或中断产品执行时,可以按照实施例或者附图所示的方法顺序执行或者并行执行(例如并行处理器或者多线程处理的环境)。
本实施例中所示出的结构,仅仅是与本申请方案相关的部分结构,并不构成对本申请方案所应用于其上的设备的限定,具体的设备可以包括比示出的更多或更少的部件,或者组合某些部件,或者具有不同的部件的布置。应当理解到,本实施例中所揭露的方法、装置等,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分仅仅为一种逻辑功能的划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元模块的间接耦合或通信连接。
基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,RandomAccess Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
本领域技术人员还可以进一步意识到,结合本说明书所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但这种实现不应认为超出本申请的范围。
以上所述,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。
Claims (17)
1.一种攻击检测文件的发布方法,其特征在于,所述方法包括:
利用发布至旁路环境中的攻击检测文件对所述旁路环境中的网络流量数据进行检测,得到至少一个网络攻击数据包,所述网络攻击数据包包含有导致网页服务器拒绝服务的网络攻击方式;
在所述网络攻击数据包满足第一预设条件时,利用所述攻击检测文件提取所述网络攻击数据包中的攻击字符串;
提取所述攻击字符串所在的所述网络攻击数据包中的不用命中字段,所述不用命中字段为所述网络攻击数据包中不会被所述攻击检测文件命中的字段;
基于任一所述网络攻击数据包中不用命中字段与其余所有所述网络攻击数据包中不用命中字段的相似度,确定所述网络攻击数据包中的离群攻击数据包;
根据从所述离群攻击数据包中提取的攻击字符串,得到误报检测结果;
在接收到线上发布指令且所述误报检测结果满足第二预设条件时,将所述攻击检测文件发布至线上环境。
2.根据权利要求1所述的发布方法,其特征在于,在所述网络攻击数据包满足第一预设条件时,利用所述攻击检测文件提取所述网络攻击数据包中的攻击字符串的步骤之前,所述方法还包括:
在所述攻击检测文件中包括修改类型的第一功能函数时,获取所述第一功能函数在第一预设时间内在所述旁路环境中命中的网络攻击数据包的第一累计数量,所述修改类型用于表征所述攻击检测文件中的第一功能函数是在原功能函数的基础上修改得到的;
获取所述原功能函数在所述第一预设时间内在所述旁路环境中命中的历史网络攻击数据包的第二累计数量;
在所述第一累计数量与所述第二累计数量的差值的绝对值小于等于第一预设阈值时,确定所述网络攻击数据包满足第一预设条件。
3.根据权利要求1所述的发布方法,其特征在于,在所述网络攻击数据包满足第一预设条件时,利用所述攻击检测文件提取所述网络攻击数据包中的攻击字符串的步骤之前,所述方法还包括:
在所述攻击检测文件中包括新增类型的第二功能函数时,获取所述第二功能函数在第二预设时间内在所述旁路环境中命中的网络攻击数据包的第三累计数量,所述新增类型用于表征所述攻击检测文件中的第二功能函数是新增得到的;
获取与所述第二功能函数对应的场景类型,所述场景类型与所述第二功能函数预先建立有对应关系;
基于所述场景类型确定对应的第二预设阈值;
在所述第三累计数量小于等于所述第二预设阈值时,确定所述网络攻击数据包满足第一预设条件。
4.根据权利要求1所述的发布方法,其特征在于,在所述利用所述攻击检测文件提取所述网络攻击数据包中的攻击字符串之后,所述方法还包括:
判断所述攻击字符串所在的所述网络攻击数据包是否包括预设白特征,所述预设白特征用于表征具有其的网络数据包是可信的;
若是,确定所述网络攻击数据包为可信网络数据包;
根据从所述可信网络数据包中提取的攻击字符串,得到所述误报检测结果。
5.根据权利要求1所述的发布方法,其特征在于,在所述利用发布至旁路环境中的攻击检测文件对所述旁路环境中的网络流量数据进行检测的步骤之前,所述方法还包括:
当接收到旁路发布指令时,获取测试用例和待发布的攻击检测文件,所述测试用例包括至少一个初始测试样本,所述初始测试样本均设置有属性标识,所述属性标识用于表征所述初始测试样本为非攻击类型或攻击类型;
利用所述攻击检测文件对所述初始测试样本进行检测,得到拦截的初始测试样本;
在拦截的初始测试样本的属性标识满足第三预设条件时,将所述攻击检测文件发布至所述旁路环境。
6.根据权利要求5所述的发布方法,其特征在于,在所述将所述攻击检测文件发布至线上环境的步骤之前,所述方法还包括:
为误报检测后的各个所述攻击字符串设置属性标识,其中,误报的攻击字符串的属性标识用于表征其为非攻击类型,非误报的攻击字符串的属性标识用于表征其为攻击类型;
将标识后的各个所述攻击字符串作为补充样本,与所述初始测试样本共同组成所述测试用例的目标测试样本;
当接收到线上发布指令且误报检测的结果满足第二预设条件时,利用所述攻击检测文件对所述目标测试样本进行检测,得到拦截的目标测试样本;
在拦截的目标测试样本的属性标识满足第四预设条件时,执行所述将所述攻击检测文件发布至线上环境的步骤。
7.根据权利要求6所述的发布方法,其特征在于,所述将标识后的各个所述攻击字符串作为补充样本,与所述初始测试样本共同组成所述测试用例的目标测试样本包括:
对各个所述攻击字符串进行相似度比较;
若任意两个所述攻击字符串的相似度大于等于预设相似度,确定相应的两个所述攻击字符串为相似的攻击字符串;
对相似的所述攻击字符串进行去重处理;
将去重处理后的所述攻击字符串作为补充样本,与所述初始测试样本共同组成所述测试用例的目标测试样本。
8.根据权利要求1所述的发布方法,其特征在于,在所述将所述攻击检测文件发布至所述线上环境的步骤之后,所述方法还包括:
监测在第三预设时间内在所述线上环境中拦截的网络攻击数据包的第四累计数量;
监测在所述第三预设时间内在所述旁路环境中检测的网络攻击数据包的第五累计数量;
在所述第四累计数量和所述第五累计数量的差值的绝对值大于等于第三预设阈值时,从所述线上环境中下线所述攻击检测文件。
9.一种攻击检测文件的发布装置,其特征在于,所述装置包括:
网络攻击数据包获取模块,用于利用发布至旁路环境中的攻击检测文件对所述旁路环境中的网络流量数据进行检测,得到至少一个网络攻击数据包,所述网络攻击数据包包含有导致网页服务器拒绝服务的网络攻击方式;
攻击字符串获取模块,用于在所述网络攻击数据包满足第一预设条件时,利用所述攻击检测文件提取所述网络攻击数据包中的攻击字符串;
不用命中字段提取模块,用于提取所述攻击字符串所在的所述网络攻击数据包中的不用命中字段,所述不用命中字段为所述网络攻击数据包中不会被所述攻击检测文件命中的字段;
离群攻击数据包确定模块,用于基于任一所述网络攻击数据包中不用命中字段与其余所有所述网络攻击数据包中不用命中字段的相似度,确定所述网络攻击数据包中的离群攻击数据包;
第一误报检测结果模块,用于根据从所述离群攻击数据包中提取的攻击字符串,得到误报检测结果;
线上环境发布模块,用于在接收到线上发布指令且所述误报检测结果满足第二预设条件时,将所述攻击检测文件发布至线上环境。
10.根据权利要求9所述的发布装置,其特征在于,所述装置还包括:
第一累计数量获取模块,用于在所述攻击检测文件中包括修改类型的第一功能函数时,获取所述第一功能函数在第一预设时间内在所述旁路环境中命中的网络攻击数据包的第一累计数量,所述修改类型用于表征所述攻击检测文件中的第一功能函数是在原功能函数的基础上修改得到的;
第二累计数量获取模块,用于获取所述原功能函数在所述第一预设时间内在所述旁路环境中命中的历史网络攻击数据包的第二累计数量;
第一判断模块,用于在所述第一累计数量与所述第二累计数量的差值的绝对值小于等于第一预设阈值时,确定所述网络攻击数据包满足第一预设条件。
11.根据权利要求9所述的发布装置,其特征在于,所述装置还包括:
第三累计数量获取模块,用于在所述攻击检测文件中包括新增类型的第二功能函数时,获取所述第二功能函数在第二预设时间内在所述旁路环境中命中的网络攻击数据包的第三累计数量,所述新增类型用于表征所述攻击检测文件中的第二功能函数是新增得到的;
场景类型获取模块,用于获取与所述第二功能函数对应的场景类型,所述场景类型与所述第二功能函数预先建立有对应关系;
第二预设阈值确定模块,用于基于所述场景类型确定对应的第二预设阈值;
第二判断模块,用于在所述第三累计数量小于等于所述第二预设阈值时,确定所述网络攻击数据包满足第一预设条件。
12.根据权利要求9所述的发布装置,其特征在于,所述装置还包括:
网络攻击数据包判断模块,用于判断所述攻击字符串所在的所述网络攻击数据包是否包括预设白特征,所述预设白特征用于表征具有其的网络数据包是可信的;
可信网络数据包确定模块,用于若是,确定所述网络攻击数据包为可信网络数据包;
第二误报检测结果模块,用于根据从所述可信网络数据包中提取的攻击字符串,得到所述误报检测结果。
13.根据权利要求9所述的发布装置,其特征在于,所述装置还包括:
数据获取模块,用于当接收到旁路发布指令时,获取测试用例和待发布的攻击检测文件,所述测试用例包括至少一个初始测试样本,所述初始测试样本均设置有属性标识,所述属性标识用于表征所述初始测试样本为非攻击类型或攻击类型;
初始测试样本检测模块,用于利用所述攻击检测文件对所述初始测试样本进行检测,得到拦截的初始测试样本;
旁路环境发布模块,用于在拦截的初始测试样本的属性标识满足第三预设条件时,将所述攻击检测文件发布至所述旁路环境。
14.根据权利要求13所述的发布装置,其特征在于,所述装置还包括:
属性标识设置模块,用于为误报检测后的各个所述攻击字符串设置属性标识,其中,误报的攻击字符串的属性标识用于表征其为非攻击类型,非误报的攻击字符串的属性标识用于表征其为攻击类型;
目标测试样本生成模块,用于将标识后的各个所述攻击字符串作为补充样本,与所述初始测试样本共同组成所述测试用例的目标测试样本;
目标测试样本测试模块,用于当接收到线上发布指令且误报检测的结果满足第二预设条件时,利用所述攻击检测文件对所述目标测试样本进行检测,得到拦截的目标测试样本;
所述线上环境发布模块还用于在拦截的目标测试样本的属性标识满足第四预设条件时,执行所述将所述攻击检测文件发布至所述线上环境的步骤。
15.根据权利要求14所述的发布装置,其特征在于,所述目标测试样本生成模块还用于:
对各个所述攻击字符串进行相似度比较;
若任意两个所述攻击字符串的相似度大于等于预设相似度,确定相应的两个所述攻击字符串为相似的攻击字符串;
对相似的所述攻击字符串进行去重处理;
将去重处理后的所述攻击字符串作为补充样本,与所述初始测试样本共同组成所述测试用例的目标测试样本。
16.根据权利要求9所述的发布装置,其特征在于,所述装置还包括:
第四累计数量监测模块,用于监测在第三预设时间内在所述线上环境中拦截的网络攻击数据包的第四累计数量;
第五累计数量监测模块,用于监测在所述第三预设时间内在所述旁路环境中检测的网络攻击数据包的第五累计数量;
攻击检测文件下线模块,用于在所述第四累计数量和所述第五累计数量的差值的绝对值大于等于第三预设阈值时,从所述线上环境中下线所述攻击检测文件。
17.一种计算机存储介质,其特征在于,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、至少一段程序、代码集或指令集由处理器加载并执行如权利要求1至8任一项所述的攻击检测文件的发布方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110025978.3A CN114760083B (zh) | 2021-01-08 | 2021-01-08 | 一种攻击检测文件的发布方法、装置及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110025978.3A CN114760083B (zh) | 2021-01-08 | 2021-01-08 | 一种攻击检测文件的发布方法、装置及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114760083A CN114760083A (zh) | 2022-07-15 |
CN114760083B true CN114760083B (zh) | 2024-04-12 |
Family
ID=82325695
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110025978.3A Active CN114760083B (zh) | 2021-01-08 | 2021-01-08 | 一种攻击检测文件的发布方法、装置及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114760083B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116055222B (zh) * | 2023-03-23 | 2023-06-16 | 北京长亭未来科技有限公司 | 一种防止攻击文件绕过waf检测的方法与装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107682315A (zh) * | 2017-09-05 | 2018-02-09 | 杭州迪普科技股份有限公司 | 一种sql注入攻击检测模式设置方法及装置 |
CN111259399A (zh) * | 2020-04-28 | 2020-06-09 | 深圳开源互联网安全技术有限公司 | 用于web应用的动态检测漏洞攻击的方法及*** |
CN111796857A (zh) * | 2020-06-30 | 2020-10-20 | 苏州三六零智能安全科技有限公司 | 热补丁发布方法、装置、设备及存储介质 |
CN112134877A (zh) * | 2020-09-22 | 2020-12-25 | 北京华赛在线科技有限公司 | 网络威胁检测方法、装置、设备及存储介质 |
CN112131578A (zh) * | 2020-09-30 | 2020-12-25 | 腾讯科技(深圳)有限公司 | 攻击信息预测模型的训练方法、装置、电子设备及存储介质 |
-
2021
- 2021-01-08 CN CN202110025978.3A patent/CN114760083B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107682315A (zh) * | 2017-09-05 | 2018-02-09 | 杭州迪普科技股份有限公司 | 一种sql注入攻击检测模式设置方法及装置 |
CN111259399A (zh) * | 2020-04-28 | 2020-06-09 | 深圳开源互联网安全技术有限公司 | 用于web应用的动态检测漏洞攻击的方法及*** |
CN111796857A (zh) * | 2020-06-30 | 2020-10-20 | 苏州三六零智能安全科技有限公司 | 热补丁发布方法、装置、设备及存储介质 |
CN112134877A (zh) * | 2020-09-22 | 2020-12-25 | 北京华赛在线科技有限公司 | 网络威胁检测方法、装置、设备及存储介质 |
CN112131578A (zh) * | 2020-09-30 | 2020-12-25 | 腾讯科技(深圳)有限公司 | 攻击信息预测模型的训练方法、装置、电子设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN114760083A (zh) | 2022-07-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110855676B (zh) | 网络攻击的处理方法、装置及存储介质 | |
CN110798472B (zh) | 数据泄露检测方法与装置 | |
KR101327317B1 (ko) | Sap 응용 트래픽 분석 및 모니터링 장치 및 방법, 이를 이용한 정보 보호 시스템 | |
KR101010302B1 (ko) | Irc 및 http 봇넷 보안 관제를 위한 관리 시스템 및 그 방법 | |
CN112468520B (zh) | 一种数据检测方法、装置、设备及可读存储介质 | |
CN111651757A (zh) | 攻击行为的监测方法、装置、设备及存储介质 | |
CN108154029A (zh) | 入侵检测方法、电子设备和计算机存储介质 | |
JP2016508353A (ja) | ネットワークメタデータを処理する改良されたストリーミング方法およびシステム | |
CN115134099B (zh) | 基于全流量的网络攻击行为分析方法及装置 | |
US20180302426A1 (en) | Security device using transaction information collected from web application server or web server | |
CN111314381A (zh) | 安全隔离网关 | |
CN114553537A (zh) | 一种面向工业互联网的异常流量监测方法和*** | |
CN113411295A (zh) | 基于角色的访问控制态势感知防御方法及*** | |
Wang et al. | Behavior‐based botnet detection in parallel | |
CN117527412A (zh) | 数据安全监测方法及装置 | |
KR101658450B1 (ko) | 웹 애플리케이션 서버로부터 수집된 트랜잭션 정보 및 고유세션 id 통한 사용자 식별을 이용한 보안장치. | |
KR101658456B1 (ko) | 웹 애플리케이션 서버로부터 수집된 트랜잭션 정보를 이용한 보안장치 | |
CN114760083B (zh) | 一种攻击检测文件的发布方法、装置及存储介质 | |
CN116708033B (zh) | 终端安全检测方法、装置、电子设备及存储介质 | |
CN116633594B (zh) | Flamingo网关安全*** | |
CN111193700B (zh) | 一种安全防护方法、安全防护装置和存储介质 | |
KR101650475B1 (ko) | 웹 서버로부터 수집된 트랜잭션 정보를 이용한 보안장치 | |
CN113778709B (zh) | 接口调用方法、装置、服务器及存储介质 | |
KR102444922B1 (ko) | 스마트그리드에서 보안상황 인식을 위한 지능형 접근제어 장치 | |
CN115633359A (zh) | Pfcp会话安全检测方法、装置、电子设备和存储介质 |
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 |