攻击拦截方法和装置、计算设备及存储介质制造方法及图纸

技术编号:20926138 阅读:25 留言:0更新日期:2019-04-20 11:49
本说明书提供一种攻击拦截方法和装置、计算设备及存储介质,其中该攻击拦截方法包括:对当前访问请求进行词法分析得到对应的令牌序列;将所述令牌序列与黑名单令牌集合进行匹配,根据匹配结果确定所述当前访问请求是否被拦截。

Attack interception methods and devices, computing devices and storage media

This specification provides an attack interception method and device, computing device and storage medium, wherein the attack interception method includes: lexical analysis of the current access request to obtain the corresponding token sequence; matching the token sequence with the blacklist token set to determine whether the current access request is intercepted according to the matching results.

【技术实现步骤摘要】
攻击拦截方法和装置、计算设备及存储介质
本说明书涉及互联网
,特别涉及一种攻击拦截方法和装置、计算设备及存储介质。
技术介绍
传统的XSS(CrossSiteScripting,跨站脚本攻击)攻击识别,往往是基于字符串黑名单特征,这种方案下很容易被攻击者用各种方式绕过。
技术实现思路
有鉴于此,本说明书实施例提供了一种攻击拦截方法和装置、计算设备及存储介质,以解决现有技术中存在的技术缺陷。根据本说明书实施例的第一方面,提供了一种攻击拦截方法,包括:对当前访问请求进行词法分析得到对应的令牌序列;将所述令牌序列与黑名单令牌集合进行匹配,根据匹配结果确定所述当前访问请求是否被拦截。根据本说明书实施例的第二方面,提供了一种攻击拦截装置,包括:词法分析器,被配置为对当前访问请求进行词法分析得到对应的令牌序列;匹配器,被配置为将所述令牌序列与黑名单令牌集合进行匹配,根据匹配结果确定所述当前访问请求是否被拦截。根据本说明书实施例的第三方面,提供了一种计算设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机指令,所述处理器执行所述指令时实现所述的攻击拦截方法的步骤。根据本说明书实施例的第四方面,提供了一种计算机可读存储介质,其存储有计算机指令,该指令被处理器执行时实现所述的攻击拦截方法的步骤。本说明书实施例通过采用词法分析将当前访问请求转换成token序列,将得到的令牌序列与黑名单令牌集合进行匹配,根据匹配结果确定所述当前访问请求是否被拦截,有效地提高了攻击识别的精确度,降低了被攻击者用各种方式绕过的可能性,并且降低了误拦的几率。附图说明图1是示出了根据本说明书一实施例的计算设备100的结构框图;图2是示出了根据本说明书一实施例的攻击拦截方法的示意性流程图;图3是示出了根据本说明书另一实施例的攻击拦截方法的示意性流程图;图4是示出了根据本说明书另一实施例的攻击拦截装置的示意性模块图。具体实施方式在下面的描述中阐述了很多具体细节以便于充分理解本说明书。但是本说明书能够以很多不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本说明书内涵的情况下做类似推广,因此本说明书不受下面公开的具体实施的限制。图1是示出了根据本说明书一实施例的计算设备100的结构框图。该计算设备100的部件包括但不限于存储器110和处理器120。处理器120与存储器110通过总线130相连接,数据库150用于保存用户访问数据。计算设备100还包括接入设备140,接入设备140使得计算设备100能够经由一个或多个网络160通信。这些网络的示例包括公用交换电话网(PSTN)、局域网(LAN)、广域网(WAN)、个域网(PAN)或诸如因特网的通信网络的组合。接入设备140可以包括有线或无线的任何类型的网络接口(例如,网络接口卡(NIC))中的一个或多个,诸如IEEE802.11无线局域网(WLAN)无线接口、全球微波互联接入(Wi-MAX)接口、以太网接口、通用串行总线(USB)接口、蜂窝网络接口、蓝牙接口、近场通信(NFC)接口,等等。在本说明书的一个实施例中,计算设备100的上述以及图1中未示出的其他部件也可以彼此相连接,例如通过总线。应当理解,图1所示的计算设备结构框图仅仅是出于示例的目的,而不是对本说明书范围的限制。本领域技术人员可以根据需要,增添或替换其他部件。计算设备100可以是任何类型的静止或移动计算设备,包括移动计算机或移动计算设备(例如,平板计算机、个人数字助理、膝上型计算机、笔记本计算机、上网本等)、移动电话(例如,智能手机)、可佩戴的计算设备(例如,智能手表、智能眼镜等)或其他类型的移动设备,或者诸如台式计算机或PC的静止计算设备。计算设备100还可以是移动式或静止式的服务器。其中,处理器120可以执行图2所示攻击拦截方法中的步骤。图2是示出了根据本说明书一实施例的攻击拦截方法的示意性流程图,所述攻击拦截方法可以应用于Web应用(如浏览器)的防火墙中,所述方法包括步骤202和步骤204。步骤202:对当前访问请求进行词法分析得到对应的令牌序列。一种实现方式中,所要拦截的攻击是XSS攻击。XSS攻击是一种黑客常用的针对Web应用的攻击手法。通过采用词法分析可以将当前访问请求由字符串文本转换成token(令牌)序列。通过采用词法分析方法,可以从Web应用解析HTML(超文本标记语言)的视角对XSS漏洞攻击进行解析得到token序列。传统字符串匹配的方式难以有效防御XSS漏洞的原因在于,攻击者构造的payload(利用某个漏洞的特定字符串)只要在浏览器中可以正常执行,则能够利用漏洞。攻击者构造payload的发挥空间很大,用字符串匹配的方式很难穷举出payload的所有模式。但是不管攻击者怎样变换payload,它最终都是被浏览器按照有限状态机的规则解析执行的,浏览器总是会将payload内容解析成token序列,不管payload在字符串层面做了多少针对性的绕过措施,解析成token序列后内容都是可预期的,可以用固定的模式来描述,这就解决了传统基于字符串匹配的痛点。例如,以通过把SQL命令插入到Web表单提交的查询字符串,最终达到欺骗服务器执行恶意的SQL命令的SQL注入类型的XSS攻击为例,其中payload1和payload2是针对同一XSS漏洞进行攻击的不同字符串,但二者最终被解析后的标记token相同;payload3和payload4是针对另一XSS漏洞进行攻击的不同字符串,如下所示:payload1:字符串1token1:标签1、标签2、标签3。payload2:字符串2token1:标签1、标签2、标签3。payload3:字符串3token2:标签4、标签5;payload4:字符串4token2:标签4、标签5。从上面的例子可以看出,不同的payload1和payload2均被解析为相同的token1,不同的payload3和payload4均被解析为相同的token2。即针对相同的漏洞,多种不同的payload字符串均会被解析成相同的token序列。步骤204:将所述令牌序列与黑名单令牌集合进行匹配,根据匹配结果确定所述当前访问请求是否被拦截。一种实现方式中,所述黑名单令牌集合通过以下步骤得到:根据已知漏洞对应业务的URL链接的重要级别或被攻击的危害级别,确定待构建黑名单令牌集合的稳定级别,所述稳定级别与URL链接的重要级别或被攻击的危害级别具有对应关系,不同的稳定级别对应不同的防攻击策略;根据所确定的待构建黑名单令牌集合的稳定级别,从已知漏洞的黑名单令牌序列中选择与稳定级别对应的黑名单令牌序列添加至所确定稳定级别的黑名单令牌集合中。本实例根据已知漏洞对应业务的URL链接的重要级别或被攻击的危害级别,确定待构建黑名单令牌集合的稳定级别,使得对漏洞的防护策略可以根据实际的需要进行定制。一种实现方式中,所述防攻击策略包括是否允许出现令牌以及在允许的情况下是否允许出现设定的令牌。一种实现方式中,所述黑名单令牌序列通过以下方式得到:从历史攻击请求中提取攻击内容;对所述攻击内容进行词法分析得到对应的黑名单令牌序列。由于不管攻击者怎样变换payload,它最终都是被Web应用按照有限状态机的规本文档来自技高网...

【技术保护点】
1.一种攻击拦截方法,包括:对当前访问请求进行词法分析得到对应的令牌序列;将所述令牌序列与黑名单令牌集合进行匹配,根据匹配结果确定所述当前访问请求是否被拦截。

【技术特征摘要】
1.一种攻击拦截方法,包括:对当前访问请求进行词法分析得到对应的令牌序列;将所述令牌序列与黑名单令牌集合进行匹配,根据匹配结果确定所述当前访问请求是否被拦截。2.根据权利要求1所述的方法,其中所述黑名单令牌集合通过以下步骤得到:根据已知漏洞对应业务的URL链接的重要级别或被攻击的危害级别,确定待构建黑名单令牌集合的稳定级别,所述稳定级别与URL链接的重要级别或被攻击的危害级别具有对应关系,不同的稳定级别对应不同的防攻击策略;根据所确定的待构建黑名单令牌集合的稳定级别,从已知漏洞的黑名单令牌序列中选择与稳定级别对应的黑名单令牌序列添加至所确定稳定级别的黑名单令牌集合中。3.根据权利要求2所述的方法,其中所述防攻击策略包括是否允许出现令牌以及在允许的情况下是否允许出现设定的令牌。4.根据权利要求2所述的方法,其中所述黑名单令牌序列通过以下方式得到:从历史攻击请求中提取攻击内容;对所述攻击内容进行词法分析得到对应的黑名单令牌序列。5.根据权利要求3所述的方法,其中所述将所述令牌序列与黑名单令牌集合进行匹配,根据匹配结果确定所述当前访问请求是否被拦截包括:从所述当前访问请求中提取所请求业务的URL链接;根据预先设置的策略确定所述当前访问请求中所请求业务的URL链接的重要级别或被攻击的危害级别;根据所确定的URL链接的重要级别或被攻击的危害级别,将所述令牌序列与相应稳定级别的黑名单令牌集合进行匹配,根据匹配结果确定所述用户访问请求是否被拦截。6.根据权利要求5所述的方法,其中所述将所述令牌序列与相应稳定级别的黑名单令牌集合进行匹配,根据匹配结果确定所述用户访问请求是否被拦截包括:在所述防攻击策略是不允许出现令牌的情况下,判断所述令牌序列中是否包含令牌,若判断结果为是则拦截所述当前访问请求,否则,则不对所述当前访问请求进行拦截。7.根据权利要求5所述的方法,其中所述将所述令牌序列与相应稳定级别的黑名单令牌集合进行匹配,根据匹配结果确定所述用户访问请求是否被拦截包括:在所述防攻击策略是允许出现令牌但不允许出现设定的令牌的情况下,判断所述令牌序列中是否包含所述设定的令牌,若判断结果为是则拦截所述当前访问请求,否则,则不对所述当前访问请求进行拦截,其中所述设定的令牌是具有潜在风险的令牌。8.根据权利要求5所述的方法,其中所述将所述令牌序列与相应稳定级别的黑名单令牌集合进行匹配,根据匹配结果确定所述用户访问请求是否被拦截包括:在所述防攻击策略是允许出现令牌且允许出现设定的令牌的情况下,判断所述令牌序列中是否包含所述设定的令牌,若判断结果为否则不对所述当前访问请求进行拦截;如果判断结果为是则进一步检验所述设定的令牌的属性值和内容值,若所述属性值在设定的属性允许值范围内并且所述内容值在设定的内容允许值范围内则不拦截所述当前访问请求,否则,则拦截所述当前访问请求。9.根据权利要求2所述的方法,其中在所述根据所确定的待构建黑名单令牌集合的稳定级别,从已知漏洞的黑名单令牌序列中选择与稳定级别对应的黑名单令牌序列添加至所确定稳定级别的黑名单令牌集合中之后还包括:根据新发现的漏洞对所述黑名单令牌集合进行定期或不定期的更新。10.根据权利要求2所述的方法,其中在所述根据已知漏洞的黑名单令牌序列和对应业务的URL链接的重要级别或被攻击的危害级别,构建对应的防攻击策略,将所述防攻击策略添加到对应稳定级别的黑名单令牌集合中之后还包括:对指定的已知漏洞的防攻击策略进行调整。11.根...

【专利技术属性】
技术研发人员:刘梓溪
申请(专利权)人:阿里巴巴集团控股有限公司
类型:发明
国别省市:开曼群岛,KY

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1