一种系统测试方法、装置、设备及存储介质与流程

文档序号:30074335发布日期:2022-05-18 02:53阅读:74来源:国知局
一种系统测试方法、装置、设备及存储介质与流程

1.本发明实施例涉及软件测试技术领域,尤其涉及一种系统测试方法、装置、设备及存储介质。


背景技术:

2.随着互联网技术的发展,人们在日常生活的各个场景都会使用不同的应用系统,目前应用系统普遍为前后端分离,前端使用vue、react、angular等技术,后端提供接口,这使前后端角色分工更明确,对系统项目的研发质量提供了更好的保障。
3.一般情况下,应用系统的一个前端对应多个后端,每个后端都提供一个访问接口,在用户访问系统的过程中,进入后端的访问接口时会进行登录验证,验证通过后将有效cookie返回给用户。
4.在一些领域中,安全问题极为重要,例如银行等金融业务的操作过程,使用的系统是否安全是人们关注的一个重点。如果某些用户在使用银行系统的过程中,非法获取其他用户的有效cookie进行系统访问,可能会造成严重的经济损失,因此,对系统使用过程中的用户安全访问进行检测是必不可少的。


技术实现要素:

5.本发明提供一种系统测试方法、装置、设备及存储介质,以实现有效检测待测试系统的用户登录安全性。
6.第一方面,本发明实施例提供了一种系统测试方法,包括:
7.获取所有待测试用户登录待测试系统时生成的身份验证数据;
8.根据各所述身份验证数据,形成各所述待测试用户的测试身份数据集;
9.控制各所述待测试用户根据对应测试身份数据集中的测试身份数据执行访问测试操作,得到访问结果集;
10.当所述访问结果集包含成功访问的访问结果时,确定所述待测试系统存在越权访问风险。
11.可选的,所述根据各所述身份验证数据,形成各所述待测试用户的测试身份数据集,包括:
12.从各所述待测试用户中选取一个目标用户,将除所述目标用户外的其他待测试用户作为候选用户;
13.依次基于所述候选用户的身份验证数据参数化所述目标用户的身份验证数据,生成对应的测试身份数据,形成目标用户的测试身份数据集;
14.返回重新选取目标用户,直至各所述待测试用户全部被选取。
15.可选的,所述控制各所述待测试用户根据对应测试身份数据集中的测试身份数据执行访问测试操作,得到访问结果集,包括:
16.针对每个待测试用户,从所述待测试用户对应的测试身份数据集中选取一个目标
测试身份数据;
17.控制所述待测试用户基于所述目标测试身份数据访问所述待测试系统,得到访问结果,并将所述访问结果添加至访问结果集;
18.返回重新选取目标测试身份数据,直至所述待测试用户对应的测试身份数据集中的测试身份数据全部被选取。
19.可选的,在获取所有待测试用户登录待测试系统时生成的身份验证数据之后,还包括:
20.将各所述身份验证数据设置成所述待测试系统的环境变量。
21.可选的,在确定所述待测试系统存在越权访问风险之后,还包括:
22.根据访问结果为成功访问的访问测试操作,确定所述待测试系统存在的越权访问类别。
23.可选的,所述根据访问结果为成功访问的访问测试操作,确定所述待测试系统存在的越权访问类别,包括:
24.确定访问结果为成功访问的访问测试操作为越权访问操作,所述越权访问操作对应的待测试用户为越权访问用户;
25.将所述越权访问用户执行越权访问操作时使用的测试身份数据确定为越权身份数据,生成所述越权身份数据的身份验证数据对应的待测试用户确定为信息泄露用户;
26.根据所述越权访问用户和所述信息泄露用户的用户权限等级,确定所述待测试系统存在的越权访问类别。
27.可选的,在确定所述待测试系统存在的越权访问类别之后,还包括:
28.根据所述待测试系统存在的越权访问类别,进行相应的报警提示。
29.第二方面,本发明实施例还提供了一种系统测试装置,该装置包括:
30.身份验证数据获取模块,用于获取所有待测试用户登录待测试系统时生成的身份验证数据;
31.测试身份数据生成模块,用于根据各所述身份验证数据,形成各所述待测试用户的测试身份数据集;
32.访问测试操作执行模块,用于控制各所述待测试用户根据对应测试身份数据集中的测试身份数据执行访问测试操作,得到访问结果集;
33.越权访问风险判断模块,用于当所述访问结果集包含成功访问的访问结果时,确定所述待测试系统存在越权访问风险。
34.第三方面,本发明实施例还提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如本发明任意实施例所述的系统测试方法。
35.第四方面,本发明实施例还提供了一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行如本发明任意实施例所述的系统测试方法。
36.本发明通过获取所有待测试用户登录待测试系统时生成的身份验证数据;根据各身份验证数据,形成各待测试用户的测试身份数据集;控制各待测试用户根据对应测试身份数据集中的测试身份数据执行访问测试操作,得到访问结果集;当访问结果集包含成功
访问的访问结果时,确定待测试系统存在越权访问风险,有效检测待测试系统的用户登录安全性。
附图说明
37.图1是本发明实施例一提供的一种系统测试方法的流程图;
38.图2是本发明实施例二提供的一种系统测试装置的结构框图;
39.图3是本发明实施例三提供的一种计算机设备的结构框图。
具体实施方式
40.下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构,此外,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。
41.实施例一
42.图1为本发明实施例一提供的一种系统测试方法的流程图,本实施例可适用于检测待测试系统的用户登录安全性的情况,该方法可以由系统测试装置来执行,该装置可以通过软件和/或硬件实现。
43.如图1所示,该方法具体包括如下步骤:
44.步骤110、获取所有待测试用户登录待测试系统时生成的身份验证数据。
45.其中,待测试系统可以是任意需要用户登录验证的应用系统。身份验证数据可以是用户登录待测试系统时生成的小型文本文件cookie数据。
46.在本实施例中,可以选择待测试系统的全部注册用户都作为待测试用户进行系统安全性测试。具体的,可以依次控制待测试用户登录待测试系统,待测试用户通过待测试系统的身份验证后,待测试系统可以生成有效的身份验证数据返回至用户客户端。本实施例提供的系统测试装置可以获取所有待测试用户的身份验证数据进行保存。其中,获取身份验证数据的方式可以是任意数据抓取方式。
47.可选的,在步骤110之后,本实施例提供的系统测试方法还可以包括以下步骤:
48.将各身份验证数据设置成待测试系统的环境变量。
49.在实际应用中,一个系统前端可能与多个后端连接,出于安全考虑,每个后端接口都会做一些登录限制,用户在访问不同后端接口时都需要进行身份验证。本实施例为了方便检测,可以将待测试用户通过身份验证的身份验证数据设置成待测试系统的环境变量。例如将用户的有效cookie设置成环境变量,可以避免访问不同接口需要反复登录验证的问题。
50.步骤120、根据各身份验证数据,形成各待测试用户的测试身份数据集。
51.其中,测试身份数据集可以包括多个测试身份数据。
52.具体的,针对某个待测试用户,可以根据其他待测试用户的身份验证数据修改该待测试用户的身份验证数据,生成多个测试身份数据,组成该待测试用户的测试身份数据集。
53.可选的,步骤120可以根据以下步骤具体实现:
54.s1201、从各待测试用户中选取一个目标用户,将除目标用户外的其他待测试用户作为候选用户。
55.s1202、依次基于候选用户的身份验证数据参数化目标用户的身份验证数据,生成对应的测试身份数据,形成目标用户的测试身份数据集。
56.s1203、判断各待测试用户是否全部被选取过,若否,则返回s1201重新选取目标用户。
57.具体的,可以依次选取待测试用户作为目标用户,生成目标用户的测试身份数据集。针对于某一目标用户,可以根据其他任意待测试用户的身份验证数据修改该目标用户的身份验证数据,得到对应的测试身份数据。
58.步骤130、控制各待测试用户根据对应测试身份数据集中的测试身份数据执行访问测试操作,得到访问结果集。
59.在本实施例中,可以控制待测试用户根据自身对应测试身份数据集中不同的测试身份数据依次访问待测试系统,并且将每次的访问结果进行记录保存,形成访问结果集。
60.可选的,步骤130可以根据以下步骤具体实现:
61.s1301、针对每个待测试用户,从待测试用户对应的测试身份数据集中选取一个目标测试身份数据。
62.s1302、控制待测试用户基于目标测试身份数据访问待测试系统,得到访问结果,并将访问结果添加至访问结果集。
63.s1303、判断待测试用户对应的测试身份数据集中的测试身份数据是否全部被选取过,若否,则返回s1301重新选取目标测试身份数据。
64.具体的,可以依次对待测试用户进行访问测试操作,对于每一个待测试用户还要基于不同的测试身份数据进行多次测试,测试的次数可以是测试身份数据集包含的测试身份数据的数量。测试的方法可以是控制待测试用户基于目标测试身份数据访问待测试系统,判断是否可以正常访问。对每个待测试用户的每次访问测试,都存在一个访问结果。访问结果可以分为成功访问和失败访问。
65.步骤140、当访问结果集包含成功访问的访问结果时,确定待测试系统存在越权访问风险。
66.一般情况下,用户只能根据自身有效的身份验证数据对系统进行正常访问,当用户的身份验证数据被非法修改时,用户是不能正常访问系统的。当访问结果集包含成功访问的访问结果时,可以认为存在待测试用户的身份验证数据被修改后依然可以正常访问待测试系统,因此,可以确定待测试系统存在越权访问风险。
67.本实施例的技术方案,通过获取所有待测试用户登录待测试系统时生成的身份验证数据;根据各身份验证数据,形成各待测试用户的测试身份数据集;控制各待测试用户根据对应测试身份数据集中的测试身份数据执行访问测试操作,得到访问结果集;当访问结果集包含成功访问的访问结果时,确定待测试系统存在越权访问风险,有效检测待测试系统的用户登录安全性。
68.在上述技术方案的基础上,本实施例提供的系统测试方法还可以包括以下步骤:
69.根据访问结果为成功访问的访问测试操作,确定待测试系统存在的越权访问类别。
70.在本实施例中,越权访问类别可以分为水平越权和垂直越权。一般情况下,用户登录系统后,只能查看或操作到在本人职权范围内的相关信息。当用户可以查看或操作到其他人的信息时,可以认为用户具有越权访问行为。如果用户可以查看或操作同级用户的信息,可以定义为水平越权;如果用户可以查看或操作到上级用户的信息,可以定义为垂直越权。
71.可选的,根据访问结果为成功访问的访问测试操作,确定待测试系统存在的越权访问类别,可以通过以下步骤具体实现:
72.1)确定访问结果为成功访问的访问测试操作为越权访问操作,越权访问操作对应的待测试用户为越权访问用户;
73.2)将越权访问用户执行越权访问操作时使用的测试身份数据确定为越权身份数据,生成越权身份数据的身份验证数据对应的待测试用户确定为信息泄露用户;
74.3)根据越权访问用户和信息泄露用户的用户权限等级,确定待测试系统存在的越权访问类别。
75.可选的,在确定待测试系统存在的越权访问类别之后,本实施例提供的系统测试方法还可以实现:根据待测试系统存在的越权访问类别,进行相应的报警提示。
76.具体的,当待测试系统存在的存在越权访问风险时,本实施例提供的系统测试装置可以将待测试系统存在的越权访问类别进行风险等级划分,一般情况下,水平越权的风险等级较低,垂直越权的风险等级较高。确定了风险等级后,可以根据风险等级把越权访问的相关测试信息发送给指定的终端用户,进行相应的报警提示。
77.实施例二
78.本发明实施例所提供的系统测试装置可执行本发明任意实施例所提供的系统测试方法,具备执行方法相应的功能模块和有益效果。图2是本发明实施例二提供的一种系统测试装置的结构框图,如图2所示,该装置包括:身份验证数据获取模块210、测试身份数据生成模块220、访问测试操作执行模块230和越权访问风险判断模块240。
79.身份验证数据获取模块210,用于获取所有待测试用户登录待测试系统时生成的身份验证数据。
80.测试身份数据生成模块220,用于根据各身份验证数据,形成各待测试用户的测试身份数据集。
81.访问测试操作执行模块230,用于控制各待测试用户根据对应测试身份数据集中的测试身份数据执行访问测试操作,得到访问结果集。
82.越权访问风险判断模块240,用于当访问结果集包含成功访问的访问结果时,确定待测试系统存在越权访问风险。
83.本实施例的技术方案,通过获取所有待测试用户登录待测试系统时生成的身份验证数据;根据各身份验证数据,形成各待测试用户的测试身份数据集;控制各待测试用户根据对应测试身份数据集中的测试身份数据执行访问测试操作,得到访问结果集;当访问结果集包含成功访问的访问结果时,确定待测试系统存在越权访问风险,有效检测待测试系统的用户登录安全性。
84.可选的,所述测试身份数据生成模块220,包括:
85.第一候选用户选取单元,用于从各所述待测试用户中选取一个目标用户,将除所
述目标用户外的其他待测试用户作为候选用户;
86.测试身份数据生成单元,用于依次基于所述候选用户的身份验证数据参数化所述目标用户的身份验证数据,生成对应的测试身份数据,形成目标用户的测试身份数据集;
87.第二候选用户选取单元,用于返回重新选取目标用户,直至各所述待测试用户全部被选取。
88.可选的,所述访问测试操作执行模块230,包括:
89.第一目标数据选取单元,用于针对每个待测试用户,从所述待测试用户对应的测试身份数据集中选取一个目标测试身份数据;
90.访问测试操作执行单元,用于控制所述待测试用户基于所述目标测试身份数据访问所述待测试系统,得到访问结果,并将所述访问结果添加至访问结果集;
91.第二目标数据选取单元,用于返回重新选取目标测试身份数据,直至所述待测试用户对应的测试身份数据集中的测试身份数据全部被选取。
92.可选的,所述装置还包括环境变量设置模块,用于:
93.在获取所有待测试用户登录待测试系统时生成的身份验证数据之后,将各所述身份验证数据设置成所述待测试系统的环境变量。
94.可选的,所述装置还包括越权访问类别确定模块,用于:
95.在确定所述待测试系统存在越权访问风险之后,根据访问结果为成功访问的访问测试操作,确定所述待测试系统存在的越权访问类别。
96.可选的,所述越权访问类别确定模块,包括:
97.越权访问用户确定单元,用于确定访问结果为成功访问的访问测试操作为越权访问操作,所述越权访问操作对应的待测试用户为越权访问用户;
98.信息泄露用户确定单元,用于将所述越权访问用户执行越权访问操作时使用的测试身份数据确定为越权身份数据,生成所述越权身份数据的身份验证数据对应的待测试用户确定为信息泄露用户;
99.越权访问类别确定单元,用于根据所述越权访问用户和所述信息泄露用户的用户权限等级,确定所述待测试系统存在的越权访问类别。
100.可选的,所述装置还包括报警提示模块,用于:
101.在确定所述待测试系统存在的越权访问类别之后,根据所述待测试系统存在的越权访问类别,进行相应的报警提示。
102.实施例三
103.图3为本发明实施例三提供的一种计算机设备的结构框图,如图3所示,该计算机设备包括处理器310、存储器320、输入装置330和输出装置340;计算机设备中处理器310的数量可以是一个或多个,图3中以一个处理器310为例;计算机设备中的处理器310、存储器320、输入装置330和输出装置340可以通过总线或其他方式连接,图3中以通过总线连接为例。
104.存储器320作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本发明实施例中的系统测试方法对应的程序指令/模块(例如,系统测试装置中的身份验证数据获取模块210、测试身份数据生成模块220、访问测试操作执行模块230和越权访问风险判断模块240)。处理器310通过运行存储在存储器320中的软件程序、指令
以及模块,从而执行计算机设备的各种功能应用以及数据处理,即实现上述的系统测试方法。
105.存储器320可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据终端的使用所创建的数据等。此外,存储器320可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储器320可进一步包括相对于处理器310远程设置的存储器,这些远程存储器可以通过网络连接至计算机设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
106.输入装置330可用于接收输入的数字或字符信息,以及产生与计算机设备的用户设置以及功能控制有关的键信号输入。输出装置340可包括显示屏等显示设备。
107.实施例四
108.本发明实施例四还提供一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行一种系统测试方法,该方法包括:
109.获取所有待测试用户登录待测试系统时生成的身份验证数据;
110.根据各所述身份验证数据,形成各所述待测试用户的测试身份数据集;
111.控制各所述待测试用户根据对应测试身份数据集中的测试身份数据执行访问测试操作,得到访问结果集;
112.当所述访问结果集包含成功访问的访问结果时,确定所述待测试系统存在越权访问风险。
113.当然,本发明实施例所提供的一种包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上所述的方法操作,还可以执行本发明任意实施例所提供的系统测试方法中的相关操作。
114.通过以上关于实施方式的描述,所属领域的技术人员可以清楚地了解到,本发明可借助软件及必需的通用硬件来实现,当然也可以通过硬件实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如计算机的软盘、只读存储器(read-only memory,rom)、随机存取存储器(random access memory,ram)、闪存(flash)、硬盘或光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
115.值得注意的是,上述系统测试装置的实施例中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。
116.注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1