本发明涉及安全通信,尤其涉及一种web应用的安全防护方法、装置、电子设备及介质。
背景技术:
1、随着web应用日益成为系统服务的主要途径,它们所面临的潜在恶意攻击不断增加,其安全性问题变得尤为突出。
2、现有技术中,web应用安全防护技术总体上分为:基于特征的防护技术,通过分析网络流量、web页面内容或用户行为来识别并拦截已知的攻击模式或恶意代码特征;基于补丁的防护技术,通过定期更新操作系统和应用程序的补丁来修复安全漏洞,以防止攻击者利用这些漏洞发起攻击。
3、然而,这些web应用安全防护技术主要依赖于已知的攻击特征或漏洞信息,无法有效防御未知的0day漏洞(也可称为零日漏洞,一般指还未被厂商公开宣布的漏洞)攻击和自动化攻击,且需要不断更新特征库和补丁,防护成本较高,具有较高的误报率,影响用户体验,降低了web应用安全防护的可靠性。
技术实现思路
1、本发明提供了一种web应用的安全防护方法、装置、电子设备及介质,以解决无法有效防御未知的0day漏洞攻击和自动化攻击、防护成本高、误报率高以及web应用安全防护的可靠性低的问题。
2、根据本发明实施例的一方面,提供了一种web应用的安全防护方法,由应用客户端执行,包括:
3、在响应于用户针对前端页面执行的业务操作,触发生成web网页访问请求时,采用本地存储的动态令牌算法对前端页面执行哈希运算,得到包含动态令牌的哈希串;其中,前端页面由应用服务器定期生成并提供给应用客户端,且应用服务器在每次生成前端页面时,在前端页面中的随机位置处动态添加随机长度的随机字段,以供应用客户端生成动态令牌;根据web网页访问请求和哈希串打包得到请求数据包,采用加密算法对请求数据包进行加密得到加密数据包,并将加密数据包发送至应用服务器;其中,应用服务器前端的安全校验系统,用于对接收到的加密数据包进行合法性校验,并在合法性校验通过后,指示应用服务器将与web网页访问请求对应的目标网页中的动态网页内容提供给应用客户端。
4、根据本发明实施例的另一方面,还提供了一种web应用的安全防护方法,由应用服务器前端的安全校验系统执行,包括:
5、对应用客户端发送至应用服务器的待验证数据包进行拦截,并按照预设的解密算法对待验证数据包进行解密,得到至少一项待验证信息;待验证信息中包含待验证动态令牌的哈希串和web网页访问请求;对至少一项待验证信息进行合法性验证,并在合法性验证通过后,指示应用服务器将与web网页访问请求对应的目标网页中的动态网页内容提供给应用客户端,以供应用客户端进行目标网页的展示;其中,应用服务器将动态网页内容预先进行动态封装和混淆操作后,提供给应用客户端。
6、根据本发明实施例的另一方面,还提供了一种web应用的安全防护装置,由应用客户端执行,包括:
7、哈希串获取模块,用于在响应于用户针对前端页面执行的业务操作,触发生成web网页访问请求时,采用本地存储的动态令牌算法对前端页面执行哈希运算,得到包含动态令牌的哈希串;其中,前端页面由应用服务器定期生成并提供给应用客户端,且应用服务器在每次生成前端页面时,在前端页面中的随机位置处动态添加随机长度的随机字段,以供应用客户端生成动态令牌;加密数据包获取模块,用于根据web网页访问请求和哈希串打包得到请求数据包,采用加密算法对请求数据包进行加密得到加密数据包,并将加密数据包发送至应用服务器;其中,应用服务器前端的安全校验系统,用于对接收到的加密数据包进行合法性校验,并在合法性校验通过后,指示应用服务器将与web网页访问请求对应的目标网页中的动态网页内容提供给应用客户端。
8、根据本发明实施例的另一方面,还提供了一种web应用的安全防护装置,由应用服务器前端的安全校验系统执行,包括:
9、待验证数据包揭秘模块,用于对应用客户端发送至应用服务器的待验证数据包进行拦截,并按照预设的解密算法对待验证数据包进行解密,得到至少一项待验证信息;待验证信息中包含待验证动态令牌的哈希串和web网页访问请求;动态网页内容提供模块,用于对至少一项待验证信息进行合法性验证,并在合法性验证通过后,指示应用服务器将与web网页访问请求对应的目标网页中的动态网页内容提供给应用客户端,以供应用客户端进行目标网页的展示;其中,应用服务器将动态网页内容预先进行动态封装和混淆操作后,提供给应用客户端。
10、根据本发明实施例的另一方面,还提供了一种电子设备,所述电子设备包括:
11、至少一个处理器;以及
12、与所述至少一个处理器通信连接的存储器;其中,
13、所述存储器存储有可被所述至少一个处理器执行的计算机程序,所述计算机程序被所述至少一个处理器执行,以使所述至少一个处理器能够执行本发明任一实施例所述的web应用的安全防护方法。
14、根据本发明实施例的另一方面,还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使处理器执行时实现本发明任一实施例所述的web应用的安全防护方法。
15、本发明实施例的技术方案,首先通过应用客户端在响应于用户针对前端页面执行的业务操作,触发生成web网页访问请求时,采用本地存储的动态令牌算法对添加有随机字段的前端页面执行哈希运算,得到包含动态令牌的哈希串;然后根据web网页访问请求和哈希串打包得到请求数据包,采用加密算法对请求数据包进行加密得到加密数据包,并将加密数据包发送至应用服务器前端的安全校验系统,通过客户端生成一次性的、随机变化的动态令牌并由应用服务器前端的安全校验系统进行校验,确定网页内容是否被篡改,验证请求的合法性,避免依赖已知特征或打补丁的方法,提升了对0day漏洞和自动化攻击的防御能力,降低了防护成本,作为一种主动防御手段,不依赖于固定的规则匹配,降低了误报率,提升了用户体验,提高了web应用安全防护的可靠性。
16、应当理解,本部分所描述的内容并非旨在标识本发明的实施例的关键或重要特征,也不用于限制本发明的范围。本发明的其它特征将通过以下的说明书而变得容易理解。
1.一种web应用的安全防护方法,其特征在于,由应用客户端执行,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,在响应于用户针对前端页面执行的业务操作,触发生成web网页访问请求之后,还包括:
3.根据权利要求2所述的方法,其特征在于,所述设备指纹信息包括:cpu型号、内存大小以及网络接口中的至少一项,网络接口包括mac、适配器类型或者网络标准;
4.根据权利要求1所述的方法,其特征在于,还包括:
5.根据权利要求1-4任一项所述的方法,其特征在于,在采用预设的加密算法对请求数据包进行加密得到加密数据包,发送至应用服务器之后,还包括:
6.一种web应用的安全防护方法,其特征在于,由应用服务器前端的安全校验系统执行,所述方法包括:
7.一种web应用的安全防护装置,其特征在于,配置于应用客户端中,包括:
8.一种web应用的安全防护装置,其特征在于,配置于应用服务器前端的安全校验系统中,包括:
9.一种电子设备,其特征在于,所述电子设备包括:
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使处理器执行时实现权利要求1-6中任一项所述的一种web应用的安全防护方法。