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

一种访问认证方法、装置、系统、电子设备及介质与流程

2022-08-31 23:01:01 来源:中国专利 TAG:


1.本公开涉及通信安全技术领域,特别是涉及一种访问认证方法、装置、系统、电子设备及介质。


背景技术:

2.基于边界的传统安全防护体系中,为保证通信安全性,远程终端接入内网时,内网的认证设备需要先对远程终端进行认证,认证通过后远程终端才能进行后续的访问。但随着云计算、大数据和移动互联网的快速发展,以及日趋灵活的接入形式,使得内网边界逐渐模糊,难以阻止来自内网和外部的攻击,使得基于边界的传统安全防护体系逐渐失效,因此产生了零信任网络安全架构。在零信任网络中,可以对来自于内网和外网的所有访问进行认证,以提高内网数据资源的安全性。
3.目前对于终端访问行为的认证,主要包括设备环境认证和设备身份认证。设备环境认证主要是认证设备当前的运行状态,但是设备当前的运行状态容易被篡改,导致目前的认证方式不够安全。


技术实现要素:

4.本公开实施例的目的在于提供一种访问认证方法、装置、系统、电子设备及介质,以提高对终端认证的安全性。具体技术方案如下:
5.第一方面,本公开实施例提供了一种访问认证方法,应用于认证设备,所述方法包括:
6.接收终端发送的访问报文,所述访问报文中包括本次启动状态信息、终端配置信息和登录用户信息,所述本次启动状态信息为所述终端从平台配置寄存器pcr中获取的所述终端在本次启动过程经历的各阶段的状态;
7.对所述访问报文包括的本次启动状态信息、终端配置信息和登录用户信息进行校验;
8.如果校验通过,则向所述终端发送认证通过报文。
9.在一些实施例中,所述对所述访问报文包括的本次启动状态信息、终端配置信息和登录用户信息进行校验,包括:
10.获取预先存储的所述终端向所述认证设备注册产生的启动状态信息、终端配置信息和登录用户信息;
11.对比所述本次启动状态信息和预先存储的启动状态信息是否相同;
12.若对比结果为不同,则确定校验未通过;
13.若对比结果为相同,则根据预先存储的终端配置信息和登录用户信息,对所述访问报文包括的终端配置信息和登录用户信息进行验证;
14.若验证通过,则确定校验通过;
15.若验证未通过,则确定校验未通过。
16.在一些实施例中,所述对比所述本次启动状态信息和所述预先存储的启动状态信息是否相同,包括:
17.针对所述终端在启动过程经历的每个阶段,判断所述本次启动状态信息中该阶段的状态和预先存储的启动状态信息中该阶段的状态是否相同;
18.若每个判断结果均为相同,则确定对比结果为相同;
19.若任一判断结果为不相同,则确定对比结果为不相同。
20.在一些实施例中,所述终端配置信息包括:终端状态信息和网络信息,所述终端状态信息用于表示所述终端运行的操作系统的安全状态,所述网络信息包括媒体存取控制mac地址和互联网协议ip地址;
21.所述根据预先存储的终端配置信息和登录用户信息,对所述访问报文包括的终端配置信息和登录用户信息进行验证,包括:
22.对所述访问报文包括的终端状态信息进行验证,得到终端状态验证结果;
23.判断所述访问报文中网络信息包括的mac地址和预先存储的终端配置信息包括的mac地址是否不相同,以及判断所述访问报文中网络信息包括的ip地址的风险等级是否为指定等级;如果任一判断结果为是,则确定网络信息验证结果为未通过;否则,确定网络信息验证结果为通过;
24.对比所述访问报文包括的登录用户信息与预先存储的登录用户信息是否相同,如果对比结果为不相同,则确定登录用户信息验证结果为未通过;否则,确定登录用户信息验证结果为通过;
25.如果所述终端状态验证结果、所述网络信息验证结果和所述登录用户信息验证结果均为通过,则确定对所述访问报文包括的终端配置信息和登录用户信息验证通过;否则,确定对所述访问报文包括的终端配置信息和登录用户信息验证未通过。
26.在一些实施例中,所述访问报文还包括加密信息;在对所述访问报文包括的本次启动状态信息、终端配置信息和登录用户信息进行校验之前,所述方法还包括:
27.按照预设的解密规则,对所述加密信息进行解密,得到解密值;
28.对所述访问报文包括的本次启动状态信息、终端配置信息和登录用户信息进行散列运算,得到散列值;
29.对比所述解密值和所述散列值是否相同;
30.若相同,则执行所述对所述访问报文包括的本次启动状态信息、终端配置信息和登录用户信息进行校验的步骤。
31.第二方面,本公开实施例提供了一种访问认证方法,应用于终端,所述方法包括:
32.从平台配置寄存器pcr中,获取本次启动状态信息,所述本次启动状态信息为所述终端在本次启动过程经历的各阶段的状态;
33.获取终端配置信息和登录用户信息;
34.向认证设备发送访问报文,所述访问报文包括所述本次启动状态信息、所述终端配置信息和所述登录用户信息,以使得所述认证设备对所述本次启动状态信息、所述终端配置信息和所述登录用户信息进行校验;
35.接收所述认证设备发送的认证通过报文,所述认证通过报文为所述认证设备在校验通过时发送的报文。
36.第三方面,本公开实施例提供了一种访问认证装置,应用于认证设备,所述装置包括:
37.接收模块,用于接收终端发送的访问报文,所述访问报文中包括本次启动状态信息、终端配置信息和登录用户信息,所述本次启动状态信息为所述终端从平台配置寄存器pcr中获取的所述终端在本次启动过程经历的各阶段的状态;
38.校验模块,用于对所述接收模块接收的所述访问报文包括的本次启动状态信息、终端配置信息和登录用户信息进行校验;
39.发送模块,用于如果所述校验模块校验通过,则向所述终端发送认证通过报文。
40.在一些实施例中,所述校验模块,具体用于:
41.获取预先存储的所述终端向所述认证设备注册产生的启动状态信息、终端配置信息和登录用户信息;
42.对比所述本次启动状态信息和预先存储的启动状态信息是否相同;
43.若对比结果为不同,则确定校验未通过;
44.若对比结果为相同,则根据预先存储的终端配置信息和登录用户信息,对所述访问报文包括的终端配置信息和登录用户信息进行验证;
45.若验证通过,则确定校验通过;
46.若验证未通过,则确定校验未通过。
47.在一些实施例中,所述校验模块,具体用于:
48.针对所述终端在启动过程经历的每个阶段,判断所述本次启动状态信息中该阶段的状态和预先存储的启动状态信息中该阶段的状态是否相同;
49.若每个判断结果均为相同,则确定对比结果为相同;
50.若任一判断结果为不相同,则确定对比结果为不相同。
51.在一些实施例中,所述终端配置信息包括:终端状态信息和网络信息,所述终端状态信息用于表示所述终端运行的操作系统的安全状态,所述网络信息包括媒体存取控制mac地址和互联网协议ip地址;
52.所述校验模块,具体用于:
53.对所述访问报文包括的终端状态信息进行验证,得到终端状态验证结果;
54.判断所述访问报文中网络信息包括的mac地址和预先存储的终端配置信息包括的mac地址是否不相同,以及判断所述访问报文中网络信息包括的ip地址的风险等级是否为指定等级;如果任一判断结果为是,则确定网络信息验证结果为未通过;否则,确定网络信息验证结果为通过;
55.对比所述访问报文包括的登录用户信息与预先存储的登录用户信息是否相同,如果对比结果为不相同,则确定登录用户信息验证结果为未通过;否则,确定登录用户信息验证结果为通过;
56.如果所述终端状态验证结果、所述网络信息验证结果和所述登录用户信息验证结果均为通过,则确定对所述访问报文包括的终端配置信息和登录用户信息验证通过;否则,确定对所述访问报文包括的终端配置信息和登录用户信息验证未通过。
57.在一些实施例中,所述访问报文还包括加密信息;所述装置还包括:
58.解密模块,用于在对所述访问报文包括的本次启动状态信息、终端配置信息和登
录用户信息进行校验之前,按照预设的解密规则,对所述加密信息进行解密,得到解密值;
59.散列模块,用于对所述访问报文包括的本次启动状态信息、终端配置信息和登录用户信息进行散列运算,得到散列值;
60.对比模块,用于对比所述解密值和所述散列值是否相同;若相同,则调用所述校验模块执行所述对所述访问报文包括的本次启动状态信息、终端配置信息和登录用户信息进行校验的步骤。
61.第四方面,本公开实施例提供了一种访问认证装置,应用于终端,所述装置包括:
62.获取模块,用于从平台配置寄存器pcr中,获取本次启动状态信息,所述本次启动状态信息为所述终端在本次启动过程经历的各阶段的状态;
63.所述获取模块,还用于获取终端配置信息和登录用户信息;
64.发送模块,用于向认证设备发送访问报文,所述访问报文包括所述本次启动状态信息、所述终端配置信息和所述登录用户信息,以使得所述认证设备对所述本次启动状态信息、所述终端配置信息和所述登录用户信息进行校验;
65.接收模块,用于接收所述认证设备发送的认证通过报文,所述认证通过报文为所述认证设备在校验通过时发送的报文。
66.第五方面,本公开实施例提供了一种访问认证系统,其特征在于,所述系统包括:终端和认证设备;
67.所述认证设备用于执行第一方面任一项所述的方法;
68.所述终端用于执行第二方面所述的方法。
69.第六方面,本公开实施例提供了一种电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
70.存储器,用于存放计算机程序;
71.处理器,用于执行存储器上所存放的程序时,实现第一方面或者第二方面任一项所述的访问认证方法步骤。
72.第七方面,本公开实施例提供了一种计算机可读存储介质,其特征在于,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现第一方面或者第二方面任一项所述的访问认证方法步骤。
73.第八方面,本公开实施例还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述第一方面或者第二方面任一项所述的访问认证方法。
74.本公开实施例有益效果:
75.本公开实施例提供的访问认证方法、装置、系统、电子设备及介质中,认证设备可以对终端的本次启动状态信息、登录用户信息和设备配置信息进行校验,并在校验通过时向终端发送认证通过报文,并允许终端的访问。由于本次启动状态信息是终端从pcr中获取的,而pcr中存储的数据具有不可随意篡改的特性,因此能够确定终端启动过程中是否受到恶意攻击者的控制,此外还校验了登录用户信息和设备配置信息,确定终端当前是否受到恶意攻击者的控制。即能够验证终端从启动到访问前的安全性,并在确定终端未收到恶意控制的情况下允许终端访问,避免恶意攻击者利用仿冒的本次启动状态信息和设备配置信息访问网络,因此本公开实施例能够提高对终端认证的安全性。
76.当然,实施本公开的任一产品或方法并不一定需要同时达到以上所述的所有优
点。
附图说明
77.为了更清楚地说明本公开实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的实施例。
78.图1为本公开实施例提供的一种访问认证系统的结构示意图;
79.图2为本公开实施例提供的一种访问认证方法的流程图;
80.图3为本公开实施例提供的一种用于校验终端的认证信息的示例性示意图;
81.图4为本公开实施例提供的一种访问认证过程的示例性示意图;
82.图5为本公开实施例提供的另一种访问认证方法的流程图;
83.图6为本公开实施例提供的另一种访问认证过程的示例性示意图;
84.图7为本公开实施例提供的一种访问认证装置的结构示意图;
85.图8为本公开实施例提供的一种访问认证装置的结构示意图;
86.图9为本公开实施例提供的一种电子设备的结构示意图。
具体实施方式
87.下面将结合本公开实施例中的附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本公开一部分实施例,而不是全部的实施例。基于本公开中的实施例,本领域普通技术人员基于本公开所获得的所有其他实施例,都属于本公开保护的范围。
88.本公开实施例为了提高对终端认证的安全性,提供了一种访问认证方法,该方法可以应用于访问认证系统中,如图1所示,该系统包括:终端101和认证设备102。认证设备102可以与各终端101通信连接。其中,图1中的终端101包括外网的远程终端,以及在认证设备102所在的内网中的内网终端。例如,终端101可以是手机、台式计算机或者平板电脑等电子设备,认证设备102可以是服务器或者网关等电子设备。
89.终端101,用于向认证设备102请求访问其他终端。具体请求访问的方法可参考后文描述。
90.认证设备102,用于对终端101的访问进行校验,并在校验通过时允许终端101的访问,具体校验的方法可参考后文描述。
91.本公开实施例可以应用于传统的安全防护体系,通过本公开实施例提供的访问认证方法可以校验远程终端的安全性。
92.或者,本公开实施例可以应用在零信任网络架构,通过本公开实施例提供的访问认证方法可以校验远程终端以及内网终端的安全性。
93.图1为本公开实施例提供的一种示例,本公开实施例中的访问认证系统包括的各设备的数量不限于此。
94.参见图2,本公开实施例提供的访问认证方法,应用于图1所示的认证设备,该方法包括如下步骤:
95.s201、接收终端发送的访问报文。
96.其中,访问报文中包括本次启动状态信息、终端配置信息和登录用户信息,本次启动状态信息为终端从平台配置寄存器(platform configuration register,pcr)中获取的终端在本次启动过程经历的各阶段的状态。示例性的,终端启动过程经历的各阶段的状态包括:基本输出输入系统(basic input output system,blos)状态、操作系统加载(operating system loader,osloader)状态和os状态。
97.访问报文中的终端配置信息是终端当前的配置信息。例如,终端配置信息包括:操作系统版本和互联网协议(internet protocol,ip)地址等。
98.终端可以通过安装的零信任代理(agent)的客户端,向认证设备发送访问报文。访问报文中登录用户信息用于表示当前登录该客户端的用户身份。例如,登录用户信息包括用户名和密码等。
99.本公开实施例可以应用在传统的安全防护体系,这种情况下,该终端为远程终端,终端发送的访问报文用于进行身份认证。
100.本公开实施例可以应用在零信任网络安全架构,这种情况下,如果该终端为远程终端,则访问报文用于访问内网终端。如果该终端为内网终端,则访问报文用于访问内网终端或者远程终端。
101.s202、对访问报文包括的本次启动状态信息、终端配置信息和登录用户信息进行校验。
102.在本公开实施例中,认证设备可以将访问报文包括的本次启动状态信息、终端配置信息和登录用户信息与预先存储的该终端的信息进行对比,并在对比结果为相同时,确定校验通过。否则,确定校验未通过。
103.s203、如果校验通过,则向终端发送认证通过报文。
104.本公开实施例可以应用在传统的安全防护体系,这种情况下,认证设备向终端发送认证通过报文之后,可以记录该终端为认证通过的终端。之后接收到该终端发送的数据报文时,可以向该数据报文的目的地址对应的设备,即访问客体,转发该数据报文。其中,数据报文的访问客体可以是内网终端。
105.本公开实施例可以应用在零信任网络安全架构,这种情况下,如果校验通过,认证设备可以向终端发送认证通过报文,并向访问报文的访问客体转发该访问报文。
106.本公开实施例提供的访问认证方法中,认证设备可以对终端的本次启动状态信息、登录用户信息和设备配置信息进行校验,并在校验通过时向终端发送认证通过报文,并允许终端的访问。由于本次启动状态信息是终端从pcr中获取的,而pcr中存储的数据具有不可随意篡改的特性,因此能够确定终端启动过程中是否受到恶意攻击者的控制,此外还校验了登录用户信息和设备配置信息,确定终端当前是否受到恶意攻击者的控制。即能够验证终端从启动到访问前的安全性,并在确定终端未收到恶意控制的情况下允许终端访问,避免恶意攻击者利用仿冒的本次启动状态信息和设备配置信息访问网络,因此本公开实施例能够提高对终端认证的安全性。
107.在传统的认证方法中,终端安装的零信任客户端在生成访问报文时,获取终端当前的运行状态信息,而在生成访问报文之前,终端可能已经受到恶意控制,导致终端的运行状态信息被篡改过,使得客户端获取的终端当前的运行状态信息是被篡改过的,因此基于
篡改后的运行状态信息生成的访问报文可能骗取到认证设备的信任。而本公开实施例中,访问报文不但有设备配置信息还有不可被篡改的启动状态信息,因此认证设备能够验证终端从启动开始直至当前的运行情况,因此能够提高认证的安全性。
108.在一些实施例中,认证设备在上述s202中对访问报文包括的本次启动状态信息、终端配置信息和登录用户信息进行校验的方式,包括如下步骤:
109.步骤1、获取预先存储的终端向认证设备注册产生的启动状态信息、终端配置信息和登录用户信息。
110.终端可以在预先在注册时,向认证设备发送包括启动状态信息、终端配置信息和登录用户信息的注册报文。其中,注册报文包括的启动状态信息包括终端在最近一次启动过程经历的各阶段的状态。注册报文包括的终端配置信息为终端在注册时的配置信息。注册报文包括的登录用户信息表示终端在注册时登录零信任agent的客户端的用户身份。
111.步骤2、对比本次启动状态信息和预先存储的启动状态信息是否相同。若对比结果为相同,则执行步骤3;若对比结果为不同,确定校验未通过。
112.在本公开实施例中,认证设备可以针对终端在启动过程经历的每个阶段,判断本次启动状态信息中该阶段的状态和预先存储的启动状态信息中该阶段的状态是否相同。若每个阶段的判断结果均为相同,则确定对比结果为相同;若任一阶段的判断结果为不相同,则确定对比结果为不相同。
113.例如,假设启动过程共包括n个阶段,可以通过以下公式,得到对比结果。
114.r=startinfo’∧startinfo=(pcr’[1]∧pcr[1])∧(pcr’[2]∧pcr[2])∧
……
∧(pcr’[n]∧pcr[n])
[0115]
其中,r表示对比结果,startinfo’表示本次启动状态信息,startinfo表示预先存储的启动状态信息,pcr’[1]、pcr’[2]、

、pcr’[n]分别表示本次启动状态信息包括的每个阶段的状态,pcr[1]、pcr[2]、

、pcr[n]分别表示预先存储的启动状态信息包括的每个阶段的状态。∧表示交运算,∧左右两边的数值相同时交运算结果为1,因此r为1时,表示对比结果为相同,r为0时,表示对比结果为不相同。
[0116]
步骤3、根据预先存储的终端配置信息和登录用户信息,对访问报文包括的终端配置信息和登录用户信息进行验证。若验证通过,则确定校验通过;若验证未通过,则确定校验未通过。
[0117]
本公开实施例中,终端配置信息包括终端状态信息和网络信息。其中,终端状态信息用于表示终端运行的操作系统的安全状态,网络信息用于表示终端的网络地址。访问报文中用于认证的信息包括用于校验终端的认证信息和用于校验用户的认证信息,其中,用于校验用户的认证信息为登录用户信息。如图3所示,用于校验终端的认证信息包括:本次启动状态信息、终端状态信息和网络信息。其中,图3中的本次启动状态信息包括n 1个状态,即从pcr’[0]到pcr’[n]。终端状态信息包括系统版本信息、系统补丁信息和杀毒软件信息。例如,系统版本信息包括终端运行的操作系统版本号,系统补丁信息包括终端配置的系统补丁名称,杀毒软件信息包括终端安装的杀毒软件名称和杀毒软件版本号。网络信息包括媒体存取控制(media access control,mac)地址和ip地址。
[0118]
在本公开实施例中,步骤3包括以下三个方面的验证:
[0119]
第一方面、对终端状态信息的验证。
[0120]
对终端状态信息的验证包括:对访问报文包括的终端状态信息进行验证,得到终端状态验证结果。
[0121]
在本公开实施例中,认证设备可以根据访问报文包括的系统版本信息,判断终端的操作系统是否存在指定等级的漏洞,如果存在,则根据访问报文包括的系统补丁信息,判断终端是否配置针对指定等级的漏洞的补丁。如果终端配置有针对该指定等级的漏洞的补丁,或者终端不存在指定等级的漏洞,则确定系统验证通过;否则确定系统验证未通过。
[0122]
认证设备还可以根据访问报文包括的杀毒软件信息,判断终端是否安装有杀毒软件,如果是,则确定终端安装的杀毒软件版本。如果终端未安装杀毒软件或者安装的杀毒软件版本不是指定版本,则确定杀毒软件验证未通过。否则,确定杀毒软件验证通过。
[0123]
如果系统验证通过,且杀毒软件验证通过,则确定终端状态验证结果为通过。或者,本公开实施例在验证终端状态信息时,可以只进行上述系统验证,如果系统验证通过,则确定终端状态验证结果为通过;或者,可以只进行上述杀毒软件验证,如果杀毒软件验证通过,则确定终端状态验证结果为通过。
[0124]
系统漏洞存在多个危险等级,例如,高危、中危和低危。例如,指定等级的漏洞可以是高危漏洞;如果终端的操作系统存在高危漏洞,且没有配置针对该高危漏洞的系统补丁,那么终端容易受到恶意控制,因此确定验证未通过。另外,如果终端未安装杀毒软件,或者终端安装的杀毒软件版本过低,也容易受到恶意控制,因此确定验证未通过。其中,本公开实施例可以通过安全大数据分析技术和智能推理技术,确定操作系统是否存在指定等级的漏洞,以及针对该漏洞的补丁。
[0125]
可选的,还可以通过其他方式验证终端状态信息,例如,对比访问报文包括的终端状态信息与预先存储的终端状态信息是否相同。如果相同,则确定终端状态验证结果为通过;否则,利用上述系统验证方法和杀毒软件验证方法进行验证。
[0126]
第二方面、对终端的网络信息的验证。
[0127]
对终端的网络信息的验证包括:判断访问报文中网络信息包括的mac地址和预先存储的终端配置信息包括的mac地址是否不相同,以及判断访问报文中网络信息包括的ip地址的风险等级是否为指定等级。如果任一判断结果为是,则确定网络信息验证结果为未通过;否则,确定网络信息验证结果为通过。
[0128]
如果访问报文中mac地址与预先存储的终端配置信息包括的mac地址不同,说明当前发送访问报文的终端使用的网卡与注册时终端使用的网卡不同,可能受到恶意控制。而且如果访问报文中的ip地址的风险等级过高,说明发送访问报文的终端受到恶意控制的可能性较高,因此确定验证未通过。其中,本公开实施例可以通过安全大数据分析技术和智能推理技术,确定ip地址的风险等级。
[0129]
第三方面、对登录用户信息的验证。
[0130]
对登录用户信息的验证包括:对比访问报文包括的登录用户信息与预先存储的登录用户信息是否相同。如果对比结果为不相同,则确定登录用户信息验证结果为未通过;否则,确定登录用户信息验证结果为通过。
[0131]
可选的,登录用户信息包括:用户身份标识号(identity document,id)、用户凭证、用户属性和/或用户角色等。用户凭证可以是密码,例如用户凭证为u盾,即支付证书。用户属性表示用户分组。用户角色表示用户等级,例如普通用户或者超级用户等。
[0132]
认证设备可以对比访问报文包括的登录用户信息与预先存储的登录用户信息中每一项信息是否相同,若均相同,则确定登录用户信息验证结果为通过,若任一项不同,则确定登录用户信息验证结果为未通过。
[0133]
如果上述三个方面的验证结果均为通过,即终端状态验证结果、网络信息验证结果和登录用户信息验证结果均为通过,则确定对访问报文包括的终端配置信息和登录用户信息验证通过。否则,确定对访问报文包括的终端配置信息和登录用户信息验证未通过。
[0134]
可选的,如图4所示,认证设备接收到访问报文后,可以先进行完整性验证,完整性验证具体方式可参考下文描述。对完整性验证通过后再校验本次启动状态信息,对本次启动状态信息校验通过后再校验终端状态信息,对终端状态信息校验通过后再校验网络信息,对网络信息校验通过后再校验登录用户信息。如果任一校验结果为未通过,则拒绝终端的访问。在对登录用户信息校验通过后,可以根据登录用户的角色确定访问界限,并允许该终端在访问界限内的访问。例如,如果登录用户为普通用户,则允许该终端查看数据;如果登录用户为超级用户,则允许该终端下载数据。
[0135]
本公开实施例中,可以先对访问报文中本次启动状态信息进行校验,在本次启动状态信息校验通过后,再进行其他信息的校验。由于启动状态信息通过直接进行数据对比的方式校验,因此校验方式简单,且速度快,如果校验未通过则无需校验其他信息,因此能够更快速地得到校验结果,提高校验效率。
[0136]
终端发送的访问报文还包括加密信息。加密信息为终端按照预设的加密规则,对本次启动状态信息、终端配置信息和登录用户信息进行散列运算,得到散列值后,对散列值进行加密得到的信息。
[0137]
在一些实施例中,认证设备在上述s202对访问报文包括的信息进行校验之前,还可以对访问报文进行完整性验证,完整性验证包括以下步骤:
[0138]
步骤一、按照预设的解密规则,对加密信息进行解密,得到解密值。
[0139]
终端在注册过程中,可以从认证设备处获取秘钥,从而确定出预设的加密规则。例如,秘钥为23,对应的加密规则为:将需加密的信息的第一位向右偏移2位,并将需加密的信息的第二位向右偏移3位,将需加密的信息的第三位向右偏移2位,并将需加密的信息的第四位向右偏移3位,以此类推。相应的,认证设备根据该秘钥,确定出预设的解密规则。
[0140]
一般情况下,终端的利用加密规则的加密过程和认证设备利用解密规则的解密过程是相反的过程。但如果终端受到恶意控制,导致不按照该秘钥进行加密的情况下,认证设备解密后的结果与终端加密前的结果不同。
[0141]
步骤二、对访问报文包括的本次启动状态信息、终端配置信息和登录用户信息进行散列运算,得到散列值。
[0142]
一般情况下,终端对本次启动状态信息、终端配置信息和登录用户信息进行散列运算所基于的散列算法,与认证设备对访问报文包括的本次启动状态信息、终端配置信息和登录用户信息进行散列运算所基于的散列算法相同。当终端受到恶意控制时,所基于的散列算法可能与认证设备所基于的散列算法不同,导致二者的散列运算结果不同。
[0143]
步骤三、对比解密值和散列值是否相同。若相同,则执行s202对访问报文包括的本次启动状态信息、终端配置信息和登录用户信息进行校验的步骤。若不同,则向终端发送认证未通过报文,从而拒绝该终端的访问。
[0144]
步骤一得到的解密值是终端对本次启动状态信息、终端配置信息和登录用户信息进行散列运算得到,而步骤二得到的散列值是认证设备对本次启动状态信息、终端配置信息和登录用户信息进行散列运算得到,由于终端和认证设备对相同的数据进行散列运算,且散列运算所基于的散列算法相同,因此解密值应当与散列值相同。但是终端受到恶意控制时,可能使用与认证设备不同的散列算法,导致解密值和散列值不同。
[0145]
本公开实施例中,认证设备对访问报文进行完整性校验,通过对比解密值和散列值是否相同,来判断终端是否按照约定的加密规则进行加密,并按照约定的散列运算方式进行散列运算,从而确定出终端是否受到恶意控制。之后如果完整性校验通过,认证设备才会进一步校验访问报文包括的信息,如果完整性校验未通过,则无需校验访问报文包括的信息,直接拒绝该终端的访问,因此本公开实施例不但能够提高响应访问报文的效率,还能够保障通信安全性。
[0146]
基于相同的发明构思,如图5所示,本公开实施例还提供了一种访问认证方法,应用于图1中的终端,该方法包括:
[0147]
s501、从pcr中获取本次启动状态信息。其中,本次启动状态信息为终端在本次启动过程经历的各阶段的状态。
[0148]
本公开实施例中,终端可以从内置的pcr中获取最近一次启动过程经历的各阶段的状态。pcr中可以存储历史每次启动过程经历的各阶段的状态,或者pcr中可以存储最近一次启动过程经历的各阶段的状态。pcr中存储的数据不可被随意篡改,因此,终端在启动过程中受到恶意控制的情况下,启动过程经历的各阶段的实际状态被记录在pcr中,而且不可更改,因此认证设备在接收到本次启动状态信息时,能够发现异常,并拒绝终端的访问。
[0149]
s502、获取终端配置信息和登录用户信息。
[0150]
s503、向认证设备发送访问报文。其中,访问报文包括本次启动状态信息、终端配置信息和登录用户信息,以使得认证设备对本次启动状态信息、终端配置信息和登录用户信息进行校验。
[0151]
本公开实施例可以应用在传统的安全防护体系,这种情况下,该终端为远程终端,终端发送的访问报文用于进行身份认证。
[0152]
本公开实施例可以应用在零信任网络安全架构,这种情况下,如果该终端为远程终端,则访问报文用于访问内网终端。如果该终端为内网终端,则访问报文用于访问内网终端或者远程终端。
[0153]
s504、接收认证设备发送的认证通过报文。其中,认证通过报文为认证设备在校验通过时发送的报文。
[0154]
本公开实施例可以应用在传统的安全防护体系,这种情况下,终端为远程终端,终端在接收到认证通过报文后,后续可以向认证设备发送数据报文,从而访问内网终端。
[0155]
本公开实施例可以应用在零信任网络安全架构,这种情况下,终端可以是远程终端或者内网终端,终端在接收到认证通过报文后,确定该访问报文已被转发到需要访问的终端。
[0156]
本公开实施例提供的访问认证方法中,认证设备可以对终端的本次启动状态信息、登录用户信息和设备配置信息进行校验,并在校验通过时向终端发送认证通过报文,并允许终端的访问。由于本次启动状态信息是终端从pcr中获取的,而pcr中存储的数据具有
不可随意篡改的特性,因此能够确定终端启动过程中是否受到恶意攻击者的控制,此外还校验了登录用户信息和设备配置信息,确定终端当前是否受到恶意攻击者的控制。即能够验证从终端启动到访问前的安全性,并在确定终端未收到恶意控制的情况下允许终端访问,避免恶意攻击者利用仿冒的本次启动状态信息和设备配置信息访问网络,因此本公开实施例能够提高对终端认证的安全性。
[0157]
在传统的认证方法中,终端安装的零信任客户端在生成访问报文时,获取终端当前的运行状态信息,而在生成访问报文之前,终端可能已经受到恶意控制,导致终端的运行状态信息被篡改过,使得客户端获取的终端当前的运行状态信息是被篡改过的,因此基于篡改后的运行状态信息生成的访问报文可能骗取到认证设备的信任。而本公开实施中,访问报文不但有设备配置信息还有不可被篡改的启动状态信息,因此认证设备能够验证终端从启动开始直至当前的运行情况,因此能够提高认证的安全性。
[0158]
在一些实施例中,终端可以在预先注册时,获取启动状态信息、终端配置信息和登录用户信息,并携带在注册报文中发送给认证设备。以使得认证设备可以存储注册报文包括的启动状态信息、该终端配置信息和该登录用户信息,以便后续对访问报文进行校验。
[0159]
在一些实施例中,在向认证设备发送访问报文之前,终端还可以进行数据加密,并生成访问报文。生成访问报文的过程包括:将访问报文包括的本次启动状态信息、终端配置信息和登录用户信息进行散列运算,得到散列值。然后对散列值进行加密,得到加密信息。生成包括本次启动状态信息、实时登录用户信息、实时设备配置信息和加密信息的访问报文。
[0160]
本公开实施例中,应用于终端的访问认证方法,和应用于认证设备的访问认证方法中,相同的步骤的实现方式可相互参照。
[0161]
参见图6,以下结合具体的应用场景,对本公开实施例提供的访问认证过程进行说明:
[0162]
在零信任网络安全架构中,访问主体为终端,具体可以是远程终端,访问客体为内网终端。远程终端可以请求使用内网终端的应用、请求调用内网终端的接口、请求使用内网终端可实现的功能、以及请求获取内网终端中的数据等。
[0163]
认证设备包括控制平面和数据平面。控制平面包括信任评估引擎和策略授权引擎,数据平面包括策略执行引擎。策略执行引擎接收访问主体发送的访问报文,并从访问报文中获取本次启动状态信息、终端配置信息和登录用户信息,并从身份安全基础设施获取预先存储的启动状态信息、终端配置信息和登录用户信息。策略执行引擎经过策略授权引擎向信任评估引擎发送访问报文包括的本次启动状态信息、终端配置信息和登录用户信息,以及预先存储的启动状态信息、终端配置信息和登录用户信息。信任评估引擎对比本次启动状态信息和预先存储的启动状态信息,在对比结果为相同的情况下,利用指定安全分析平台校验终端配置信息和登录用户信息,在校验通过后,通知策略授权引擎进行授权。策略授权引擎对该终端进行授权,并通知策略执行引擎响应访问报文。策略执行引擎向访问客体转发访问报文,并向访问主体返回认证通过报文,从而允许访问主体对访问客体的访问。
[0164]
图6中各步骤的具体实现方式可参考上述描述,此处不再赘述。
[0165]
基于相同的发明构思,对应于上述方法实施例,本公开实施例提供了一种访问认
证装置,应用于认证设备,如图7所示,该装置包括:接收模块701、校验模块702和发送模块703;
[0166]
接收模块701,用于接收终端发送的访问报文,访问报文中包括本次启动状态信息、终端配置信息和登录用户信息,本次启动状态信息为终端从平台配置寄存器pcr中获取的终端在本次启动过程经历的各阶段的状态;
[0167]
校验模块702,用于对接收模块701接收的访问报文包括的本次启动状态信息、终端配置信息和登录用户信息进行校验;
[0168]
发送模块703,用于如果校验模块702校验通过,则向终端发送认证通过报文。
[0169]
在一些实施例中,校验模块702,具体用于:
[0170]
获取预先存储的终端向认证设备注册产生的启动状态信息、终端配置信息和登录用户信息;
[0171]
对比本次启动状态信息和预先存储的启动状态信息是否相同;
[0172]
若对比结果为不同,则确定校验未通过;
[0173]
若对比结果为相同,则根据预先存储的终端配置信息和登录用户信息,对访问报文包括的终端配置信息和登录用户信息进行验证;
[0174]
若验证通过,则确定校验通过;
[0175]
若验证未通过,则确定校验未通过。
[0176]
在一些实施例中,校验模块702,具体用于:
[0177]
针对终端在启动过程经历的每个阶段,判断本次启动状态信息中该阶段的状态和预先存储的启动状态信息中该阶段的状态是否相同;
[0178]
若每个判断结果均为相同,则确定对比结果为相同;
[0179]
若任一判断结果为不相同,则确定对比结果为不相同。
[0180]
在一些实施例中,终端配置信息包括:终端状态信息和网络信息,终端状态信息用于表示终端运行的操作系统的安全状态,网络信息包括媒体存取控制mac地址和互联网协议ip地址;
[0181]
校验模块702,具体用于:
[0182]
对访问报文包括的终端状态信息进行验证,得到终端状态验证结果;
[0183]
判断网络信息包括的mac地址和预先存储的终端配置信息包括的mac地址是否不相同,以及判断ip地址的风险等级是否为指定等级;如果任一判断结果为是,则确定网络信息验证结果为未通过;否则,确定网络信息验证结果为通过;
[0184]
对比访问报文包括的登录用户信息与预先存储的登录用户信息是否相同,如果对比结果为不相同,则确定登录用户信息验证结果为未通过;否则,确定登录用户信息验证结果为通过;
[0185]
如果终端状态验证结果、网络信息验证结果和登录用户信息验证结果均为通过,则确定对访问报文包括的终端配置信息和登录用户信息验证通过;否则,确定对访问报文包括的终端配置信息和登录用户信息验证未通过。
[0186]
在一些实施例中,访问报文还包括加密信息;装置还包括:
[0187]
解密模块,用于在对访问报文包括的本次启动状态信息、终端配置信息和登录用户信息进行校验之前,按照预设的解密规则,对加密信息进行解密,得到解密值;
[0188]
散列模块,用于对访问报文包括的本次启动状态信息、终端配置信息和登录用户信息进行散列运算,得到散列值;
[0189]
对比模块,用于对比解密值和散列值是否相同;若相同,则调用校验模块执行对访问报文包括的本次启动状态信息、终端配置信息和登录用户信息进行校验的步骤。
[0190]
基于相同的发明构思,对应于上述方法实施例,本公开实施例提供了一种访问认证装置,应用于终端,如图8所示,该装置包括:获取模块801、发送模块802和接收模块803。
[0191]
获取模块801,用于从平台配置寄存器pcr中,获取本次启动状态信息,本次启动状态信息为终端在本次启动过程经历的各阶段的状态;
[0192]
获取模块801,还用于获取终端配置信息和登录用户信息;
[0193]
发送模块802,用于向认证设备发送访问报文,访问报文包括本次启动状态信息、终端配置信息和登录用户信息,以使得认证设备对本次启动状态信息、终端配置信息和登录用户信息进行校验;
[0194]
接收模块803,用于接收认证设备发送的认证通过报文,认证通过报文为认证设备在校验通过时发送的报文。
[0195]
本公开实施例还提供了一种电子设备,如图9所示,包括处理器901、通信接口902、存储器903和通信总线904,其中,处理器901,通信接口902,存储器903通过通信总线904完成相互间的通信,
[0196]
存储器903,用于存放计算机程序;
[0197]
处理器901,用于执行存储器903上所存放的程序时,实现上述方法实施例中由认证设备或者终端执行的步骤。
[0198]
上述电子设备提到的通信总线可以是外设部件互连标准(peripheral component interconnect,pci)总线或扩展工业标准结构(extended industry standard architecture,eisa)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
[0199]
通信接口用于上述电子设备与其他设备之间的通信。
[0200]
存储器可以包括随机存取存储器(random access memory,ram),也可以包括非易失性存储器(non-volatile memory,nvm),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
[0201]
上述的处理器可以是通用处理器,包括中央处理器(central processing unit,cpu)、网络处理器(network processor,np)等;还可以是数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,asic)、现场可编程门阵列(field-programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
[0202]
在本公开提供的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任一访问认证方法的步骤。
[0203]
在本公开提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一访问认证方法。
[0204]
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实
现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本公开实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(dsl))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,dvd)、或者半导体介质(例如固态硬盘solid state disk(ssd))等。
[0205]
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
[0206]
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
[0207]
以上所述仅为本公开的较佳实施例,并非用于限定本公开的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本公开的保护范围内。
再多了解一些

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

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

相关文献