CN111416811B - 越权漏洞检测方法、系统、设备及存储介质 - Google Patents
越权漏洞检测方法、系统、设备及存储介质 Download PDFInfo
- Publication number
- CN111416811B CN111416811B CN202010180788.4A CN202010180788A CN111416811B CN 111416811 B CN111416811 B CN 111416811B CN 202010180788 A CN202010180788 A CN 202010180788A CN 111416811 B CN111416811 B CN 111416811B
- Authority
- CN
- China
- Prior art keywords
- response
- login request
- account
- url address
- information
- 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.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1433—Vulnerability analysis
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/10—Network architectures or network communication protocols for network security for controlling access to devices or network resources
- H04L63/102—Entity profiles
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明提供了一种越权漏洞检测方法、系统、设备及存储介质,所述方法包括步骤:基于第一账户向服务器发送第一登录请求;获取关于所述第一登录请求的第一响应信息,所述第一响应信息中包含有用于标识第一账户的第一身份信息;获取关于第二账户的第二目标URL地址;并基于所述第一身份信息和所述第二目标URL地址,构建关于第二账户的第二登录请求,向所述服务器发送所述第二登录请求;获取关于所述第二登录请求的第二响应信息;基于所述第一响应信息和所述第二响应信息,判断所述服务器是否存在越权漏洞。本申请实现了对越权漏洞的自动化检测,提高了越权漏洞的检测效率,并且提高了企业业务系统的安全性。
Description
技术领域
本发明涉及网络安全技术领域,具体地说,涉及一种越权漏洞检测方法、系统、设备及存储介质。
背景技术
越权漏洞是一种很常见的逻辑安全漏洞。越权漏洞是由于服务器端对用户提出的数据操作请求过分信任,忽略了对该用户操作权限的判定,导致用户只要修改相关参数就可以拥有其他账户的增、删、查、改功能,从而导致越权漏洞的产生。
越权漏洞的危害和影响与对应业务的重要性成正相关。如果业务存在平行越权的话,普通用户就可以查看其他普通用户的敏感信息。如果业务存在垂直越权,低权限用户就可以查看高权限用户的敏感信息。越权漏洞具有很强的隐秘性,一旦存在将对企业造成巨大的危害,可能造成企业的用户敏感信息泄露。因此,企业十分有必要加强对越权漏洞的主动识别以及防御。
发明内容
针对现有技术中的问题,本发明的目的在于提供一种越权漏洞检测方法、系统、设备及存储介质,实现了对越权漏洞的自动化检测,提高了企业业务系统的安全性。
为实现上述目的,本发明提供了一种越权漏洞检测方法,所述方法包括以下步骤:
S10,基于第一账户向服务器发送第一登录请求;
S20,获取关于所述第一登录请求的第一响应信息,所述第一响应信息中包含有用于标识第一账户的第一身份信息;
S50,获取关于第二账户的第二目标URL地址;并基于所述第一身份信息和所述第二目标URL地址,构建关于第二账户的第二登录请求,向所述服务器发送所述第二登录请求;
S60,获取关于所述第二登录请求的第二响应信息;
S70,基于所述第一响应信息和所述第二响应信息,判断所述服务器是否存在越权漏洞。
优选地,所述第一登录请求中包含有目标URL地址;所述步骤S20和步骤S50之间还包括步骤:
S30,判断所述目标URL地址是否在预设名单中;
S40,若所述目标URL地址不在所述预设名单中,判断所述目标URL地址是否包含预设关键字字段;
所述步骤S50包括:
若所述目标URL地址包含预设关键字字段,则获取关于第二账户的第二目标URL地址;并基于所述第一身份信息和所述第二目标URL地址,构建关于第二账户的第二登录请求,向所述服务器发送所述第二登录请求。
优选地,所述步骤S70包括步骤:
S701,分别获取关于所述第一响应信息的第一响应长度以及关于所述第二响应信息的第二响应长度;
S702,判断所述第一响应长度与所述第二响应长度是否相等;
S703,若所述第一响应长度与所述第二响应长度相等,则判定所述服务器存在越权漏洞。
优选地,所述步骤S70还包括步骤:
S704,若所述第一响应长度与所述第二响应长度不相等,则分别获取关于所述第一响应信息的第一响应体以及关于所述第二响应信息的第二响应体;
S705,基于所述第一响应体以及所述第二响应体,获取所述第一响应体与所述第二响应体之间的相似度;
S706,判断所述相似度是否大于预设阈值;
S707,若所述相似度大于所述预设阈值,则判定所述服务器存在越权漏洞。
优选地,所述第一响应体以及所述第二响应体均包含有响应字段以及响应值;
所述步骤S705包括步骤:
S7051,基于所述第一响应体以及所述第二响应体,获取所述第一响应体与所述第二响应体中共同的响应字段,作为第二响应字段;
S7052,获取在所述第一响应体的与所述第二响应字段对应的响应值中,与所述第二响应体中与所述第二响应字段对应的响应值相同的个数;
S7053,将所述相同的个数与所述第二响应字段的个数作比,确定为所述第一响应体与所述第二响应体之间的相似度。
优选地,所述第二目标URL地址中包含有关联第二账户的第二身份信息;所述基于所述第一身份信息和所述第二目标URL地址,构建关于第二账户的第二登录请求,包括:
将所述第二目标URL地址中的所述第二身份信息替换为所述第一身份信息,形成新的第二目标URL地址;
基于所述新的第二目标URL地址,构建关于第二账户的第二登录请求。
优选地,所述第二身份信息中包含有关于第二账户的预设权限库,所述第二登录请求中包含有当前操作类型;所述步骤S50还包括:漏洞修复操作,所述漏洞修复操作为:获取所述第二登录请求中的当前操作类型,判断所述预设权限库是否包含所述当前操作类型,若是则执行步骤S60;若否则结束流程,并跳转至用户登录界面,所述用户登录界面提供有供用户分别输入账户名和密码的输入框。
优选地,所述第二身份信息关联的权限小于所述第一身份信息关联的权限。
优选地,所述第一账户为具有所有操作权限的账户。
优选地,所述方法还包括步骤:
S80,若所述服务器存在越权漏洞,则向目标用户发送报警提示信息,所述报警提示信息包括所述目标URL地址。
本发明还提供了一种越权漏洞检测系统,所述系统包括:
第一登录请求发送模块,用于基于第一账户向服务器发送第一登录请求;
第一响应信息获取模块,用于获取关于所述第一登录请求的第一响应信息,所述第一响应信息中包含有用于标识第一账户的第一身份信息;
第二登录请求构建模块,用于获取关于第二账户的第二目标URL地址;并基于所述第一身份信息和所述第二目标URL地址,构建关于第二账户的第二登录请求,向所述服务器发送所述第二登录请求;
第二响应信息获取模块,用于获取关于所述第二登录请求的第二响应信息;
越权漏洞判断模块,用于基于所述第一响应信息和所述第二响应信息,判断所述服务器是否存在越权漏洞。
本发明还提供了一种越权漏洞检测设备,包括:
处理器;
存储器,其中存储有所述处理器的可执行指令;
其中,所述处理器配置为经由执行所述可执行指令来执行上述任意一项越权漏洞检测方法的步骤。
本发明还提供了一种计算机可读存储介质,用于存储程序,所述程序被执行时实现上述任意一项越权漏洞检测方法的步骤。
本发明与现有技术相比,具有以下优点及突出性效果:
本发明提供的越权漏洞检测方法、系统、设备及存储介质通过先基于第一账户的第一登录请求获取到第一响应信息,然后基于第一登录请求构建第二登录请求,并获取到第二响应信息,比较第一响应信息和第二响应信息的不同,实现对越权漏洞的检测;本申请可以实现水平越权和垂直越权的双重检测,并且一方面能够快速检测出越权漏洞,避免了人工检测效率低下的缺点;另一方面提高了业务系统以及用户敏感数据的安全性,提升了用户体验。
附图说明
通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显。
图1为本发明实施例公开的越权漏洞检测方法的流程示意图;
图2为本发明另一实施例公开的越权漏洞检测方法的流程示意图;
图3为本发明实施例公开的越权漏洞检测系统的结构示意图;
图4为本发明实施例公开的越权漏洞检测设备的结构示意图;
图5为本发明实施例公开的计算机可读存储介质的结构示意图。
具体实施方式
现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的实施方式。相反,提供这些实施方式使得本发明将全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。在图中相同的附图标记表示相同或类似的结构,因而将省略对它们的重复描述。
本申请实施例提出的越权漏洞检测方法可以应用于包括终端设备(如PC(Personal Computer,个人计算机)、笔记本电脑、移动终端等)和服务器的系统。其中,终端设备上安装有用于访问服务器的客户端,该客户端可以是终端设备上的APP,也可以是终端设备上的浏览器,对此客户端的类型不做限制,所有能够访问服务器的客户端,均在本申请实施例的保护范围之内。
如图1所示,本发明实施例公开了一种越权漏洞检测方法,该方法包括以下步骤:
S10,基于第一账户向服务器发送第一登录请求;上述第一登录请求中包含有目标URL(Uniform Resource Locator,统一资源定位符)地址。具体来说,对于通常的客户端和服务器之间的数据交互来说,客户端向服务器发送请求,服务器向客户端返回针对该请求的响应。该请求,对于本实施例来说即为第一登录请求和第二登录请求,可以为HTTP(Hypertext Transfer Protocol,超文本传输协议)类型的请求,也可以为其他类型的请求。比如FTP(File Transfer Protocol,文件传输协议)类型等。本实施例对第一登录请求和第二登录请求的类型不作限制,后续本实施例以HTTP类型的请求为例进行说明,类似的,针对该请求的响应也是HTTP类型的响应。
第一账户在访问服务器资源时,比如服务器上的web系统时,需要输入账户ID和密码。将该账户ID和密码生成至上述第一登录请求中,也即该第一登录请求中不仅包含有第一账户的目标URL地址,还包含有上述第一账户对应的账户ID和密码。那么在第一账户访问服务器时,就将包含有账户ID、密码和目标URL地址的第一登录请求发送至服务器。服务器从该第一登录请求中解析出上述账户ID、密码和目标URL地址,服务器需要根据预设用户信息数据库判断该账户ID和密码是否合法,若合法,则允许该第一账户访问该web系统。并为该第一账户分配用户令牌,即token。服务器将在上述预设用户信息数据库中记录用户的账户ID和用户令牌的对应关系。若不合法则结束本方法的流程。
上述目标URL地址可以包括协议、服务器名称(或者IP地址)、路径和文件名(或者文件ID)等内容。本实施例对此目标URL地址的内容不作限制,本领域技术人员可根据需要进行设置。
S20,获取关于上述第一登录请求的第一响应信息,上述第一响应信息中包含有用于标识第一账户的第一身份信息。具体来说,服务器在接收到上述第一登录请求后,将对该请求进行响应,即向客户端返回第一响应信息。服务器还将为该第一账户分配的用户令牌,即用于标识第一账户的第一身份信息封装在上述响应中,即封装在第一响应信息中。该第一响应信息和上述第一登录请求是一一对应的。客户端将上述用户令牌存储在本地中,比如存储在cookie(储存在用户本地终端上的数据)中。
S50,获取关于第二账户的第二目标URL地址;并基于上述第一身份信息和上述第二目标URL地址,构建关于第二账户的第二登录请求,向上述服务器发送上述第二登录请求。具体来说,上述第二目标URL地址中包含有关联第二账户的第二身份信息,构建关于第二账户的第二登录请求的过程具体为:
将上述第二目标URL地址中的上述第二身份信息替换为上述第一身份信息,形成新的第二目标URL地址;
基于上述新的第二目标URL地址,构建关于第二账户的第二登录请求。
其中,在本实施例中,上述第二身份信息和上述第一身份信息的权限相同,那么本实施例即可完成水平越权漏洞的检测。在其他实施例中,上述第二身份信息关联的权限小于上述第一身份信息关联的权限,那么本实施例即可完成垂直越权漏洞的检测。在另一个例子中,上述第一账户为具有所有操作权限的账户。
在关于第二账户的第二登录请求构建完成之后,既可以实现请求回放操作。
S60,获取关于上述第二登录请求的第二响应信息。该步骤与上述步骤S20类似,服务器在接收到上述第二登录请求后,将会进行响应。服务器在向客户端返回针对第二登录请求的响应数据时,将把为第二账户分配的用户令牌封装在该响应数据中,发送至用户端即客户端。
S70,基于上述第一响应信息和上述第二响应信息,判断上述服务器是否存在越权漏洞。本实施例中,上述第一响应信息和上述第二响应信息是以将响应字段和对应响应值以键值对的形式存储在本地。
作为一个优选地实施例,如图2所示,上述检测方法在步骤S20和步骤S50之间还包括步骤:
S30,判断上述目标URL地址是否在预设名单中。具体来说,需要判断第一登录请求中的目标URL地址是否在预设名单中,这是因为有些目标URL地址属于敏感操作地址,对该目标URL地址进行回放,可能引起一定的误操作风险。比如,当目标URL地址属于涉及资金操作的地址时,对该请求操作进行回放,可能引起资金管理出现混乱。所以需要将在预设名单中的目标URL地址进行筛选并丢弃掉。该预设名单在具体实施时本领域技术人员可根据实际生产环境需要进行设置,本申请不设限制。示例性地,本实施例中,该预设名单为:{ic.ctrip.com cn1.global.ctrip.com districtIdunitId productid InfoIDsso.ctrip.com ran=restapi\/soa2\/\d{5}fxpcqlniredt ran="auth":"\d{5,20}"token":"\d{5,20}comment.{0,50}id=chat-orderinfoaccesstoken=Sign=CreateOrder sight\/.*\/\d{4}\.html 16767\/queryorderpaymentinfoEmailTemplate\.aspx\?param 15596risk_inspectModifyOrder pmo.tujia.com SaveDefaultContactdianping.html accesstoken secure.ctrip.com&_=\d{12,13}selectPassenger.aspxyou.ctrip.com.*\d{5,12}\.html fromurl=biz&mpvtkeybswingontravel\.com\/api\/Member\/Account\/PersonIn fo secure\.trip\.comhotels\.ctrip\.com\/internationalbook\/Tool\/AjaxChangeInvoice\.aspx ctripPayment\/Login\/Valid4Embed\/you\/asks allianceid}。
S40,若上述目标URL地址不在上述预设名单中,判断上述目标URL地址是否包含预设关键字字段。具体来说,也即若上述预设名单不包含上述目标URL地址,那么判断该目标URL地址是否包含预设关键字字段。因为只有当目标URL地址中包含有预设关键字字段的情况下,后续的越权漏洞检测才能顺利实施。本实施例中,上述预设关键字字段可以为Password、OrderId、OrderNo或者UserId。本申请对此不作限制。若上述目标URL地址在上述预设名单中,则结束本方法的流程。
相应地,步骤S50包括:若上述目标URL地址包含预设关键字字段,则获取关于第二账户的第二目标URL地址;并基于上述第一身份信息和上述第二目标URL地址,构建关于第二账户的第二登录请求,向上述服务器发送上述第二登录请求。若上述目标URL地址不包含预设关键字字段,则结束本方法的流程。
作为一个优选地实施例,上述步骤S70包括步骤:
S701,分别获取关于上述第一响应信息的第一响应长度以及关于上述第二响应信息的第二响应长度。具体来说,将第一响应信息中所有响应值组合形成一个字符串,将该字符串的长度作为上述第一响应长度。类似的,将第二响应信息中所有响应值组合形成一个第二字符串,将该第二字符串的长度作为上述第二响应长度。
S702,判断上述第一响应长度与上述第二响应长度是否相等。
S703,若上述第一响应长度与上述第二响应长度相等,则判定上述服务器存在越权漏洞。
S704,若上述第一响应长度与上述第二响应长度不相等,则分别获取关于上述第一响应信息的第一响应体以及关于上述第二响应信息的第二响应体。其中,上述第一响应体包含有上述响应字段以及响应值,上述第二响应体包含有上述响应字段以及响应值。也即上述第一响应体是利用上述第一响应信息中一一对应的响应字段和响应值成对设置而生成的。上述第二响应体是利用上述第二响应信息中一一对应的响应字段和响应值成对设置而生成的。也即将一响应字段和与该响应字段匹配的响应值成对组合后,作为第一响应体或者第二响应体中的一条数据。
S705,基于上述第一响应体以及上述第二响应体,获取上述第一响应体与上述第二响应体之间的相似度。
S706,判断上述相似度是否大于预设阈值。本实施例中的该预设阈值设置为90%,但本申请对此不作限制。
S707,若上述相似度大于上述预设阈值,则判定上述服务器存在越权漏洞。否则判定上述服务器不存在越权漏洞。
其中,上述步骤S705包括步骤:
S7051,基于上述第一响应体以及上述第二响应体,获取上述第一响应体与上述第二响应体中共同的响应字段,作为第二响应字段。比如,上述第一响应体包含有字段“age、userID、role”,上述第二响应体包含有字段“age、userID、Level”,那么第一响应体与第二响应体中共同的响应字段即为“age、userID”,第二响应字段即为“age、userID”。
S7052,获取在上述第一响应体的与上述第二响应字段对应的响应值中,与上述第二响应体中与上述第二响应字段对应的响应值相同的个数。具体来说,即先获取第一响应体中字段age和字段userID分别对应的响应值,其中age的响应值为23,userID的响应值为1011。再获取第二响应体中字段age和字段userID分别对应的响应值,其中age的响应值为23,userID的响应值为1012。那么所有响应值当中相同的个数即为1。
S7053,将上述相同的个数与上述第二响应字段的个数作比,确定为上述第一响应体与上述第二响应体之间的相似度。比如,上述第二响应字段为“age、userID”,所以第二响应字段的个数为2。由于所有响应值当中相同的个数为1,那么1与2作比就等于50%,也即相似度为50%。
作为本申请的一个优选实施例,上述第二目标URL地址中的第二身份信息中包含有关于第二账户的预设权限库,上述第二登录请求中包含有当前操作类型,比如该当前操作类型可以为删除或者修改等。上述越权漏洞检测方法的步骤S50还包括:漏洞修复操作,所述漏洞修复操作为:获取上述第二登录请求中的当前操作类型,判断所述预设权限库是否包含所述当前操作类型,若是则执行步骤S60;若否则结束流程,并跳转至用户登录界面,所述用户登录界面提供有供用户分别输入账户名和密码的输入框,即有两个输入框,其中一个输入框用于输入账户名,另一个输入框用于输入密码。这样就避免了越权漏洞问题的发生,进一步保证了企业业务系统的安全性。
作为本申请的一个优选实施例,上述方法还包括步骤:若上述服务器存在越权漏洞,则向目标用户发送报警提示信息,上述报警提示信息包括上述目标URL地址。
作为本申请的一个优选实施例,上述方法还包括步骤:将每周检测到的越权漏洞,以不同的背景颜色进行展示。比如,将距离现在时刻一周以内检测出来的越权漏洞以红色进行展示,将距离现在时刻一周以外且两周以内检测出来的漏洞以蓝色进行展示。
如图3所示,本发明实施例还公开了一种越权漏洞检测系统3,该系统包括:
第一登录请求发送模块31,用于基于第一账户向服务器发送第一登录请求;
第一响应信息获取模块32,用于获取关于上述第一登录请求的第一响应信息,上述第一响应信息中包含有用于标识第一账户的第一身份信息;
第二登录请求构建模块35,用于获取关于第二账户的第二目标URL地址;并基于上述第一身份信息和上述第二目标URL地址,构建关于第二账户的第二登录请求,向上述服务器发送上述第二登录请求;
第二响应信息获取模块36,用于获取关于上述第二登录请求的第二响应信息;
越权漏洞判断模块37,用于基于上述第一响应信息和上述第二响应信息,判断上述服务器是否存在越权漏洞。
作为本申请的一个优选实施例,越权漏洞检测系统3还包括:
预设名单判断模块33,用于判断所述目标URL地址是否在预设名单中;
预设关键字字段判断模块34,用于若所述目标URL地址不在所述预设名单中,判断所述目标URL地址是否包含预设关键字字段;
相应地,第二登录请求构建模块35具体用于在所述目标URL地址包含预设关键字字段时,获取关于第二账户的第二目标URL地址;并基于上述第一身份信息和上述第二目标URL地址,构建关于第二账户的第二登录请求,向上述服务器发送上述第二登录请求
作为本申请的一个优选实施例,越权漏洞判断模块37具体包括:
响应信息长度获取单元,用于分别获取关于上述第一响应信息的第一响应长度以及关于上述第二响应信息的第二响应长度。
长度判断单元,用于判断上述第一响应长度与上述第二响应长度是否相等。
长度相等判定单元,用于在上述第一响应长度与上述第二响应长度相等时,判定上述服务器存在越权漏洞。
长度不等判定单元,用于在上述第一响应长度与上述第二响应长度不相等时,分别获取关于上述第一响应信息的第一响应体以及关于上述第二响应信息的第二响应体。
响应体相似度获取单元,用于基于上述第一响应体以及上述第二响应体,获取上述第一响应体与上述第二响应体之间的相似度。
相似度判断单元,用于判断上述相似度是否大于预设阈值;
越权漏洞判定单元,用于当上述相似度大于上述预设阈值时,判定上述服务器存在越权漏洞。
作为本申请的一个优选实施例,上述第二目标URL地址中的第二身份信息中包含有关于第二账户的预设权限库,上述第二登录请求中包含有当前操作类型,比如该当前操作类型可以为删除或者修改等。上述第二登录请求构建模块35还用于执行漏洞修复操作,所述漏洞修复操作为:获取上述第二登录请求中的当前操作类型,判断所述预设权限库是否包含所述当前操作类型,若是则执行第二响应信息获取模块36;若否则结束流程,并跳转至用户登录界面,所述用户登录界面提供有供用户分别输入账户名和密码的输入框,即有两个输入框,其中一个输入框用于输入账户名,另一个输入框用于输入密码。
可以理解的是,本发明的越权漏洞检测系统还包括其他支持越权漏洞检测系统运行的现有功能模块。图3显示的越权漏洞检测系统仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
本实施例中的越权漏洞检测系统用于实现上述的越权漏洞检测的方法,因此对于越权漏洞检测系统的具体实施步骤可以参照上述对越权漏洞检测的方法的描述,此处不再赘述。
本发明实施例还公开了一种越权漏洞检测设备,包括处理器和存储器,其中存储器存储有所述处理器的可执行指令;处理器配置为经由执行可执行指令来执行上述越权漏洞检测方法中的步骤。图4是本发明公开的越权漏洞检测设备的结构示意图。下面参照图4来描述根据本发明的这种实施方式的电子设备600。图4显示的电子设备600仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图4所示,电子设备600以通用计算设备的形式表现。电子设备600的组件可以包括但不限于:至少一个处理单元610、至少一个存储单元620、连接不同平台组件(包括存储单元620和处理单元610)的总线630、显示单元640等。
其中,存储单元存储有程序代码,程序代码可以被处理单元610执行,使得处理单元610执行本说明书上述越权漏洞检测方法部分中描述的根据本发明各种示例性实施方式的步骤。例如,处理单元610可以执行如图1中所示的步骤。
存储单元620可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(RAM)6201和/或高速缓存存储单元6202,还可以进一步包括只读存储单元(ROM)6203。
存储单元620还可以包括具有一组(至少一个)程序模块6205的程序/实用工具6204,这样的程序模块6205包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
总线630可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、外围总线、图形加速端口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。
电子设备600也可以与一个或多个外部设备700(例如键盘、指向设备、蓝牙设备等)通信,还可与一个或者多个使得用户能与该电子设备600交互的设备通信,和/或与使得该电子设备600能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口650进行。并且,电子设备600还可以通过网络适配器660与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。网络适配器660可以通过总线630与电子设备600的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备600使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储平台等。
本发明还公开了一种计算机可读存储介质,用于存储程序,所述程序被执行时实现上述越权漏洞检测方法中的步骤。在一些可能的实施方式中,本发明的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当程序产品在终端设备上运行时,程序代码用于使终端设备执行本说明书上述越权漏洞检测方法中描述的根据本发明各种示例性实施方式的步骤。
如上所示,该实施例的计算机可读存储介质的程序在执行时,通过先基于第一账户的第一登录请求获取到第一响应信息,然后基于第一登录请求构建第二登录请求,并获取到第二响应信息,比较第一响应信息和第二响应信息的不同,实现对越权漏洞的检测;本申请可以实现水平越权和垂直越权的双重检测,并且一方面能够快速检测出越权漏洞,避免了人工检测效率低下的缺点;另一方面提高了业务系统以及用户敏感数据的安全性,提升了用户体验。
图5是本发明的计算机可读存储介质的结构示意图。参考图5所示,描述了根据本发明的实施方式的用于实现上述方法的程序产品800,其可以采用便携式紧凑盘只读存储器(CD-ROM)并包括程序代码,并可以在终端设备,例如个人电脑上运行。然而,本发明的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
计算机可读存储介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读存储介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。可读存储介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本发明操作的程序代码,程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
本发明实施例提供的越权漏洞检测方法、系统、设备及存储介质通过先基于第一账户的第一登录请求获取到第一响应信息,然后基于第一登录请求构建第二登录请求,并获取到第二响应信息,比较第一响应信息和第二响应信息的不同,实现对越权漏洞的检测;本申请可以实现水平越权和垂直越权的双重检测,并且一方面能够快速检测出越权漏洞,避免了人工检测效率低下的缺点;另一方面提高了业务系统以及用户敏感数据的安全性,提升了用户体验。
以上内容是结合具体的优选实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换,都应当视为属于本发明的保护范围。
Claims (11)
1.一种越权漏洞检测方法,其特征在于,包括以下步骤:
S10,基于第一账户向服务器发送第一登录请求;所述第一登录请求中包含有目标URL地址;
S20,获取关于所述第一登录请求的第一响应信息,所述第一响应信息中包含有用于标识第一账户的第一身份信息;所述第一身份信息为服务器为所述第一账户分配的用户令牌;
S30,判断所述目标URL地址是否在预设名单中;
S40,若所述目标URL地址不在所述预设名单中,判断所述目标URL地址是否包含预设关键字字段;
S50,若所述目标URL地址包含预设关键字字段,则获取关于第二账户的第二目标URL地址;并基于所述第一身份信息和所述第二目标URL地址,构建关于第二账户的第二登录请求,向所述服务器发送所述第二登录请求;
S60,获取关于所述第二登录请求的第二响应信息;
S70,基于所述第一响应信息和所述第二响应信息,判断所述服务器是否存在越权漏洞;
所述第二目标URL地址中包含有关联第二账户的第二身份信息;所述基于所述第一身份信息和所述第二目标URL地址,构建关于第二账户的第二登录请求,包括:
将所述第二目标URL地址中的所述第二身份信息替换为所述第一身份信息,形成新的第二目标URL地址;
基于所述新的第二目标URL地址,构建关于第二账户的第二登录请求。
2.如权利要求1所述的越权漏洞检测方法,其特征在于,所述步骤S70包括步骤:
S701,分别获取关于所述第一响应信息的第一响应长度以及关于所述第二响应信息的第二响应长度;
S702,判断所述第一响应长度与所述第二响应长度是否相等;
S703,若所述第一响应长度与所述第二响应长度相等,则判定所述服务器存在越权漏洞。
3.如权利要求2所述的越权漏洞检测方法,其特征在于,所述步骤S70还包括步骤:
S704,若所述第一响应长度与所述第二响应长度不相等,则分别获取关于所述第一响应信息的第一响应体以及关于所述第二响应信息的第二响应体;
S705,基于所述第一响应体以及所述第二响应体,获取所述第一响应体与所述第二响应体之间的相似度;
S706,判断所述相似度是否大于预设阈值;
S707,若所述相似度大于所述预设阈值,则判定所述服务器存在越权漏洞。
4.如权利要求3所述的越权漏洞检测方法,其特征在于,所述第一响应体以及所述第二响应体均包含有响应字段以及响应值;
所述步骤S705包括步骤:
S7051,基于所述第一响应体以及所述第二响应体,获取所述第一响应体与所述第二响应体中共同的响应字段,作为第二响应字段;
S7052,获取在所述第一响应体的与所述第二响应字段对应的响应值中,与所述第二响应体中与所述第二响应字段对应的响应值相同的个数;
S7053,将所述相同的个数与所述第二响应字段的个数作比,确定为所述第一响应体与所述第二响应体之间的相似度。
5.如权利要求1所述的越权漏洞检测方法,其特征在于,所述第二身份信息中包含有关于第二账户的预设权限库,所述第二登录请求中包含有当前操作类型;所述步骤S50还包括:漏洞修复操作,所述漏洞修复操作为:获取所述第二登录请求中的当前操作类型,判断所述预设权限库是否包含所述当前操作类型,若是则执行步骤S60;若否则结束流程,并跳转至用户登录界面,所述用户登录界面提供有供用户分别输入账户名和密码的输入框。
6.如权利要求1所述的越权漏洞检测方法,其特征在于,所述第二身份信息关联的权限小于所述第一身份信息关联的权限。
7.如权利要求1所述的越权漏洞检测方法,其特征在于,所述第一账户为具有所有操作权限的账户。
8.如权利要求1所述的越权漏洞检测方法,其特征在于,所述方法还包括步骤:
S80,若所述服务器存在越权漏洞,则向目标用户发送报警提示信息,所述报警提示信息包括所述目标URL地址。
9.一种越权漏洞检测系统,其特征在于,用于实现如权利要求1所述的越权漏洞检测方法,包括:
第一登录请求发送模块,用于基于第一账户向服务器发送第一登录请求;
第一响应信息获取模块,用于获取关于所述第一登录请求的第一响应信息,所述第一响应信息中包含有用于标识第一账户的第一身份信息;
第二登录请求构建模块,用于获取关于第二账户的第二目标URL地址;并基于所述第一身份信息和所述第二目标URL地址,构建关于第二账户的第二登录请求,向所述服务器发送所述第二登录请求;
第二响应信息获取模块,用于获取关于所述第二登录请求的第二响应信息;
越权漏洞判断模块,用于基于所述第一响应信息和所述第二响应信息,判断所述服务器是否存在越权漏洞。
10.一种越权漏洞检测设备,其特征在于,包括:
处理器;
存储器,其中存储有所述处理器的可执行指令;
其中,所述处理器配置为经由执行所述可执行指令来执行权利要求1至8中任意一项所述越权漏洞检测方法的步骤。
11.一种计算机可读存储介质,用于存储程序,其特征在于,所述程序被执行时实现权利要求1至8任意一项所述越权漏洞检测方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010180788.4A CN111416811B (zh) | 2020-03-16 | 2020-03-16 | 越权漏洞检测方法、系统、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010180788.4A CN111416811B (zh) | 2020-03-16 | 2020-03-16 | 越权漏洞检测方法、系统、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111416811A CN111416811A (zh) | 2020-07-14 |
CN111416811B true CN111416811B (zh) | 2022-07-22 |
Family
ID=71494418
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010180788.4A Active CN111416811B (zh) | 2020-03-16 | 2020-03-16 | 越权漏洞检测方法、系统、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111416811B (zh) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111967043B (zh) * | 2020-07-29 | 2023-08-11 | 深圳开源互联网安全技术有限公司 | 确定数据相似度的方法、装置、电子设备及存储介质 |
CN112491807A (zh) * | 2020-11-05 | 2021-03-12 | 杭州孝道科技有限公司 | 基于交互式应用检测技术的水平越权漏洞检测方法 |
CN112464250A (zh) * | 2020-12-15 | 2021-03-09 | 光通天下网络科技股份有限公司 | 越权漏洞自动检测方法、设备及介质 |
CN112765611B (zh) * | 2021-01-19 | 2022-11-25 | 上海微盟企业发展有限公司 | 一种越权漏洞检测方法、装置、设备及存储介质 |
CN113242257A (zh) * | 2021-05-26 | 2021-08-10 | 中国银行股份有限公司 | 越权漏洞的检测方法、装置、设备及存储介质 |
CN113347270B (zh) * | 2021-06-25 | 2022-12-23 | 中国银行股份有限公司 | 一种网络传输文件防水平越权方法和装置 |
CN113452710B (zh) * | 2021-06-28 | 2022-12-27 | 深圳前海微众银行股份有限公司 | 越权漏洞检测方法、装置、设备及计算机程序产品 |
CN113961940B (zh) * | 2021-12-21 | 2022-03-25 | 杭州海康威视数字技术股份有限公司 | 基于权限动态更新机制的越权检测方法及装置 |
CN116346488B (zh) * | 2023-04-13 | 2024-05-17 | 贝壳找房(北京)科技有限公司 | 一种越权访问的检测方法及装置 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9077747B1 (en) * | 2013-07-23 | 2015-07-07 | Symantec Corporation | Systems and methods for responding to security breaches |
CN105357195A (zh) * | 2015-10-30 | 2016-02-24 | 深圳市深信服电子科技有限公司 | web访问的越权漏洞检测方法及装置 |
CN107294919A (zh) * | 2016-03-31 | 2017-10-24 | 阿里巴巴集团控股有限公司 | 一种水平权限漏洞的检测方法及装置 |
CN110084044A (zh) * | 2019-03-14 | 2019-08-02 | 深圳壹账通智能科技有限公司 | 针对水平越权漏洞自动进行测试的方法及相关设备 |
CN110489966A (zh) * | 2019-08-12 | 2019-11-22 | 腾讯科技(深圳)有限公司 | 平行越权漏洞检测方法、装置、存储介质及电子设备 |
CN110581835A (zh) * | 2018-06-11 | 2019-12-17 | 阿里巴巴集团控股有限公司 | 一种漏洞检测方法、装置及终端设备 |
CN110598418A (zh) * | 2019-09-10 | 2019-12-20 | 深圳开源互联网安全技术有限公司 | 基于iast测试工具动态检测垂直越权的方法及系统 |
CN110674507A (zh) * | 2019-09-19 | 2020-01-10 | 深圳开源互联网安全技术有限公司 | 检测web应用越权的方法及系统 |
-
2020
- 2020-03-16 CN CN202010180788.4A patent/CN111416811B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9077747B1 (en) * | 2013-07-23 | 2015-07-07 | Symantec Corporation | Systems and methods for responding to security breaches |
CN105357195A (zh) * | 2015-10-30 | 2016-02-24 | 深圳市深信服电子科技有限公司 | web访问的越权漏洞检测方法及装置 |
CN107294919A (zh) * | 2016-03-31 | 2017-10-24 | 阿里巴巴集团控股有限公司 | 一种水平权限漏洞的检测方法及装置 |
CN110581835A (zh) * | 2018-06-11 | 2019-12-17 | 阿里巴巴集团控股有限公司 | 一种漏洞检测方法、装置及终端设备 |
CN110084044A (zh) * | 2019-03-14 | 2019-08-02 | 深圳壹账通智能科技有限公司 | 针对水平越权漏洞自动进行测试的方法及相关设备 |
CN110489966A (zh) * | 2019-08-12 | 2019-11-22 | 腾讯科技(深圳)有限公司 | 平行越权漏洞检测方法、装置、存储介质及电子设备 |
CN110598418A (zh) * | 2019-09-10 | 2019-12-20 | 深圳开源互联网安全技术有限公司 | 基于iast测试工具动态检测垂直越权的方法及系统 |
CN110674507A (zh) * | 2019-09-19 | 2020-01-10 | 深圳开源互联网安全技术有限公司 | 检测web应用越权的方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN111416811A (zh) | 2020-07-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111416811B (zh) | 越权漏洞检测方法、系统、设备及存储介质 | |
US10382470B2 (en) | Interacting with a remote server over a network to determine whether to allow data exchange with a resource at the remote server | |
US9635041B1 (en) | Distributed split browser content inspection and analysis | |
US20180121657A1 (en) | Security risk evaluation | |
US9747455B1 (en) | Data protection using active data | |
US11856022B2 (en) | Metadata-based detection and prevention of phishing attacks | |
US20220217169A1 (en) | Malware detection at endpoint devices | |
CN112187799B (zh) | 资源访问策略生成方法及装置、存储介质、电子设备 | |
CN111683047B (zh) | 越权漏洞检测方法、装置、计算机设备及介质 | |
US9059987B1 (en) | Methods and systems of using single sign-on for identification for a web server not integrated with an enterprise network | |
CN111737687B (zh) | 网页应用系统的访问控制方法、系统、电子设备和介质 | |
CN111711617A (zh) | 网络爬虫的检测方法、装置、电子设备及存储介质 | |
US20190222587A1 (en) | System and method for detection of attacks in a computer network using deception elements | |
CN111404937B (zh) | 一种服务器漏洞的检测方法和装置 | |
CN114024764A (zh) | 数据库异常访问的监控方法、监控系统、设备和存储介质 | |
JP5936798B2 (ja) | ログ分析装置、不正アクセス監査システム、ログ分析プログラム及びログ分析方法 | |
US11005877B2 (en) | Persistent cross-site scripting vulnerability detection | |
US20160261715A1 (en) | System and method for securing a web server | |
US10250603B1 (en) | Connection control for virtualized environments | |
US20160036853A1 (en) | Storage medium storing program for login alerts, and method and system thereof | |
US11989294B2 (en) | Detecting and preventing installation and execution of malicious browser extensions | |
CN114285664A (zh) | 异常用户识别方法、系统、设备及介质 | |
CN111885006B (zh) | 页面访问、授权访问方法和装置 | |
JP2024046098A (ja) | 情報管理装置および情報管理プログラム | |
CN117714204A (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 |