一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于日志摘要的云端防攻击系统及方法与流程

2022-02-20 23:33:33 来源:中国专利 TAG:


1.本发明涉及云端防攻击技术领域,具体涉及一种基于日志摘要的云端防攻击系统及方法。


背景技术:

2.目前终端和服务器间的鉴权采用的令牌或区块链方式,由于受效率和开发进度的要求,采用令牌的方式很多都是用随机的uuid,或者按时效设置一个有效期。这样做导致的问题是令牌易被伪造,受中间人攻击;或者复制请求采取重放的方式,形成ddos攻击,总之用于鉴权的令牌应是难以伪造,动态生成,差异化验证,同时兼具可追溯等特性。这样才能保证服务器的安全性,免受攻击,以及终端应用获取数据顺畅。
3.采用区块链的方式可以实现可追溯、难以伪造等功能,但区块链鉴权效率偏低,对实施部署和可维护性的要求高,难度大。


技术实现要素:

4.本发明发的目的在于提供一种基于日志摘要的云端防攻击系统及方法,以期解决背景技术中存在的技术问题。
5.为了实现上述目的,本发明采用以下技术方案:
6.一种基于日志摘要的云端防攻击系统,包括:服务器模块,用于接收终端请求的数据,并进行业务操作生成业务日志,同时向终端返回业务数;终端模块,用于在业务请求时,生成时间戳,将时间戳、终端hash链、请求业务数据三部分进行摘要获取hash值,连同hash值、时间戳、请求业务数据向云端发送请求;认证服务器,用于接收终端的心跳请求,确定终端状态。
7.在一些实施例中,所述服务器模块,用于接收终端请求的数据,并进行业务操作生成业务日志,同时向终端返回业务数;包括:服务器对终端请求的业务日志数据、返回的业务日志数据、时间戳、云端hash链进行摘要获取最新的云端hash链,与时间戳、终端的sn号关联保存在数据库中。
8.在一些实施例中,服务器向认证服务器同步最新的hash链,向认证服务器发送hash链、时间戳、终端sn号,终端请求ip;云端首次获取终端数据时,云端hash链由请求认证服务器获取。
9.在一些实施例中,所述终端hash链的生成是终端将每次请求的业务参数、服务器端返回的业务参数、请求时生成的时间戳、以及上一次的hash值进行摘要获取的hash值。
10.在一些实施例中,终端首次使用或者因设备异常导致保存的hash值清空时,终端通过请求认证服务器获取hash链;同时终端模块定时向认证服务器发送心跳,以向服务器确认终端状态。
11.在一些实施例中,所述认证服务器,用于接收终端的心跳请求,确定终端状态,包括:接收并保存业务服务器的终端hash链、时间戳、终端sn、终端ip;终端首次使用或异常
时,向在终端、业务服务器返回正常的hash链;同时,分析异常ip,根据分析结果,控制ip黑白名单对异常请求进行限制;异常时,认证服务器向云端反馈,回滚正常hash值;终端首次使用,认证服务器的hash值为根据设备sn和时间戳,随机数进行摘要的hash值作为初始hash链。
12.本发明还提供了一种基于日志摘要的云端防攻击方法,基于上述的基于日志摘要的云端防攻击系统实现,包括以下步骤:
13.终端向云端发起业务请求;
14.业务服务器收到终端请求后,对请求进行鉴权;
15.鉴权通过,业务服务器进行业务逻辑处理,生成响应的业务日志数据。
16.在一些实施例中,所述终端向云端发起业务请求,包括:请求数据包括时间戳、业务数据、hash值、终端sn;hash值是由时间戳、终端hash链、请求业务数据的摘要生成;hash链是由上一次请求的请求业务数据、响应业务数据、上一次hash链的摘要生成;终端初次请求时,初始终端hash链由终端访问认证服务器活动;终端获取业务服务器响应数据后,将终端请求的业务数据、返回的业务数据、时间戳、终端hash链进行摘要获取最新的终端hash链替换原hash链,作为下一次终端请求所需hash值的hash链;终端定时向认证服务器发送心跳,实现认证服务器监控终端在线状态。
17.在一些实施例中,所述鉴权规则是将时间戳、云端hash链、请求业务数据进行摘要获得hash值,该值与请求的hash值进行对比,如果两个hash值一致则鉴权通过,如果不一致则鉴权不通过。
18.在一些实施例中,所述鉴权通过,业务服务器进行业务逻辑处理,生成响应的业务日志数据,包括将终端请求的业务日志数据、返回的业务日志数据、时间戳、云端hash链进行摘要获取最新的云端hash链;云端hash链与设备sn、时间戳关联存储在业务服务器中。
19.本技术所披露的基于日志摘要的云端防攻击系统及方法可能带来的有益效果包括但不限于:
20.本技术方案独有的技术特征是令牌根据各终端的业务请求和反馈日志,时间戳进行摘要,每次摘要同时加入上一次摘要,保证令牌具有连贯和可追溯性。对攻击者能有效防止伪装令牌的效果,实现防止中间人、ddos等攻击。
附图说明
21.图1为本实施例的终端鉴权流程图,该图是终端向业务服务器发起请求终端、云端生成hash链和云端鉴权的流程。
22.图2为本实施例的网络布局示意图,该图为本发明实施在某智慧家庭物联网布局图。
具体实施方式
23.为了使本技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本技术进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本技术,并不用于限定本技术。
24.相反,本技术涵盖任何由权利要求定义的在本技术的精髓和范围上做的替代、修
改、等效方法以及方案。进一步,为了使公众对本技术有更好的了解,在下文对本技术的细节描述中,详尽描述了一些特定的细节部分。对本领域技术人员来说没有这些细节部分的描述也可以完全理解本技术。
25.以下将结合图1-2对本技术实施例所涉及的基于日志摘要的云端防攻击系统及方法进行详细说明。值得注意的是,以下实施例仅仅用于解释本技术,并不构成对本技术的限定。
26.如图1-2所示,本发明一种基于日志摘要的云端防攻击系统及方法是存储设备业务日志中请求和返回数据与时间戳进行摘要生成令牌,令牌生成基于上一次的摘要和本次业务日志中请求返回数据,以及时间戳进行摘要,首次或异常的摘要通过访问认证服务器进获取。具体实现方案和步骤如下:
27.本实施例中提供一种基于日志摘要的云端防攻击系统,包括:
28.服务器模块,用于接收终端请求的数据,并进行业务操作生成业务日志,同时向终端返回业务数;服务器对终端请求的业务日志数据、返回的业务日志数据、时间戳、云端hash链进行摘要获取最新的云端hash链,与时间戳、终端的sn号关联保存在数据库中。同时,服务器向认证服务器同步最新的hash链,向认证服务器发送hash链、时间戳、终端sn号,终端请求ip。云端首次获取终端数据时,云端hash链由请求认证服务器获取。
29.终端模块,用于在业务请求时,生成时间戳,将时间戳、终端hash链、请求业务数据三部分进行摘要获取hash值,连同hash值、时间戳、请求业务数据向云端发送请求;终端hash链的生成是终端将每次请求的业务参数、服务器端返回的业务参数、请求时生成的时间戳、以及上一次的hash值进行摘要获取的hash值。终端首次使用或者因设备异常导致保存的hash值清空时,终端通过请求认证服务器获取hash链。同时终端模块定时向认证服务器发送心跳,以向服务器确认终端状态。
30.认证服务器,用于接收终端的心跳请求,确定终端状态。接收并保存业务服务器的终端hash链、时间戳、终端sn、终端ip。终端首次使用或异常时,向在终端、业务服务器返回正常的hash链;同时,分析异常ip,根据分析结果,控制ip黑白名单对异常请求进行限制。异常时,认证服务器向云端反馈,回滚正常hash值。终端首次使用,认证服务器的hash值为根据设备sn和时间戳,随机数进行摘要的hash值作为初始hash链。
31.本发明还提供了一种基于日志摘要的云端防攻击方法,基于上述的基于日志摘要的云端防攻击系统实现,包括以下步骤:
32.终端向云端发起业务请求;请求数据包括时间戳、业务数据、hash值、终端sn。hash值是由时间戳、终端hash链、请求业务数据的摘要生成。hash链是由上一次请求的请求业务数据、响应业务数据、上一次hash链的摘要生成。终端初次请求时,初始终端hash链由终端访问认证服务器活动。终端获取业务服务器响应数据后,将终端请求的业务数据、返回的业务数据、时间戳、终端hash链进行摘要获取最新的终端hash链替换原hash链,作为下一次终端请求所需hash值的hash链。
33.终端定时向认证服务器发送心跳,实现认证服务器监控终端在线状态。
34.业务服务器收到终端请求后,对请求进行鉴权,鉴权规则是将时间戳、云端hash链、请求业务数据进行摘要获得hash值,该值与请求的hash值进行对比,如果两个hash值一致则鉴权通过,如果不一致则鉴权不通过。鉴权通过,业务服务器进行业务逻辑处理,生成
响应的业务日志数据。将终端请求的业务日志数据、返回的业务日志数据、时间戳、云端hash链进行摘要获取最新的云端hash链。云端hash链与设备sn、时间戳关联存储在业务服务器中。
35.设备首次请求云端hash链,由业务服务器请求认证服务器获取。业务服务器每分钟与认证服务器同步云端hash链,将时间戳、设备sn关联保存在认证服务器中。
36.当云端受到中间人攻击时,云端收到的hash值基于时间戳和请求响应日志数据的hash链,历史的请求响应数据未在网络的一次请求中传输,因此具有难以伪造的特性。中间人攻击无法进行篡改数据后通过鉴权。
37.当攻击者破解某个终端,然后伪造数据进行ddos攻击时,云端将收到大量伪装终端的业务数据,这样使设备的终端hash链与云端不一致,造成验签失败。合法终端鉴权若干次失败后,向认证服务器请求当前最新的云端hash链,替换设备的终端hash链进行算法摘要。由于大量伪造终端数据的请求,使终端的hash链再次与云端hash链不同步,因此当某个终端频繁鉴权失败时,造成频繁请求认证服务器同步云端hash链。认证服务器统计一段时间连续请求同步云端hash链的次数,当超过设定的阈值时,认证服务器使用算法,统计访问设备的ip,如果访问设备的ip与长期心跳的ip不一致,且不一致的ip数量小于设定值,则将不一致的ip纳入临时黑名单。黑名单的ip由业务服务器向认证服务器同步云端hash链时,反馈致业务服务器。业务服务收到临时黑名单后,禁止该临时黑名单ip,24小时内访问业务服务器;如果访问设备的ip数量大于设定值,则将长期心跳的ip纳入白名单。白名单的ip和设备sn由业务服务器向认证服务器同步云端hash链时,反馈致业务服务器。业务服务收到白名单后,只允许该白名单ip和该设备的sn,24小时内访问业务服务器。认证服务器处理异常,在向业务服务器反馈黑白名单时,同时排除异常的hash链,将hash链回滚到基于近期上报心跳的设备ip最新的hash链。回滚hash链,与黑白名单反馈致业务服务器,业务服务器收到回滚hash链,执行hash链回滚,实现与认证服务器同步云端hash链。
38.该发明在物联网智慧家庭系统中实施,如附图2,网络布局示意图。业务服务器数据库实现了请求业务数据日志、响应业务数据日志、时间戳、hash链、设备sn的关联保存;同时建立黑白名单数据库。程序系统引入实现鉴权算法和对接认证服务器的sdk,网关实现根据黑白名单拦截黑名单ip或允许白名单ip访问的功能。android手机终端应用程序引入实现hash算法、能存储最近hash链、对接认证服务器、发送心跳功能的sdk。
39.搭建认证服务器,实现业务服务器、手机终端能访问认证服务器,认证服务器可接收终端心跳请求。认证服务器实现时间戳、hash链、设备sn的与业务服务器同步保存。
40.操作步骤如下:
41.1、用户操作android手机终端应用程序向业务服务器发送请求,如查询,新增,更新等操作。每步操作终端实现鉴权所需的hash值及hash链;定时向认证服务器发送心跳。
42.2、业务服务器获取终端请求,按流程进行鉴权,并用请求业务数据日志、响应业务数据日志、时间戳、原始或上一次业务hash链等数据生成hash链保存和同步到认证服务器。
43.3、模拟同一终端,在不同ip下向业务服务器发送业务请求,造成终端与云端的hash链不一致,经过查询认证服务器日志,认证服务器在1分钟内向合法终端反馈同步的云端hash链,超过3次时,认证服务器将伪装终端的ip列入黑名单。伪装终端的ip区分的算法,是根据统计心跳ip进行区分。
44.4、终端在鉴权失败时,立即向认证服务器同步hash链,以便可以获取响应数据,不影响业务。业务服务器在生成新hash链时,可以根据请求频率,处理若干次频繁请求后,再生成新hash链。
45.5、业务服务器根据认证服务器反馈的黑名单ip,限制访问业务服务器。实现本发明基于日志摘要的云端防攻击功能。
46.以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献