一种主动干扰策略的Web攻击防御方法与流程

文档序号:25898071发布日期:2021-07-16 20:28阅读:140来源:国知局
一种主动干扰策略的Web攻击防御方法与流程
一种主动干扰策略的web攻击防御方法
技术领域
1.本发明涉及网络安全技术领域,具体涉及一种主动干扰策略的web攻击防御方法。


背景技术:

2.随着服务器计算能力的增加以及云计算的普及,个人、企业等均有了更多的机会在互联网中开放自己的服务,其中,绝大多数的服务均为web服务。web技术的发展促进了各类web应用的诞生,但同时,针对web应用的网络攻击事件也层出不穷。各式各样的攻击严重地危害了服务的安全与可靠性,由此也诞生了各种防护措施。
3.针对web攻击,目前较为通用的解决方法便是使用waf(webapplicationfirewall),即web应用防火墙。waf可以实时检测访问者到web服务的流量,并能根据相关规则对攻击行为进行阻断,但实际上攻击者依然可以通过变换自己的攻击载荷达到绕过waf的效果,从而达到攻击web服务的目的。


技术实现要素:

4.(一)要解决的技术问题
5.本发明要解决的技术问题是:如何在现有web防御的技术上更进一步地阻碍攻击者的恶意行为。
6.(二)技术方案
7.为了解决上述技术问题,本发明提供了一种主动干扰策略的web攻击防御方法,包括以下步骤:
8.步骤1、确定客户端脚本的影响范围
9.通过客户端访问各种web服务、执行各种函数时,监控设备的性能指标,确定其中一些性能指标为目标影响范围,作为客户端脚本的影响范围;
10.步骤2、采集客户端api函数
11.采集会对设备造成影响的api函数,并进行筛选、验证,获取最终符合要求的api函数;
12.步骤3、编码部署
13.将采集到的api函数部署到服务端,这些函数可以以单一形式或组合形式被利用,调试好对应的参数,在确定攻击者在对web服务进行攻击时,将调试好脚本代码嵌入到正常web页面中,最终即可影响到攻击者的设备;
14.步骤4、攻击者触发后,执行以下步骤:
15.(1)攻击者的确认
16.初次攻击的确认机制为匹配特征载荷或敏感文件访问检测;
17.在确认为攻击者后,记录攻击者的特征,特征包括客户端访问请求头中的参数;在服务端,还记录下客户端的远程ip作为特征;另外,服务端还向客户端返回token,设置localstorage,以确定攻击者的唯一身份;
18.(2)主动干扰策略防御的启动
19.在防御触发后,记录攻击者的特征,之后向匹配该特征的任何访问请求中嵌入对应的脚本代码,最终攻击者客户端设备的性能相应下降。
20.优选地,步骤1中所确定的目标影响范围包括以下几个指标:cpu占用率、内存占用率、磁盘占用率、网络吞吐占用率。
21.优选地,步骤2具体为:
22.收集客户端api函数:在客户端所开放的所有api函数中,对与数值计算、资源访问相关的函数均进行收集,具体是与计算资源、存储资源、内存资源、网络资源相关的函数;
23.筛选客户端api函数:对每个收集到的函数进行进一步的筛选,查看其是否需要客户端的手工授权,对于需要与攻击者交互、由其授权的函数,则进行丢弃,剩余的函数能够在客户端执行;
24.验证:尝试单独地利用剩余的函数,查看是否能进行预设量资源的消耗,每一个可产生预设量资源占用的api函数都可进行最终的利用。
25.优选地,记录的攻击者的特征包括cookie、accept、user

agent、accept

encoding、accept

language。
26.优选地,主动干扰策略防御的启动之后,若同一特征在预设时间内未对web服务进行其他恶意请求,则在服务端取消对该特征的主动干扰防御。
27.优选地,防御过程中,所有利用到的api函数均无限循环异步执行。
28.优选地,步骤2中,最终确定的被利用的api函数包括:1)对超大数值的运算,包括加密、编码;2)建立大量隐藏画布、多媒体资源;3)加载远程资源于本地,包括视频资源、图片资源、音频资源。
29.优选地,最终攻击者客户端设备的性能相应下降,包括cpu占用率升高、内存占用率升高、磁盘占用率升高、网络吞吐占用率升高,影响其正常的使用。
30.优选地,所述脚本代码包括javascript以及webassembly代码。
31.本发明还提供了一种所述的方法在网络安全技术领域中的应用。
32.(三)有益效果
33.本发明提出一种对web攻击者采用主动干扰策略的防御方法,能够更进一步地阻碍恶意攻击者对web服务的访问。通过在web服务返回的前端界面中插入相应的脚本代码,调用攻击者客户端提供的api函数,进行大量无用的运算、存储等,消耗攻击者的设备资源。同时还可采集相关指纹、环境信息,访问、操作攻击者本地的资源,可方便日后的取证调查。目前的实验证明,通过该方法可以明显造成攻击者客户端所在设备的性能下降,可以有效阻止攻击者对web发起的恶意请求,改进当前已有的防御方法。
34.可以看出,本发明具有如下技术效果:
35.(1)由于waf等其他防御措施无法完全避免攻击者的bypass、绕过攻击,所以本发明可以进一步地补充现有的防御措施,除非攻击者关闭网页,否则将一直对其设备进行大量资源的消耗,进而达到防御效果。
36.(2)由于web服务端仅在向攻击者客户端返回的界面中嵌入了相应的代码,所以对我们自己服务端的消耗可以忽略不计,减少自己的性能消耗。
附图说明
37.图1为本发明的主动干扰策略的web攻击防御方法部分流程图,其给出了本发明的建立、部署流程设计,涉及到主动干扰策略防御前的准备过程;
38.图2为有效部署防御后,攻击者触发后的流程图,其给出了攻击者触发本防御方法后的详细机制与流程。
具体实施方式
39.为使本发明的目的、内容、和优点更加清楚,下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。
40.本发明的目的在于提供一种主动干扰web攻击者的方法。本方法能够在现有web防御的技术上更进一步地阻碍攻击者的恶意行为。通过web客户端提供的api,利用前端的脚本代码来模拟攻击者的身份,在攻击者的客户端本地进行额外的操作,如各种无限循环的函数运算,发起其他的url访问请求,缓存大量无意义的数据文件等,此举动会严重消耗攻击者设备的性能,最终达到阻碍攻击者的目的。本发明地方法是面向常规互联网环境下针对web攻击者的防御手段。
41.本发明首先收集客户端提供的对资源占用较大的api函数,包括计算资源、存储资源、内存资源、网络资源等,然后筛选其中无需客户端主动授权的功能,保留那些可以直接执行的api函数,之后验证各个api对客户端设备性能的影响效果,最后利用符合要求的api编码后部署于服务端,等待攻击者的触发。
42.图1是本方案实施的部分流程图,涉及到主动干扰策略防御前的准备过程。具体包括以下内容:
43.步骤1、确定客户端脚本的影响范围
44.通过客户端访问各种web服务、执行各种函数时,监控设备的性能指标,确定波动较大的为目标影响范围。本实施例中所确定的目标影响范围包括以下几个指标:
45.(1)cpu占用率
46.任何代码的执行都将伴随着cpu运算的占用,由此各类计算函数、绘图函数都可进行无限的循环执行,同时将参数设为较大的数据,可造成大量cpu占用率的提升。
47.(2)内存占用率
48.当函数以递归的形式调用时,或者在同一页面渲染复杂的元素,内存的占用率将显著上升。
49.(3)磁盘占用率(本地存储占用率)
50.某些函数可以将远程资源加载到本地,由于客户端的缓存策略,在未手工清理记录的情况下,数据将会一直占用着磁盘资源,从而导致攻击者磁盘持久的消耗。
51.(4)网络吞吐占用率(网络io)
52.与url交互的函数会占用设备的网络吞吐,可选的方式主要为get、post等方法,利用其与各种url进行长时间的数据交互会大幅度地减少攻击者网络的性能。
53.(5)其他
54.此外,还可以利用攻击者的设备作为跳板,对其本地、内网的其他资源进行探测,如对内网其他web资源的探测,并将结果返回到我们的服务端。即使攻击者未使用可渲染客
户端,也可向其返回大量垃圾数据,从而造成一定的影响。
55.步骤2、采集客户端api函数
56.采集会对设备造成明显影响的api函数,并进行筛选,获取最终符合要求的api函数。
57.(1)收集
58.在客户端所开放的所有api函数中,对与数值计算、资源访问相关的函数(具体是与计算资源、存储资源、内存资源、网络资源相关的函数)均进行收集。
59.(2)筛选
60.对每个收集到的函数进行进一步的筛选,查看其是否需要客户端的手工授权,对于需要与攻击者交互、由其授权的函数,则进行丢弃,剩余的函数应确保其容易在客户端执行,之后可在下一步进行进一步地验证。
61.(3)验证
62.尝试单独地利用剩余的函数,查看是否能进行大量资源的消耗,每一个可产生大量资源占用的函数都可进行最终的利用。
63.步骤3、编码部署
64.将采集到的api函数部署到服务端,可以以单一形式或组合形式来利用这些函数。调试好对应的参数,在确定攻击者在对web服务进行攻击时,将调试好脚本代码(javascript以及webassembly代码)嵌入到正常web页面中,最终即可影响到攻击者的设备。
65.本步骤中,调试采集到的api函数,设置好对应参数后,部署于服务端,等待攻击者的触发,整个触发流程如图2所示。图2是攻击者触发本防御方法后的详细机制,涉及到了各类函数的执行、达成的效果、对攻击者的影响等。
66.步骤4、攻击者触发后执行以下步骤:
67.(1)攻击者的确认
68.初次攻击的确认类似其他防御方法的攻击确认机制,如匹配特征载荷、敏感文件访问检测等。
69.在确认其为攻击者后,记录攻击者的特征,以确保不会误伤其他正常客户端。通用的特征为客户端访问请求头中的参数,如cookie、accept、user

agent、accept

encoding、accept

language;在服务端,还记录下客户端的远程ip作为特征;另外,服务端还可向客户端返回token,设置localstorage等,根据此可确定攻击者的唯一身份。
70.(2)主动干扰策略防御的启动
71.在防御触发后,记录攻击者的特征,之后向匹配该特征的任何访问请求中嵌入对应的脚本代码即可。
72.主动干扰策略防御的取消:若同一特征长时间地未对web服务进行其他恶意请求,则在服务端取消对该特征的主动干扰防御。
73.最终的影响:
74.所有利用到的api函数均可无限循环异步执行,本实施例中利用的方法为:1)对超大数值的运算,如加密、编码等;2)建立大量隐藏画布、多媒体资源等;3)加载远程资源于本地,包括视频资源、图片资源、音频资源等。
75.最终攻击者客户端设备的性能将大幅度下降,包括cpu占用率升高、内存占用率升高、磁盘占用率升高、网络吞吐占用率升高等,影响其正常的使用,实现最终的主动干扰策略的防御目的。
76.以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和变形,这些改进和变形也应视为本发明的保护范围。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1