CN111125713A - 一种水平越权漏洞的检测方法、装置及电子设备 - Google Patents
一种水平越权漏洞的检测方法、装置及电子设备 Download PDFInfo
- Publication number
- CN111125713A CN111125713A CN201911306652.7A CN201911306652A CN111125713A CN 111125713 A CN111125713 A CN 111125713A CN 201911306652 A CN201911306652 A CN 201911306652A CN 111125713 A CN111125713 A CN 111125713A
- Authority
- CN
- China
- Prior art keywords
- account
- service
- feedback
- account identity
- parameters
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
- G06F21/577—Assessing vulnerabilities and evaluating computer system security
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本说明书实施例提供一种水平越权漏洞的检测方法、装置及电子设备。方法包括:在目标移动应用中,基于第一账户身份和至少一个第二账户身份发起指定账户权限操作的业务请求,其中,至少一个第二账户身份发起的业务请求是将第一账户身份发起的业务请求中的签名信息替换为第二账户身份的签名信息得到的。确定账户身份不同对业务请求中的请求参数的差异性影响系数、账户身份不同对业务反馈结果中的反馈参数的差异性影响系数以及所述第一账户身份的业务反馈结果的反馈参数与所述至少一个第二账户身份的业务反馈结果的反馈参数之间的相似度,从而判断目标移动应用是否存在水平越权漏洞。
Description
技术领域
本文件涉及数据处理技术领域,尤其涉及一种水平越权漏洞的检测方法、装置及电子设备。
背景技术
业务系统随着功能不断扩展,架构也越来越来复杂,在搭建完成后难免会存在一些漏洞。这其中就包括越权漏洞。在越权中,有一种是水平越权,即攻击者与被攻击者所属同一权限组,各人本应该只能对自身账号的内容进行操作,但实际上攻击者通过将向系统发送携带有被攻击者签名的请求,对被攻击者的权限内容进行了操作。例如:用户A将自己向系统发送的请求中的签名修改为了用户B的签名,从而成功修改了用户B的密码,这种情况就是水平越权。
在现有技术中,移动应用的水平越权漏洞是测试人员根据自身的经验,手动进行测试的。对于一些架构相对复杂的移动应用系统,业务接口种类的较多,细分下的每个权限操作都需要经过大量测试才能验证是否存在水平越权漏洞,因此经常会出现人为遗漏和人为错误的情况发生。有鉴于此,当前急需一种能够自动挖掘移动应用中的水平越权漏洞的技术方案。
发明内容
本说明书实施例目的是提供一水平越权漏洞的检测方法、装置及电子设备,能够自动挖掘移动应用中的水平越权漏洞。
为了实现上述目的,本说明书实施例是这样实现的:
第一方面,提供一种水平越权漏洞的检测方法,包括:
在目标移动应用中,基于所述第一账户身份和至少一个第二账户身份发起指定账户权限操作的业务请求,其中,所述至少一个第二账户身份发起的业务请求是将所述第一账户身份发起的业务请求中的签名信息替换为第二账户身份的签名信息得到的;
基于所述第一账户身份和至少一个第二账户身份发起的业务请求,确定账户身份不同对业务请求中的请求参数的差异性影响系数;
基于所述第一账户身份和至少一个第二账户身份发起的业务请求所获得的业务反馈结果,确定账户身份不同对业务反馈结果中的反馈参数的差异性影响系数,以及所述第一账户身份的业务反馈结果的反馈参数与所述至少一个第二账户身份的业务反馈结果的反馈参数之间的相似度;
基于账户身份不同对业务请求中的请求参数的差异性影响系数、账户身份不同对业务反馈结果中的反馈参数的差异性影响系数以及所述第一账户身份的业务反馈结果的反馈参数与所述至少一个第二账户身份的业务反馈结果的反馈参数之间的相似度,确定所述目标移动应用是否存在水平越权漏洞。
第二方面,提供一种水平越权漏洞的检测装置,包括:
测试模块,在目标移动应用中,基于所述第一账户身份和至少一个第二账户身份发起指定账户权限操作的业务请求,其中,所述至少一个第二账户身份发起的业务请求是将所述第一账户身份发起的业务请求中的签名信息替换为第二账户身份的签名信息得到的;
第一确定模块,基于所述第一账户身份和至少一个第二账户身份发起的业务请求,确定账户身份不同对业务请求中的请求参数的差异性影响系数;
第二确定模块,基于所述第一账户身份和至少一个第二账户身份发起的业务请求所获得的业务反馈结果,确定账户身份不同对业务反馈结果中的反馈参数的差异性影响系数,以及所述第一账户身份的业务反馈结果的反馈参数与所述至少一个第二账户身份的业务反馈结果的反馈参数之间的相似度;
水平越权判定模块,基于账户身份不同对业务请求中的请求参数的差异性影响系数、账户身份不同对业务反馈结果中的反馈参数的差异性影响系数以及所述第一账户身份的业务反馈结果的反馈参数与所述至少一个第二账户身份的业务反馈结果的反馈参数之间的相似度,确定所述目标移动应用是否存在水平越权漏洞。
第三方面,提供一种电子设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行:
在目标移动应用中,基于所述第一账户身份和至少一个第二账户身份发起指定账户权限操作的业务请求,其中,所述至少一个第二账户身份发起的业务请求是将所述第一账户身份发起的业务请求中的签名信息替换为第二账户身份的签名信息得到的;
基于所述第一账户身份和至少一个第二账户身份发起的业务请求,确定账户身份不同对业务请求中的请求参数的差异性影响系数;
基于所述第一账户身份和至少一个第二账户身份发起的业务请求所获得的业务反馈结果,确定账户身份不同对业务反馈结果中的反馈参数的差异性影响系数,以及所述第一账户身份的业务反馈结果的反馈参数与所述至少一个第二账户身份的业务反馈结果的反馈参数之间的相似度;
基于账户身份不同对业务请求中的请求参数的差异性影响系数、账户身份不同对业务反馈结果中的反馈参数的差异性影响系数以及所述第一账户身份的业务反馈结果的反馈参数与所述至少一个第二账户身份的业务反馈结果的反馈参数之间的相似度,确定所述目标移动应用是否存在水平越权漏洞。
第四方面,提供一种算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如下步骤:
在目标移动应用中,基于所述第一账户身份和至少一个第二账户身份发起指定账户权限操作的业务请求,其中,所述至少一个第二账户身份发起的业务请求是将所述第一账户身份发起的业务请求中的签名信息替换为第二账户身份的签名信息得到的;
基于所述第一账户身份和至少一个第二账户身份发起的业务请求,确定账户身份不同对业务请求中的请求参数的差异性影响系数;
基于所述第一账户身份和至少一个第二账户身份发起的业务请求所获得的业务反馈结果,确定账户身份不同对业务反馈结果中的反馈参数的差异性影响系数,以及所述第一账户身份的业务反馈结果的反馈参数与所述至少一个第二账户身份的业务反馈结果的反馈参数之间的相似度;
基于账户身份不同对业务请求中的请求参数的差异性影响系数、账户身份不同对业务反馈结果中的反馈参数的差异性影响系数以及所述第一账户身份的业务反馈结果的反馈参数与所述至少一个第二账户身份的业务反馈结果的反馈参数之间的相似度,确定所述目标移动应用是否存在水平越权漏洞。
本说明书实施例的方案在目标移动应用中,通过不同账户身份的签名信息,发送同一指定账户权限操作的业务请求,以实现重放测试,从而确定账户身份不同对重放的请求参数的差异性的影响规律,以及账户身份不同对重放的反馈参数的差异性的影响规律,进而结合不同账户身份之间的反馈参数的相似度,来评估目标移动应用是否存在水平越权漏洞。基于本说明实施例的方案,能够自动挖掘移动应用中的水平越权漏洞,具有较高的执行效率和准确率。
附图说明
为了更清楚地说明本说明书实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书实施例中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本说明书实施例提供的水平越权漏洞的检测方法的流程示意图。
图2为本说明书实施例提供的水平越权漏洞的检测装置的结构示意图。
图3为本说明书实施例提供的电子设备的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本说明书中的技术方案,下面将结合本说明书实施例中的附图,对本说明书实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本说明书一部分实施例,而不是全部的实施例。基于本说明书中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都应当属于本说明书保护的范围。
如前所述,目前还没有针对移动应用的水平越权漏洞检测方案。测试人员需要根据自身经验,进行手动测试。对于一些架构相对复杂的移动应用系统,业务接口种类的较多,细分下的每个权限操作都需要经过大量测试才能验证是否存在水平越权漏洞,因此经常会出现人为遗漏和人为错误的情况发生。在此背景下,本文件旨在提供一种自动挖掘移动应用中的水平越权漏洞的技术方案。
图1是本说明书实施例水平越权漏洞的检测方法的流程图。图1所示的方法可以由下文相对应的装置执行,包括:
步骤S102,在目标移动应用中,基于第一账户身份和至少一个第二账户身份发起指定账户权限操作的业务请求,该至少一个第二账户身份发起的业务请求是将第一账户身份发起的业务请求中的签名信息替换为第二账户身份的签名信息得到的户身份发起的业务请求中的签名摘要替换为非目标账户身份的签名摘要得到的。
应理解,本步骤是对第一账户身份进行重放测试。在本说明书实施例中,第一账户身份为合法账户身份,第二账户身份为非法合法账户身份。
具体地,本步骤可以通过第一账户身份发起指定账户权限操作的业务请求,从而获取第一账户身份的签名接口。之后将第一账户身份的业务请求中的签名信息(如第一账户身份签名中的摘要信息)篡改成第二账户身份的签名信息(如第二账户身份签名中的摘要信息),并反射调用第一账户身份的签名接口进行发送,即可在移动应用上实现重放。
步骤S104,基于第一账户身份和上述至少一个第二账户身份发起的业务请求,确定账户身份不同对业务请求中的请求参数的差异性影响系数。
具体地,本步骤中,可以基于第一账户身份、至少一个第二账户身份的账户身份的账户身份总数量,以及所有业务请求经请求参数去重后的数量,确定账户身份不同对业务请求中的请求参数的差异性影响系数。
应理解,只有私有接口才具有检测水平越权漏洞的意义。通过账户身份不同对业务请求中的请求参数的差异性影响系数,可以判断第一账户身份的签名接口是否属于公共接口。
一般情况下,公共接口发起的业务请求中的请求参数是通用的。也就是说,随着账户身份增多,业务请求中的请求参数去重后的种类也随之趋近于等量增多,则说明第一账户身份的签名接口不是公共接口。
因此,假设所述第一账户身份和至少一个第二账户身份的账户身份的账户身份总数量与所有业务请求经请求参数去重后的数量的比值作为差异性影响系数,当这个差异性影响系数趋近于1时,反映第一账户身份的签名接口不属于公共接口,存在具有检测水平越权漏洞的意义。如果这个差异性影响系数大于且不趋近于1,则反映第一账户身份的签名接口属于公共接口,不会存在检测水平越权漏洞,在这种情况下,可以重新选择方向进行挖掘。
步骤S106,基于第一账户身份和上述至少一个第二账户身份发起的业务请求所获得的业务反馈结果,确定账户身份不同对业务反馈结果中的反馈参数的差异性影响系数,以及第一账户身份的业务反馈结果的反馈参数与上述至少一个第二账户身份的业务反馈结果的反馈参数之间的相似度。
具体地,本步骤中,可以基于第一账户身份、至少一个第二账户身份的账户身份的账户身份总数量,以及所有业务反馈结果经反馈参数去重后的数量,确定账户身份不同对业务反馈结果中的反馈参数的差异性影响系数。
应理解,当随着账户身份增多,业务反馈结果中的反馈参数去重后的种类并未随之趋近于等量增多,则说明账户身份不同对反馈参数不同的影响性较小,所发起的指定账户权限操作可以得到相同的结果,也是这这个证明目标签名接口存在水平越权漏洞的可能性较大。
基于第一账户身份、至少一个第二账户身份的账户身份的账户身份总数量与所有业务反馈结果经反馈参数去重后的数量的比值,作为账户身份不同对业务反馈结果中的反馈参数的差异性影响系数,当这个差异性影响系数大于并不趋近于1时,则说明了目标签名接口存在水平越权漏洞的可能性较大。
此外,本步骤还需要进一步根据第一账户身份的业务反馈结果的反馈参数与上述至少一个第二账户身份的业务反馈结果的反馈参数之间的相似度,来确定目标移动应用是否存在水平越权漏洞。
其中,为了方便进行相似度计算,本步骤可以先对反馈参数进行归一化处理。即,对第一账户身份和上述至少一个第二账户身份发起的业务请求所获得的业务反馈结果的反馈参数进行阿拉伯数字编码,得到各业务反馈结果的阿拉伯数字表征值。之后,再对第一账户身份的业务反馈结果的反馈参数的阿拉伯数字表征值与至少一个第二账户身份的业务反馈结果的反馈参数的阿拉伯数字表征值进行相似度计算,确定第一账户身份的业务反馈结果的反馈参数与至少一个第二账户身份的业务反馈结果的反馈参数之间的相似度。
步骤S108,基于账户身份不同对业务请求中的请求参数的差异性影响系数、账户身份不同对业务反馈结果中的反馈参数的差异性影响系数以及第一账户身份的业务反馈结果的反馈参数与上述至少一个第二账户身份的业务反馈结果的反馈参数之间的相似度,确定目标移动应用是否存在水平越权漏洞。
如前所述,若账户身份不同对业务请求中的请求参数的差异性影响系数小于账户身份不同对业务反馈结果中的反馈参数的差异性影响系数,且第一账户身份的业务反馈结果的反馈参数与上述至少一个第二账户身份的业务反馈结果的反馈参数之间的相似度达到预设相似度要求,则确定目标移动应用存在水平越权漏洞。
本说明书实施例的检测方法在目标移动应用中,通过不同账户身份的签名信息,发送同一指定账户权限操作的业务请求,以实现重放测试,从而确定账户身份不同对重放的请求参数的差异性的影响规律,以及账户身份不同对重放的反馈参数的差异性的影响规律,进而结合不同账户身份之间的反馈参数的相似度,来评估目标移动应用是否存在水平越权漏洞。基于本说明实施例的方案,能够自动挖掘移动应用中的水平越权漏洞,具有较高的执行效率和准确率。
下面对本说明书实施例的水平越权漏洞的检测方法进行详细介绍。
假设本说明书实施例的方法在移动通信系统的靶机环境中,模拟目标移动应用的三个账户身份:用户1、用户2和用户3。
首先,在目标移动应用的客户端,通过用户2正常向目标移动应用的服务器发起获取用户2的隐私信息的业务请求,得到用户2对应的业务反馈结果,这个业务反馈结果携带有用户2的隐私信息。
之后,通过反射调用方式,确定出用户2的发起测试结果请求所使用的签名接口,并将业务请求的签名摘要替换成用户1的签名摘要,再次向用户2的签名接口发送获取用户2的隐私信息的业务请求,得到用户1对应的业务反馈结果。同理,通过相同方式,将业务请求的签名摘要替换成用户3的签名摘要,再次向用户3的签名接口发送获取用户2的隐私信息的业务请求,得到用户3对应的业务反馈结果。
之后,计算以下三个参数:
1)账户身份不同对业务请求中的请求参数的差异性影响系数f(a)。
具体地,可以对用户1、用户2和用户3发起的获取用户2的隐私信息的业务请求中的请求参数进行去重,得到请求参数去重的数量。之后将发起业务请求参数的账户身份的数据量与请求参数去重的数量的比值确定为f(a)的值。
2)账户身份不同对业务反馈结果中的反馈参数的差异性影响系数f(b)。
具体地,可以对用户1、用户2和用户3对应的业务反馈结果的反馈参数进行去重,得到反馈参数去重后的数量。之后将发起业务请求参数的账户身份的数据量与反馈参数去重的数量的比值确定为f(b)的值。
3)用户1、用户2和用户3的业务反馈结果之间的反馈参数的相似度f(rp)。
应理解,如果用户2的签名接口存在水平越权漏洞,则用户2和用户3对应的业务反馈结果的反馈参数携带有用户的隐私信息,即用户1、用户2和用户3之间的反馈参数一致,f(rp)的值等于1。
具体地,在计算f(rp)时,应对用户1、用户2和用户3对应的业务反馈结果的反馈参数进行阿拉伯数字编码,以将反馈参数归一化为阿拉伯数字表征值。之后,对所述目标签名接口下不同账户身份的业务反馈结果之间的阿拉伯数字表征值进行相似度计算,得到f(rp)的取值。
在确定f(a)、f(b)和f(rp)的取值后,基于f(a)、f(b)和f(rp)判断目标移动应用是否存在水平越权漏洞。
如果f(a)趋近并大于1、f(b)大于1、f(a)/f(b)小于1,且f(rp)等于1,则说明目标移动应用存在水平越权漏洞。
以上是仅用于对本说明书实施例的方法进行示例性介绍。应理解,上述的请求参数、反馈参数和指定账户权限操作本文不作具体限定,在不脱离本文上述原理基础之上,进行的适当变化都应视为本文件的保护范围。
与上述检测方法相对应地,如图2所示,本说明书实施例还提供一种水平越权漏洞的检测装置200,包括:
测试模块210,在目标移动应用中,基于所述第一账户身份和至少一个第二账户身份发起指定账户权限操作的业务请求,其中,所述至少一个第二账户身份发起的业务请求是将所述第一账户身份发起的业务请求中的签名信息替换为第二账户身份的签名信息得到的;
第一确定模块220,基于所述第一账户身份和至少一个第二账户身份发起的业务请求,确定账户身份不同对业务请求中的请求参数的差异性影响系数;
第二确定模块230,基于所述第一账户身份和至少一个第二账户身份发起的业务请求所获得的业务反馈结果,确定账户身份不同对业务反馈结果中的反馈参数的差异性影响系数,以及所述第一账户身份的业务反馈结果的反馈参数与所述至少一个第二账户身份的业务反馈结果的反馈参数之间的相似度;
水平越权判定模块240,基于账户身份不同对业务请求中的请求参数的差异性影响系数、账户身份不同对业务反馈结果中的反馈参数的差异性影响系数以及所述第一账户身份的业务反馈结果的反馈参数与所述至少一个第二账户身份的业务反馈结果的反馈参数之间的相似度,确定所述目标移动应用是否存在水平越权漏洞。
本说明书实施例的装置在目标移动应用中,通过不同账户身份的签名信息,发送同一指定账户权限操作的业务请求,以实现重放测试,从而确定账户身份不同对重放的请求参数的差异性的影响规律,以及账户身份不同对重放的反馈参数的差异性的影响规律,进而结合不同账户身份之间的反馈参数的相似度,来评估目标移动应用是否存在水平越权漏洞。基于本说明实施例的方案,能够自动挖掘移动应用中的水平越权漏洞,具有较高的执行效率和准确率。
可选地,所述第二确定模块230在执行时,具体对所述目标签名接口下不同账户身份的业务反馈结果的反馈参数进行阿拉伯数字编码,得到各业务反馈结果的阿拉伯数字表征值;之后,对所述目标签名接口下不同账户身份的业务反馈结果之间的阿拉伯数字表征值进行相似度计算,得到所述目标签名接口下不同账户身份的业务反馈结果之间的反馈参数的相似度。
可选地,水平越权判定模块240在执行时,若账户身份不同对业务请求中的请求参数的差异性影响系数小于账户身份不同对业务反馈结果中的反馈参数的差异性影响系数,且所述第一账户身份的业务反馈结果的反馈参数与所述至少一个第二账户身份的业务反馈结果的反馈参数之间的相似度达到预设相似度要求,则确定所述目标移动应用存在水平越权漏洞。
可选地,所述第一确定模块220在执行时,具体基于所述第一账户身份和至少一个第二账户身份的账户身份的账户身份总数量与所有业务请求经请求参数去重后的数量的比值,确定账户身份不同对业务请求中的请求参数的差异性影响系数。
可选地,所述第二确定模块230在执行时,具体基于所述第一账户身份和至少一个第二账户身份的账户身份的账户身份总数量与所有业务反馈结果经反馈参数去重后的数量的比值,确定账户身份不同对业务反馈结果中的反馈参数的差异性影响系数。
可选地,测试模块210在执行时,具体在目标移动应用中,反射调用所述第一账户身份在所述目标移动应用中的签名接口,基于基于所述第一账户身份和至少一个第二账户身份发起指定账户权限操作的业务请求。
可选地,业务请求中的签名信息包括签名的摘要信息。
显然,本说明书实施例的检测装置可以作为上述图1所示的检测方法的执行主体,因此该检测装置能够实现方法在图1所实现的功能。由于原理相同,本文不再赘述。
图3是本说明书的一个实施例电子设备的结构示意图。请参考图3,在硬件层面,该电子设备包括处理器,可选地还包括内部总线、网络接口、存储器。其中,存储器可能包含内存,例如高速随机存取存储器(Random-Access Memory,RAM),也可能还包括非易失性存储器(non-volatile memory),例如至少1个磁盘存储器等。当然,该电子设备还可能包括其他业务所需要的硬件。
处理器、网络接口和存储器可以通过内部总线相互连接,该内部总线可以是ISA(Industry Standard Architecture,工业标准体系结构)总线、PCI(PeripheralComponent Interconnect,外设部件互连标准)总线或EISA(Extended Industry StandardArchitecture,扩展工业标准结构)总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图3中仅用一个双向箭头表示,但并不表示仅有一根总线或一种类型的总线。
存储器,用于存放程序。具体地,程序可以包括程序代码,所述程序代码包括计算机操作指令。存储器可以包括内存和非易失性存储器,并向处理器提供指令和数据。
处理器从非易失性存储器中读取对应的计算机程序到内存中然后运行,在逻辑层面上形成水平越权漏洞的装置。处理器,执行存储器所存放的程序,并具体用于执行以下操作:
在目标移动应用中,基于所述第一账户身份和至少一个第二账户身份发起指定账户权限操作的业务请求,其中,所述至少一个第二账户身份发起的业务请求是将所述第一账户身份发起的业务请求中的签名信息替换为第二账户身份的签名信息得到的。
基于所述第一账户身份和至少一个第二账户身份发起的业务请求,确定账户身份不同对业务请求中的请求参数的差异性影响系数。
基于所述第一账户身份和至少一个第二账户身份发起的业务请求所获得的业务反馈结果,确定账户身份不同对业务反馈结果中的反馈参数的差异性影响系数,以及所述第一账户身份的业务反馈结果的反馈参数与所述至少一个第二账户身份的业务反馈结果的反馈参数之间的相似度。
基于账户身份不同对业务请求中的请求参数的差异性影响系数、账户身份不同对业务反馈结果中的反馈参数的差异性影响系数以及所述第一账户身份的业务反馈结果的反馈参数与所述至少一个第二账户身份的业务反馈结果的反馈参数之间的相似度,确定所述目标移动应用是否存在水平越权漏洞。
本说明书实施例的电子设备在目标移动应用中,通过不同账户身份的签名信息,发送同一指定账户权限操作的业务请求,以实现重放测试,从而确定账户身份不同对重放的请求参数的差异性的影响规律,以及账户身份不同对重放的反馈参数的差异性的影响规律,进而结合不同账户身份之间的反馈参数的相似度,来评估目标移动应用是否存在水平越权漏洞。基于本说明实施例的方案,能够自动挖掘移动应用中的水平越权漏洞,具有较高的执行效率和准确率。
上述如本说明书图1所示实施例揭示的检测方法可以应用于处理器中,或者由处理器实现。处理器可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本说明书实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本说明书实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。
应理解,本说明书实施例的电子设备可以实现上述装置在图1和图2所示的实施例的功能,本文不再赘述。
当然,除了软件实现方式之外,本说明书的电子设备并不排除其他实现方式,比如逻辑器件抑或软硬件结合的方式等等,也就是说以下处理流程的执行主体并不限定于各个逻辑单元,也可以是硬件或逻辑器件。
此外,本说明书实施例还提出了一种计算机可读存储介质,该计算机可读存储介质存储一个或多个程序,该一个或多个程序包括指令,该指令当被包括多个应用程序的便携式电子设备执行时,能够使该便携式电子设备执行图1所示实施例的方法,并具体用于执行以下方法:
在目标移动应用中,基于所述第一账户身份和至少一个第二账户身份发起指定账户权限操作的业务请求,其中,所述至少一个第二账户身份发起的业务请求是将所述第一账户身份发起的业务请求中的签名信息替换为第二账户身份的签名信息得到的。
基于所述第一账户身份和至少一个第二账户身份发起的业务请求,确定账户身份不同对业务请求中的请求参数的差异性影响系数;
基于所述第一账户身份和至少一个第二账户身份发起的业务请求所获得的业务反馈结果,确定账户身份不同对业务反馈结果中的反馈参数的差异性影响系数,以及所述第一账户身份的业务反馈结果的反馈参数与所述至少一个第二账户身份的业务反馈结果的反馈参数之间的相似度。
基于账户身份不同对业务请求中的请求参数的差异性影响系数、账户身份不同对业务反馈结果中的反馈参数的差异性影响系数以及所述第一账户身份的业务反馈结果的反馈参数与所述至少一个第二账户身份的业务反馈结果的反馈参数之间的相似度,确定所述目标移动应用是否存在水平越权漏洞。
应理解,上述指令当被包括多个应用程序的便携式电子设备执行时,能够使上文所述的水平越权漏洞的检测装置实现图1所示实施例的功能,本文不再赘述。
本领域技术人员应明白,本说明书的实施例可提供为方法、系统或计算机程序产品。因此,本说明书可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本说明书可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
以上仅为本说明书的实施例而已,并不用于限制本说明书。对于本领域技术人员来说,本说明书可以有各种更改和变化。凡在本说明书的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本说明书的权利要求范围之内。此外,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都应当属于本文件的保护范围。
Claims (10)
1.一种水平越权漏洞的检测方法,包括:
在目标移动应用中,基于所述第一账户身份和至少一个第二账户身份发起指定账户权限操作的业务请求,其中,所述至少一个第二账户身份发起的业务请求是将所述第一账户身份发起的业务请求中的签名信息替换为第二账户身份的签名信息得到的;
基于所述第一账户身份和至少一个第二账户身份发起的业务请求,确定账户身份不同对业务请求中的请求参数的差异性影响系数;
基于所述第一账户身份和至少一个第二账户身份发起的业务请求所获得的业务反馈结果,确定账户身份不同对业务反馈结果中的反馈参数的差异性影响系数,以及所述第一账户身份的业务反馈结果的反馈参数与所述至少一个第二账户身份的业务反馈结果的反馈参数之间的相似度;
基于账户身份不同对业务请求中的请求参数的差异性影响系数、账户身份不同对业务反馈结果中的反馈参数的差异性影响系数以及所述第一账户身份的业务反馈结果的反馈参数与所述至少一个第二账户身份的业务反馈结果的反馈参数之间的相似度,确定所述目标移动应用是否存在水平越权漏洞。
2.根据权利要求1所述的方法,
基于所述第一账户身份和至少一个第二账户身份发起的业务请求,确定账户身份不同对业务请求中的请求参数的差异性影响系数,包括:
基于所述第一账户身份和至少一个第二账户身份的账户身份的账户身份总数量与所有业务请求经请求参数去重后的数量的比值,确定账户身份不同对业务请求中的请求参数的差异性影响系数。
3.根据权利要求1所述的方法,
基于所述第一账户身份和至少一个第二账户身份发起的业务请求所获得的业务反馈结果,包括:
基于所述第一账户身份和至少一个第二账户身份的账户身份的账户身份总数量与所有业务反馈结果经反馈参数去重后的数量的比值,确定账户身份不同对业务反馈结果中的反馈参数的差异性影响系数。
4.根据权利要求1所述的方法,
基于所述第一账户身份和至少一个第二账户身份发起的业务请求所获得的业务反馈结果,确定所述第一账户身份的业务反馈结果的反馈参数与所述至少一个第二账户身份的业务反馈结果的反馈参数之间的相似度包括:
对所述第一账户身份和至少一个第二账户身份发起的业务请求所获得的业务反馈结果的反馈参数进行阿拉伯数字编码,得到各业务反馈结果的阿拉伯数字表征值;
对第一账户身份的业务反馈结果的反馈参数的阿拉伯数字表征值与至少一个第二账户身份的业务反馈结果的反馈参数的阿拉伯数字表征值进行相似度计算,确定所述第一账户身份的业务反馈结果的反馈参数与所述至少一个第二账户身份的业务反馈结果的反馈参数之间的相似度。
5.根据权利要求1-4中任一项所述的方法,
基于账户身份不同对业务请求中的请求参数的差异性影响系数、账户身份不同对业务反馈结果中的反馈参数的差异性影响系数以及所述第一账户身份的业务反馈结果的反馈参数与所述至少一个第二账户身份的业务反馈结果的反馈参数之间的相似度,确定所述目标移动应用是否存在水平越权漏洞,包括:
若账户身份不同对业务请求中的请求参数的差异性影响系数小于账户身份不同对业务反馈结果中的反馈参数的差异性影响系数,且所述第一账户身份的业务反馈结果的反馈参数与所述至少一个第二账户身份的业务反馈结果的反馈参数之间的相似度达到预设相似度要求,则确定所述目标移动应用存在水平越权漏洞。
6.根据权利要求1-4中任一项所述的方法,
在目标移动应用中,基于所述第一账户身份和至少一个第二账户身份发起指定账户权限操作的业务请求,包括:
在目标移动应用中,反射调用所述第一账户身份在所述目标移动应用中的签名接口,基于基于所述第一账户身份和至少一个第二账户身份发起指定账户权限操作的业务请求。
7.根据权利要求1-4中任一项所述的方法,
业务请求中的签名信息包括签名的摘要信息。
8.一种水平越权漏洞的检测装置,包括:
测试模块,在目标移动应用中,基于所述第一账户身份和至少一个第二账户身份发起指定账户权限操作的业务请求,其中,所述至少一个第二账户身份发起的业务请求是将所述第一账户身份发起的业务请求中的签名信息替换为第二账户身份的签名信息得到的;
第一确定模块,基于所述第一账户身份和至少一个第二账户身份发起的业务请求,确定账户身份不同对业务请求中的请求参数的差异性影响系数;
第二确定模块,基于所述第一账户身份和至少一个第二账户身份发起的业务请求所获得的业务反馈结果,确定账户身份不同对业务反馈结果中的反馈参数的差异性影响系数,以及所述第一账户身份的业务反馈结果的反馈参数与所述至少一个第二账户身份的业务反馈结果的反馈参数之间的相似度;
水平越权判定模块,基于账户身份不同对业务请求中的请求参数的差异性影响系数、账户身份不同对业务反馈结果中的反馈参数的差异性影响系数以及所述第一账户身份的业务反馈结果的反馈参数与所述至少一个第二账户身份的业务反馈结果的反馈参数之间的相似度,确定所述目标移动应用是否存在水平越权漏洞。
9.一种电子设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行:
在目标移动应用中,基于所述第一账户身份和至少一个第二账户身份发起指定账户权限操作的业务请求,其中,所述至少一个第二账户身份发起的业务请求是将所述第一账户身份发起的业务请求中的签名信息替换为第二账户身份的签名信息得到的;
基于所述第一账户身份和至少一个第二账户身份发起的业务请求,确定账户身份不同对业务请求中的请求参数的差异性影响系数;
基于所述第一账户身份和至少一个第二账户身份发起的业务请求所获得的业务反馈结果,确定账户身份不同对业务反馈结果中的反馈参数的差异性影响系数,以及所述第一账户身份的业务反馈结果的反馈参数与所述至少一个第二账户身份的业务反馈结果的反馈参数之间的相似度;
基于账户身份不同对业务请求中的请求参数的差异性影响系数、账户身份不同对业务反馈结果中的反馈参数的差异性影响系数以及所述第一账户身份的业务反馈结果的反馈参数与所述至少一个第二账户身份的业务反馈结果的反馈参数之间的相似度,确定所述目标移动应用是否存在水平越权漏洞。
10.一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如下步骤:
在目标移动应用中,基于所述第一账户身份和至少一个第二账户身份发起指定账户权限操作的业务请求,其中,所述至少一个第二账户身份发起的业务请求是将所述第一账户身份发起的业务请求中的签名信息替换为第二账户身份的签名信息得到的;
基于所述第一账户身份和至少一个第二账户身份发起的业务请求,确定账户身份不同对业务请求中的请求参数的差异性影响系数;
基于所述第一账户身份和至少一个第二账户身份发起的业务请求所获得的业务反馈结果,确定账户身份不同对业务反馈结果中的反馈参数的差异性影响系数,以及所述第一账户身份的业务反馈结果的反馈参数与所述至少一个第二账户身份的业务反馈结果的反馈参数之间的相似度;
基于账户身份不同对业务请求中的请求参数的差异性影响系数、账户身份不同对业务反馈结果中的反馈参数的差异性影响系数以及所述第一账户身份的业务反馈结果的反馈参数与所述至少一个第二账户身份的业务反馈结果的反馈参数之间的相似度,确定所述目标移动应用是否存在水平越权漏洞。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911306652.7A CN111125713B (zh) | 2019-12-18 | 2019-12-18 | 一种水平越权漏洞的检测方法、装置及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911306652.7A CN111125713B (zh) | 2019-12-18 | 2019-12-18 | 一种水平越权漏洞的检测方法、装置及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111125713A true CN111125713A (zh) | 2020-05-08 |
CN111125713B CN111125713B (zh) | 2022-04-08 |
Family
ID=70499458
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911306652.7A Active CN111125713B (zh) | 2019-12-18 | 2019-12-18 | 一种水平越权漏洞的检测方法、装置及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111125713B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112491807A (zh) * | 2020-11-05 | 2021-03-12 | 杭州孝道科技有限公司 | 基于交互式应用检测技术的水平越权漏洞检测方法 |
CN113242257A (zh) * | 2021-05-26 | 2021-08-10 | 中国银行股份有限公司 | 越权漏洞的检测方法、装置、设备及存储介质 |
CN115348117A (zh) * | 2022-10-20 | 2022-11-15 | 闪捷信息科技有限公司 | 用户水平越权行为判定方法和装置 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106713347A (zh) * | 2017-01-18 | 2017-05-24 | 国网江苏省电力公司电力科学研究院 | 一种电力移动应用越权访问漏洞检测方法 |
CN107294919A (zh) * | 2016-03-31 | 2017-10-24 | 阿里巴巴集团控股有限公司 | 一种水平权限漏洞的检测方法及装置 |
CN107577949A (zh) * | 2017-09-05 | 2018-01-12 | 郑州云海信息技术有限公司 | 一种Web越权漏洞检测方法与系统 |
CN108932426A (zh) * | 2018-06-27 | 2018-12-04 | 平安科技(深圳)有限公司 | 越权漏洞检测方法和装置 |
CN109460661A (zh) * | 2018-09-17 | 2019-03-12 | 平安科技(深圳)有限公司 | 一种逻辑安全漏洞检测方法、装置及终端设备 |
CN110084044A (zh) * | 2019-03-14 | 2019-08-02 | 深圳壹账通智能科技有限公司 | 针对水平越权漏洞自动进行测试的方法及相关设备 |
US20200167478A1 (en) * | 2017-08-01 | 2020-05-28 | Mitsubishi Electric Corporation | Security diagnosis device and security diagnosis method |
-
2019
- 2019-12-18 CN CN201911306652.7A patent/CN111125713B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107294919A (zh) * | 2016-03-31 | 2017-10-24 | 阿里巴巴集团控股有限公司 | 一种水平权限漏洞的检测方法及装置 |
CN106713347A (zh) * | 2017-01-18 | 2017-05-24 | 国网江苏省电力公司电力科学研究院 | 一种电力移动应用越权访问漏洞检测方法 |
US20200167478A1 (en) * | 2017-08-01 | 2020-05-28 | Mitsubishi Electric Corporation | Security diagnosis device and security diagnosis method |
CN107577949A (zh) * | 2017-09-05 | 2018-01-12 | 郑州云海信息技术有限公司 | 一种Web越权漏洞检测方法与系统 |
CN108932426A (zh) * | 2018-06-27 | 2018-12-04 | 平安科技(深圳)有限公司 | 越权漏洞检测方法和装置 |
CN109460661A (zh) * | 2018-09-17 | 2019-03-12 | 平安科技(深圳)有限公司 | 一种逻辑安全漏洞检测方法、装置及终端设备 |
CN110084044A (zh) * | 2019-03-14 | 2019-08-02 | 深圳壹账通智能科技有限公司 | 针对水平越权漏洞自动进行测试的方法及相关设备 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112491807A (zh) * | 2020-11-05 | 2021-03-12 | 杭州孝道科技有限公司 | 基于交互式应用检测技术的水平越权漏洞检测方法 |
CN113242257A (zh) * | 2021-05-26 | 2021-08-10 | 中国银行股份有限公司 | 越权漏洞的检测方法、装置、设备及存储介质 |
CN115348117A (zh) * | 2022-10-20 | 2022-11-15 | 闪捷信息科技有限公司 | 用户水平越权行为判定方法和装置 |
CN115348117B (zh) * | 2022-10-20 | 2023-03-24 | 闪捷信息科技有限公司 | 用户水平越权行为判定方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN111125713B (zh) | 2022-04-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111125713B (zh) | 一种水平越权漏洞的检测方法、装置及电子设备 | |
US10915659B2 (en) | Privacy detection of a mobile application program | |
CN110879903A (zh) | 证据存储方法、证据验证方法及装置、设备和介质 | |
CN110929264B (zh) | 漏洞检测方法、装置、电子设备及可读存储介质 | |
KR101277517B1 (ko) | 애플리케이션 위/변조 탐지장치 및 방법 | |
CN108763951B (zh) | 一种数据的保护方法及装置 | |
WO2012103646A1 (en) | Determining the vulnerability of computer software applications to privilege-escalation attacks | |
CN109145651B (zh) | 一种数据处理方法及装置 | |
CN112817822A (zh) | App行为监控方法和装置、终端及存储介质 | |
CN111553320B (zh) | 保护个人数据隐私的特征提取方法、模型训练方法及硬件 | |
CN111783091A (zh) | 恶意进程检测方法、装置、终端及计算机可读存储介质 | |
CN109818972B (zh) | 一种工业控制系统信息安全管理方法、装置及电子设备 | |
CN112016057B (zh) | 代码文件的隐私保护方法、评估方法及装置及电子设备 | |
CN111783082A (zh) | 进程的追溯方法、装置、终端和计算机可读存储介质 | |
CN111143853B (zh) | 一种应用安全的评估方法和装置 | |
CN109710692B (zh) | 一种区块链网络中用户信息处理方法、装置及存储介质 | |
CN115708340B (zh) | 数据验证方法、装置和存储介质 | |
CN108509773B (zh) | 一种源代码加固方法及装置 | |
CN113596600B (zh) | 直播嵌入程序的安全管理方法、装置、设备及存储介质 | |
CN115051824A (zh) | 一种垂直越权检测方法、系统、设备及存储介质 | |
CN109714371B (zh) | 一种工控网络安全检测系统 | |
CN114765552A (zh) | 数据处理方法、中台系统、存储介质和电子设备 | |
CN111274554B (zh) | 小程序的api调用方法、装置、设备和介质 | |
CN113238884B (zh) | 一种固件文件的检测方法、装置、电子设备及存储介质 | |
CN110096856B (zh) | 一种访问控制方法、系统、电子设备及介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |