一种接口的权限测试方法、系统、设备以及介质技术方案

技术编号:32166233 阅读:10 留言:0更新日期:2022-02-08 15:20
本发明专利技术公开了一种接口的权限测试方法,包括以下步骤:获取接口权限表,其中接口权限表中记录了每一个待测接口的多个测试参数;获取每一个待测接口的多个参数中的若干个参数对应的值;利用每一个待测接口的多个参数和若干个参数对应的值生成请求并发送到对应的待测接口;响应于接收到对应的待测接口返回的响应,获取并根据对应的待测接口的匹配规则和预期响应对对应的待测接口返回的响应进行校验。本发明专利技术还公开了一种系统、计算机设备以及可读存储介质。本发明专利技术提出的方案通过该方案可以通过接口请求参数定制和响应匹配规则定制,实现接口横纵向越权的精确检测,代替复杂横向越权问题的手动检测,提高了接口越权问题的自动化程度和检测效率。程度和检测效率。程度和检测效率。

【技术实现步骤摘要】
一种接口的权限测试方法、系统、设备以及介质


[0001]本专利技术涉及测试领域,具体涉及一种接口的权限测试方法、系统、设备以及存储介质。

技术介绍

[0002]越权访问(Broken Access Control,简称BAC)是Web应用程序中一种常见的漏洞,由于其存在范围广、危害大,被OWASP列为Web应用十大安全隐患的第二名。该漏洞是指应用在检查授权时存在纰漏,使得攻击者在获得低权限用户账户后,利用一些方式绕过权限检查,访问或者操作其他用户或者更高权限。越权漏洞的成因主要是因为开发人员在对数据进行增、删、改、查询时对客户端请求的数据过分相信而遗漏了权限的判定,一旦权限验证不充分,就易致越权漏洞。越权访问漏洞主要分为横向越权、纵向越权。
[0003]为减轻安全测评工程师的工作量,提高检测效率,工程师通常会开发自动化测试工具或脚本进行越权问题的检测。纵向越权问题检测只需要考虑接口地址、不同权限用户的认证信息即可,不需要考虑资源数据,因此只需要一个接口请求,通过对比响应内容便可判断该接口是否存在纵向越权问题。而横向越权考虑的不止这一点,还需要考虑不同权限的用户是否拥有同一个资源的访问权限,所以横向越权的检测更加复杂。
[0004]而现有的接口的权限检测方法仅适用于纵向越权问题,对于复杂的横向越权问题几乎无法检测,因此对于实际的安全测评来说,只能协助覆盖接口的纵向越权部分,剩下的横向越权还是要由安全测评工程师手动完成,测试效率较低。

技术实现思路

[0005]有鉴于此,为了克服上述问题的至少一个方面,本专利技术实施例提出一种接口的权限测试方法,包括以下步骤:
[0006]获取接口权限表,其中所述接口权限表中记录了每一个待测接口的多个测试参数;
[0007]获取每一个待测接口的多个参数中的若干个参数对应的值;
[0008]利用每一个待测接口的多个参数和所述若干个参数对应的值生成请求并发送到对应的待测接口;
[0009]响应于接收到对应的待测接口返回的响应,获取并根据所述对应的待测接口的匹配规则和预期响应对所述对应的待测接口返回的响应进行校验。
[0010]在一些实施例中,获取每一个待测接口的多个参数中的若干个参数对应的值,进一步包括:
[0011]将若干个参数对应的值添加到所述接口权限表中以从所述接口权限表中获取所述若干个参数对应的值;或,
[0012]向预设接口发送辅助请求以获取所述若干个参数对应的值。
[0013]在一些实施例中,向预设接口发送辅助请求以获取所述若干个参数对应的值,进
一步包括:
[0014]通过表达式对所述预设接口返回的响应进行筛选以得到所述若干个参数对应的值。
[0015]在一些实施例中,获取预期响应,进一步包括:
[0016]将所述预期响应添加到所述接口权限表中以从所述接口权限表中获取所述预期响应;或,
[0017]向预设接口发送辅助请求以获取所述预期响应。
[0018]基于同一专利技术构思,根据本专利技术的另一个方面,本专利技术的实施例还提供了一种接口的权限测试系统,包括:
[0019]第一获取模块,配置为获取接口权限表,其中所述接口权限表中记录了每一个待测接口的多个测试参数;
[0020]第二获取模块,配置为获取每一个待测接口的多个参数中的若干个参数对应的值;
[0021]请求模块,配置为利用每一个待测接口的多个参数和所述若干个参数对应的值生成请求并发送到对应的待测接口;
[0022]校验模块,配置为响应于接收到对应的待测接口返回的响应,获取并根据所述对应的待测接口的匹配规则和预期响应对所述对应的待测接口返回的响应进行校验。
[0023]在一些实施例中,第二获取模块还配置为:
[0024]将若干个参数对应的值添加到所述接口权限表中以从所述接口权限表中获取所述若干个参数对应的值;或,
[0025]向预设接口发送辅助请求以获取所述若干个参数对应的值。
[0026]在一些实施例中,第二获取模块还配置为:
[0027]通过表达式对所述预设接口返回的响应进行筛选以得到所述若干个参数对应的值。
[0028]在一些实施例中,校验模块还配置为:
[0029]将所述预期响应添加到所述接口权限表中以从所述接口权限表中获取所述预期响应;或,
[0030]向预设接口发送辅助请求以获取所述预期响应。
[0031]基于同一专利技术构思,根据本专利技术的另一个方面,本专利技术的实施例还提供了一种计算机设备,包括:
[0032]至少一个处理器;以及
[0033]存储器,所述存储器存储有可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时执行以下步骤:
[0034]获取接口权限表,其中所述接口权限表中记录了每一个待测接口的多个测试参数;
[0035]获取每一个待测接口的多个参数中的若干个参数对应的值;
[0036]利用每一个待测接口的多个参数和所述若干个参数对应的值生成请求并发送到对应的待测接口;
[0037]响应于接收到对应的待测接口返回的响应,获取并根据所述对应的待测接口的匹
配规则和预期响应对所述对应的待测接口返回的响应进行校验。
[0038]在一些实施例中,获取每一个待测接口的多个参数中的若干个参数对应的值,进一步包括:
[0039]将若干个参数对应的值添加到所述接口权限表中以从所述接口权限表中获取所述若干个参数对应的值;或,
[0040]向预设接口发送辅助请求以获取所述若干个参数对应的值。
[0041]在一些实施例中,向预设接口发送辅助请求以获取所述若干个参数对应的值,进一步包括:
[0042]通过表达式对所述预设接口返回的响应进行筛选以得到所述若干个参数对应的值。
[0043]在一些实施例中,获取预期响应,进一步包括:
[0044]将所述预期响应添加到所述接口权限表中以从所述接口权限表中获取所述预期响应;或,
[0045]向预设接口发送辅助请求以获取所述预期响应。
[0046]基于同一专利技术构思,根据本专利技术的另一个方面,本专利技术的实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时执行以下步骤:
[0047]获取接口权限表,其中所述接口权限表中记录了每一个待测接口的多个测试参数;
[0048]获取每一个待测接口的多个参数中的若干个参数对应的值;
[0049]利用每一个待测接口的多个参数和所述若干个参数对应的值生成请求并发送到对应的待测接口;
[0050]响应于接收到对应的待测接口返回的响应,获取并根据所述对应的待测接口的匹配规则和预期响应对所述对应的待测接口返回的响应进行校验。
[0051]在一些实施例中,获取每一个待测接口的多个参数中的若干个参数对应的值,进一步包括:
[0052]将若干个参本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种接口的权限测试方法,其特征在于,包括以下步骤:获取接口权限表,其中所述接口权限表中记录了每一个待测接口的多个测试参数;获取每一个待测接口的多个参数中的若干个参数对应的值;利用每一个待测接口的多个参数和所述若干个参数对应的值生成请求并发送到对应的待测接口;响应于接收到对应的待测接口返回的响应,获取并根据所述对应的待测接口的匹配规则和预期响应对所述对应的待测接口返回的响应进行校验。2.如权利要求1所述的方法,其特征在于,获取每一个待测接口的多个参数中的若干个参数对应的值,进一步包括:将若干个参数对应的值添加到所述接口权限表中以从所述接口权限表中获取所述若干个参数对应的值;或,向预设接口发送辅助请求以获取所述若干个参数对应的值。3.如权利要求2所述的方法,其特征在于,向预设接口发送辅助请求以获取所述若干个参数对应的值,进一步包括:通过表达式对所述预设接口返回的响应进行筛选以得到所述若干个参数对应的值。4.如权利要求1所述的方法,其特征在于,获取预期响应,进一步包括:将所述预期响应添加到所述接口权限表中以从所述接口权限表中获取所述预期响应;或,向预设接口发送辅助请求以获取所述预期响应。5.一种接口的权限测试系统,其特征在于,包括:第一获取模块,配置为获取接口权限表,其中所述接口权限表中记录了每一个待测接口的多个测试参数;第二获取模块,配置为获取每一个待测接口的多个参数中的若干个参...

【专利技术属性】
技术研发人员:李勇
申请(专利权)人:苏州浪潮智能科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1