CN114357460A - 漏洞检测方法、装置、设备及存储介质 - Google Patents

漏洞检测方法、装置、设备及存储介质 Download PDF

Info

Publication number
CN114357460A
CN114357460A CN202111633813.0A CN202111633813A CN114357460A CN 114357460 A CN114357460 A CN 114357460A CN 202111633813 A CN202111633813 A CN 202111633813A CN 114357460 A CN114357460 A CN 114357460A
Authority
CN
China
Prior art keywords
request
user
test
application
data request
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.)
Pending
Application number
CN202111633813.0A
Other languages
English (en)
Inventor
刘爽
吴殿丞
张健
延安
董华
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Agricultural Bank of China
Original Assignee
Agricultural Bank of China
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Agricultural Bank of China filed Critical Agricultural Bank of China
Priority to CN202111633813.0A priority Critical patent/CN114357460A/zh
Publication of CN114357460A publication Critical patent/CN114357460A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • G06F21/577Assessing 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)
  • Debugging And Monitoring (AREA)

Abstract

本申请提供一种漏洞检测方法、装置、设备及存储介质,其中漏洞检测方法包括:通过获取第一用户访问待检测应用的数据请求以及数据请求对应的请求结果;基于数据请求生成测试请求,并向待检测应用发起该测试请求,其中测试请求与数据请求携带的信息不同;在接收到待检测应用针对测试请求的测试结果后,通过比对测试结果与请求结果,确定待检测应用是否存在漏洞。通过上述方法提高漏洞检测的检测效率和准确率。

Description

漏洞检测方法、装置、设备及存储介质
技术领域
本申请涉及信息安全技术领域,尤其涉及一种漏洞检测方法、装置、设备及存储介质。
背景技术
全球局域网web应用的逻辑漏洞是近年来出现的一种新型漏洞,与传统的结构化查询语言(Structured Query Language,SQL)注入、文件上传等漏洞不同,这种漏洞是开发者的思维逻辑出现错误,攻击者通过篡改业务流程和超文本传输协议(Hyper TextTransfer Protocol,HTTP)请求,发起恶意攻击从而避开各种安全防护手段。
目前,对于逻辑漏洞的测试主要通过人工渗透测试的方式进行,渗透测试是指测试人员完全模拟黑客可能使用的攻击技术和漏洞发现技术,利用辅助测试工具对目标网络、主机或应用的安全做深入的探测,发现系统最薄弱的环节。上述测试方式需要投入大量专业测试人员,测试效率低。
发明内容
本申请实施例提供一种漏洞检测方法、装置、设备及存储介质,提高漏洞检测的检测效率和准确率。
本申请实施例的第一方面提供一种漏洞检测方法,包括:
获取第一用户访问待检测应用的数据请求以及所述数据请求对应的请求结果;
基于所述数据请求生成测试请求,所述测试请求与所述数据请求中携带的信息不同;
获取所述待检测应用针对所述测试请求的测试结果;
根据所述测试结果以及所述请求结果,确定所述待检测应用是否存在漏洞。
在本申请第一方面的一个可选实施例中,所述测试请求与所述数据请求中携带的信息不同,包括:
所述测试请求与所述数据请求中携带的用户认证信息不同;或者,
所述数据请求中携带用户认证信息,所述测试请求中未携带用户认证信息。
在本申请第一方面的一个可选实施例中,所述基于所述数据请求生成测试请求,包括:
将剔除所述第一用户的身份认证信息的数据请求作为所述测试请求。
在本申请第一方面的一个可选实施例中,若所述测试请求与所述数据请求中携带的用户认证信息不同,所述基于所述数据请求生成测试请求,包括:
从数据库的用户权限记录中获取第一用户的权限信息;
从所述数据库的用户认证记录中获取与所述第一用户的权限信息相同的第二用户的身份认证信息;
将所述数据请求中的所述第一用户的身份认证信息替换为所述第二用户的身份认证信息,生成所述测试请求。
在本申请第一方面的一个可选实施例中,若所述测试请求与所述数据请求中携带的用户认证信息不同,所述基于所述数据请求生成测试请求,包括:
从数据库的用户权限记录中获取所述第一用户的权限信息;
从所述数据库的用户认证记录中获取与所述第一用户的权限信息不同的第三用户的身份认证信息;
将所述数据请求中的所述第一用户的身份认证信息替换为所述第三用户的身份认证信息,生成所述测试请求。
在本申请第一方面的一个可选实施例中,所述获取所述待检测应用针对所述测试请求的测试结果,包括:
向所述待检测应用发起所述测试请求;
接收所述待检测应用返回的所述测试结果。
在本申请第一方面的一个可选实施例中,所述根据所述测试结果以及所述请求结果,确定所述待检测应用是否存在漏洞,包括:
若所述测试结果与所述请求结果一致,确定所述待检测应用存在漏洞。
本申请实施例的第二方面提供一种漏洞检测装置,包括:
获取模块,用于获取第一用户访问待检测应用的数据请求以及所述数据请求对应的请求结果;
处理模块,用于基于所述数据请求生成测试请求,所述测试请求与所述数据请求中携带的信息不同;
所述获取模块,用于获取所述待检测应用针对所述测试请求的测试结果;
所述处理模块,用于根据所述测试结果以及所述请求结果,确定所述待检测应用是否存在漏洞。
在本申请第二方面的一个可选实施例中,所述测试请求与所述数据请求中携带的信息不同,包括:
所述测试请求与所述数据请求中携带的用户认证信息不同;或者,
所述数据请求中携带用户认证信息,所述测试请求中未携带用户认证信息。
在本申请第二方面的一个可选实施例中,处理模块,用于:
将剔除所述第一用户的身份认证信息的数据请求作为所述测试请求。
在本申请第二方面的一个可选实施例中,若所述测试请求与所述数据请求中携带的用户认证信息不同,获取模块,用于:
从数据库的用户权限记录中获取第一用户的权限信息;
从所述数据库的用户认证记录中获取与所述第一用户的权限信息相同的第二用户的身份认证信息;
处理模块,用于将所述数据请求中的所述第一用户的身份认证信息替换为所述第二用户的身份认证信息,生成所述测试请求。
在本申请第二方面的一个可选实施例中,若所述测试请求与所述数据请求中携带的用户认证信息不同,获取模块,用于:
从数据库的用户权限记录中获取所述第一用户的权限信息;
从所述数据库的用户认证记录中获取与所述第一用户的权限信息不同的第三用户的身份认证信息;
处理模块,用于将所述数据请求中的所述第一用户的身份认证信息替换为所述第三用户的身份认证信息,生成所述测试请求。
在本申请第二方面的一个可选实施例中,漏洞检测装置还包括:发送模块和接收模块;
发送模块,用于向所述待检测应用发起所述测试请求;
接收模块,用于接收所述待检测应用返回的所述测试结果。
在本申请第二方面的一个可选实施例中,处理模块,用于:
若所述测试结果与所述请求结果一致,确定所述待检测应用存在漏洞。
本申请实施例的第三方面提供一种电子设备,包括:
存储器;
处理器;以及
计算机程序;
其中,所述计算机程序存储在所述存储器中,并被配置为由所述处理器执行以实现如第一方面中任一项所述的方法。
本申请实施例的第四方面提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行以实现如第一方面中任一项所述的方法。
本申请实施例的第五方面提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现第一方面中任一项所述的方法。
本申请实施例提供一种漏洞检测方法、装置、设备及存储介质,其中漏洞检测方法包括:通过获取第一用户访问待检测应用的数据请求以及数据请求对应的请求结果;基于数据请求生成测试请求,并向待检测应用发起该测试请求,其中测试请求与数据请求携带的信息不同;在接收到待检测应用针对测试请求的测试结果后,通过比对测试结果与请求结果,确定待检测应用是否存在漏洞。通过上述方法提高漏洞检测的检测效率和准确率。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的漏洞检测方法的场景示意图;
图2为本申请实施例提供的漏洞检测方法的流程示意图一;
图3为本申请实施例提供的漏洞检测方法的流程示意图二;
图4为本申请实施例提供的漏洞检测方法的流程示意图三;
图5为本申请实施例提供的漏洞检测方法的流程示意图四;
图6为本申请实施例提供的漏洞检测装置的结构示意图一;
图7为本申请实施例提供的漏洞检测装置的结构示意图二;
图8为本申请实施例提供的电子设备的硬件结构图。
通过上述附图,已示出本申请明确的实施例,后文中将有更详细的描述。这些附图和文字描述并不是为了通过任何方式限制本申请构思的范围,而是通过参考特定实施例为本领域技术人员说明本申请的概念。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请实施例的说明书、权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述之外的顺序实施。
应当理解,本文中使用的术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
在本申请实施例的描述中,术语“对应”可表示两者之间具有直接对应或间接对应的关系,也可以表示两者之间具有关联关系,也可以是指示与被指示、配置与被配置等关系。
首先对本申请实施例涉及到的专业术语进行简要说明。
第一,未授权访问是指未进行账号注册,通过越权操作获得某个功能的访问权限。
第二,水平越权是指在进行账号注册后,通过越权操作可以操作与其同等权限账号的数据。
第三,垂直越权是指权限等级低的账号,通过越权操作可以操作权限等级高的账号的数据。
目前,对于逻辑漏洞的攻击方法并没有固定模式,很难找到一种常规的业务逻辑漏洞检测方案。越权漏洞是一种常见的web应用逻辑漏洞,形成原因是由于服务器端对客户提出的数据操作请求过分信任,而忽略了对用户权限的判断。越权漏洞造成的危害一般都是比较大的。例如,越权获取敏感信息、越权删除他人订单、越权添加管理账号等。
虽然这种漏洞相当严重,但是目前业界却没有一款专门针对这种类型漏洞的自动化扫描工具,因为程序难以直接模拟程序员的逻辑思维,除非把逻辑思维直接写入错误检测工具,但是这样是完全不通用的。对于逻辑漏洞的挖掘目前仍然采取人工渗透测试的方法,其效率较低。因此,需要建立一种可以自动化实现越权漏洞检测的装置。
针对上述问题,本申请实施例提出一种漏洞检测方法、装置、设备及存储介质,可实现对应用服务器的未授权访问漏洞、水平越权漏洞以及垂直越权漏洞的检测,解决传统人工越权漏洞检测方法耗费时间长、重复性工作多、效率低下的问题。其主要发明思路如下:
通过拦截客户端发起的数据请求以及应用服务器返回的请求结果,对拦截的数据请求中的信息进行修改,例如修改信息中的用户认证信息、用户权限信息等,再次向应用服务器发起测试请求,基于应用服务器返回的针对该测试请求的请求结果,以及上述数据请求的请求结果,确定应用服务器是否存在系统漏洞。上述方案适用于对应用服务器的所有功能进行测试,能够自动化进行越权漏洞的检测,释放人力资源,解决目前应用服务器测试效率低下的问题。
在介绍本申请提供的漏洞检测方法之前,首先对漏洞检测方法的应用场景进行简要介绍。
图1为本申请实施例提供的漏洞检测方法的场景示意图。如图1所示,该场景包括终端设备11、应用服务器12以及漏洞检测装置13,终端设备11与应用服务器12通信连接。
其中,终端设备11可以是台式计算机、智能手机、平板电脑、电子阅读器、膝上便携计算机以及可穿戴智能设备等,对此本实施例不做任何限制。应用服务器12可以是电商平台服务器、视频平台服务器、金融平台服务器等,对此本实施例不做任何限制。漏洞检测装置13可以是应用服务器12内部的检测装置,也可以是独立于应用服务器12的检测装置(如图1所示),对此本实施例不做任何限制。
作为一种示例,终端设备11向应用服务器12发送数据请求,示例性的,该数据请求可以是登录请求、数据查询请求、数据更新请求、数据下载请求等。应理解,不同用户具有不同的数据访问(数据查询)权限、数据修改权限、数据下载权限等。
应用服务器12响应于数据请求,向终端设备11返回数据响应,其中数据响应有接受请求和拒绝请求两类。示例性的,以数据请求为登录请求为例,若应用服务器确定用户可登录服务器,数据响应中可携带用户登录后的用户界面数据。以数据请求为数据查询请求为例,若应用服务器确定可以返回查询数据,数据响应中可携带查询数据。
值得注意的是,在实际应用中,终端设备11与应用服务器12在交互过程中,可能受到外部设备的攻击,例如外部设备使用攻击技术和漏洞发现技术,对应用服务器12的安全做深入探测,发现应用服务器12的逻辑漏洞,从而展开一系列数据越权操作。
为了降低应用服务器12被攻击的风险,可通过漏洞检测装置13对应用服务器12可能存在的逻辑漏洞进行测试。
作为一种示例,漏洞检测装置13可定期从应用服务器13截取一定数量的测试样本,每个测试样本包括数据请求以及应用服务器针对数据请求的请求结果。漏洞检测装置13通过修改测试样本中的数据请求,生成测试请求,在获取应用服务器12针对测试请求的测试结果后,通过比对请求结果和测试结果,确定应用服务器12是否存在逻辑漏洞。需要说明的是,上述测试过程与应用服务器的常规运营相隔离。
基于上述应用场景,下面通过具体实施例对本申请实施例提供的技术方案进行详细说明。需要说明的是,本申请实施例提供的技术方案可以包括以下内容中的部分或全部,下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。
图2为本申请实施例提供的漏洞检测方法的流程示意图一。如图2所示,本实施例提供的漏洞检测方法,包括:
步骤201、获取第一用户访问待检测应用的数据请求以及数据请求对应的请求结果。
其中,待检测应用即待检测的应用服务器。用户可以通过浏览器或应用程序访问应用服务器,还可以通过应用小程序访问应用服务器,对此本实施例不做任何限制。漏洞检测装置从待检测应用获取第一用户访问待检测应用的数据请求以及数据请求对应的请求结果。
在一个可选实施例中,数据请求包括登录请求、数据查询请求、数据更新请求、数据下载请求等。
示例性的,用户登录手机银行,发起登录请求,登录请求对应的请求结果包括登录成功或登录失败;用户登录企业服务器,发起查询产品库存数量的请求,该请求对应的请求结果包括查询失败或返回库存数量;用户登录云服务器,发起下载文件的请求,该请求对应的请求结果包括下载失败(无权限下载)或返回下载文件。
步骤202、基于数据请求生成测试请求。
本实施例中,测试请求与数据请求中携带的信息不同。
在一种可选实施例中,测试请求与数据请求中携带的用户认证信息不同,即测试请求和数据请求中的用户不同,具体包括如下两种情况:
一种情况,测试请求和数据请求中用户的权限信息相同。其中,权限信息包括如权限等级、权限范围等。权限信息相同包括权限等级相同,或者,权限范围相同。示例性的,同样以数据请求为数据查询请求为例,用户A和用户B均为某企业普通员工,用户A和用户B的权限等级相同,但用户A不可查询用户B的个人销售记录,用户B也不可查询用户A的个人销售记录。该示例中,相同权限等级的不同用户具有操作限制。
一种情况,测试请求和数据请求中用户的权限信息不同。示例性的,以数据请求为数据查询请求为例,用户A为某企业高管人员,用户C为某企业普通员工,用户A的权限等级高于用户C,用户A可以查询企业销售额等经营数据,用户C没有权限查询经营数据。该示例中,不同权限等级的用户具有不同的操作限制。
在一种可选实施例中,数据请求中携带用户身份认证信息,测试请求中未携带用户身份认证信息。具体的,若数据请求中携带第一用户的身份认证信息,基于数据请求生成测试请求,包括:将数据请求中的第一用户的身份认证信息剔除,将剔除第一用户的身份认证信息的数据请求作为测试请求。
该实施例中,测试请求用于测试待检测应用是否存在未授权漏洞。若将第一用户的身份认证信息剔除后再发起请求,两次请求返回的请求结果相同,表明该应用存在未授权漏洞。
步骤203、获取待检测应用针对测试请求的测试结果。
具体的,漏洞检测装置向待检测应用发起测试请求,待检测应用基于测试请求确定接受或拒绝请求,并向漏洞检测装置返回相应的测试结果。若待检测应用确定接受请求,测试结果包括请求的数据;或者,若待检测应用确定拒绝请求,测试结果用于指示拒绝请求。
步骤204、根据测试结果以及请求结果,确定待检测应用是否存在漏洞。
具体的,若测试结果与请求结果一致,确定待检测应用存在漏洞。
可选的,在一些实施例中,若确定待检测应用存在漏洞,标记该漏洞,并将该漏洞对应的测试数据(包括测试请求和数据请求,测试请求对应的测试结果、数据请求对应的请求结果)发送至测试人员终端,以便测试人员作进一步漏洞分析和漏洞修复。
本实施例示出的漏洞检测方法,通过获取第一用户访问待检测应用的数据请求以及数据请求对应的请求结果;基于数据请求生成测试请求,并向待检测应用发起该测试请求,其中测试请求与数据请求携带的信息不同;在接收到待检测应用针对测试请求的测试结果后,通过比对测试结果与请求结果,确定待检测应用是否存在漏洞。通过上述方法提高漏洞检测的检测效率和准确率。
下面结合两个具体实施例,针对上述实施例中的步骤202进行详细说明。
图3为本申请实施例提供的漏洞检测方法的流程示意图二。在图2所示实施例的基础上,如图3所示,若测试请求与数据请求中携带的用户认证信息不同,漏洞检测装置可通过如下步骤生成测试请求:
步骤301、从数据库的用户权限记录中获取第一用户的权限信息;
步骤302、从数据库的用户认证记录中获取与第一用户的权限信息相同的第二用户的身份认证信息;
步骤303、将数据请求中的第一用户的身份认证信息替换为第二用户的身份认证信息,生成测试请求。
示例性的,数据请求中包括用户A的身份认证信息,漏洞检测装置从数据库的用户权限记录中确定用户A的权限等级,并从数据库的用户认证记录中(即实名注册的用户记录中)随机选取与用户A的权限等级相同的用户B的身份认证信息,将数据请求中用户A的身份认证信息替换为用户B的身份认证信息,生成一条测试请求。
本示例中,测试请求用于测试待检测应用是否存在水平越权漏洞。若将用户A替换为与其权限相同的用户B后再次发起请求,两次请求返回的请求结果相同,表明该应用存在水平越权漏洞。
需要说明的是,在生成测试请求后,可参照上文实施例的步骤203和步骤204,验证待检测应用是否存在水平越权漏洞,此处不再赘述。
本实施例示出的漏洞检测方法,基于数据库记录,将数据请求中的用户认证信息替换为与其权限相同的其他用户的认证信息,从而生成用于测试应用是否存在水平越权漏洞的测试请求,通过比对测试结果与数据请求的请求结果,若结果一致,确定应用存在水平越权漏洞。上述方法可实现对任意数据请求的水平越权漏洞的测试请求的构造和验证,提高漏洞检测的检测效率和准确率。
图4为本申请实施例提供的漏洞检测方法的流程示意图三。在图2所示实施例的基础上,如图4所示,若测试请求与数据请求中携带的用户认证信息不同,漏洞检测装置可通过如下步骤生成测试请求:
步骤401、从数据库的用户权限记录中获取第一用户的权限信息。
步骤402、从数据库的用户认证记录中获取与第一用户的权限信息不同的第三用户的身份认证信息。
步骤403、将数据请求中的第一用户的身份认证信息替换为第三用户的身份认证信息,生成测试请求。
其中,第一用户和第三用户的权限信息不同,包括第一用户和第三用户的权限等级或权限范围不同。具体的,第三用户的权限等级低于第一用户,或者,第三用户的权限范围小于第一用户。
示例性的,数据请求中包括用户A的身份认证信息,漏洞检测装置从数据库的用户权限记录中确定用户A的权限等级,并从数据库的用户认证记录中随机选取与用户A的权限等级不同的用户C的身份认证信息,例如用户A属于管理员权限组,用户C属于普通用户权限组。将数据请求中用户A的身份认证信息替换为用户C的身份认证信息,生成一条测试请求。
本示例中,测试请求用于测试待检测应用是否存在垂直越权漏洞。若将用户A替换为权限等级较低(或者权限范围较小)的用户C后再次发起请求,两次请求返回的请求结果相同,表明该应用存在垂直越权漏洞。
需要说明的是,在生成测试请求后,可参照上文实施例的步骤203和步骤204,验证待检测应用是否存在垂直越权漏洞,此处不再赘述。
本实施例示出的漏洞检测方法,基于数据库记录,将数据请求中的用户认证信息替换为与其权限不同的其他用户的认证信息,从而生成用于测试应用是否存在垂直越权漏洞的测试请求,通过比对测试结果与数据请求的请求结果,若结果一致,确定应用存在垂直越权漏洞。上述方法可实现对任意数据请求的垂直越权漏洞的测试请求的构造和验证,提高漏洞检测的检测效率和准确率。
图5为本申请实施例提供的漏洞检测方法的流程示意图四。如图5所示,箭头方向表示数据流向,检测开始获取多个检测样本,每个检测样本包括待检测的web应用链接、用户身份认证信息以及链接的功能参数信息。应理解,不同应用链接对应待检测应用的不同测试功能,如数据查询功能、数据下载功能等等。基于多个检测样本提取URL,并将其加入待检测队列,依次等待漏洞检测装置的检测。
需要说明的是,每个应用链接,漏洞检测装置分别对未授权访问、水平越权、垂直越权这三种越权漏洞进行检测,如果发现漏洞则进行漏洞类型的记录,并继续对待检测队列中的下一个应用链接进行检测。当URL队列中的所有应用链接测试完毕时,输出最终的检测结果。检测结果中记录URL队列中存在上述任意一种漏洞类型的测试记录。测试人员可根据该检测结果进行二次验证、以及漏洞修复等。
本实施例提供的漏洞检测装置,可用于辅助测试人员进行逻辑漏洞的自动化测试,从而大大降低了测试人员的工作量,提高了漏洞检测的效率和准确率。
上文描述了本申请实施例提供的漏洞检测方法,下面将描述本申请实施例提供的漏洞检测装置。
本申请实施例可以根据上述方法实施例对漏洞检测装置进行功能模块的划分,例如,可以对应各个功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块既可以使用硬件的形式实现,也可以使用软件功能模块的形式实现。
需要说明的是,本申请实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。下面以使用对应各个功能划分各个功能模块为例进行说明。
图6为本申请实施例提供的漏洞检测装置的结构示意图一。如图6所示,本实施例提供的漏洞检测装置500,包括:获取模块501和处理模块502。
获取模块501,用于获取第一用户访问待检测应用的数据请求以及所述数据请求对应的请求结果;
处理模块502,用于基于所述数据请求生成测试请求,所述测试请求与所述数据请求中携带的信息不同;
所述获取模块501,用于获取所述待检测应用针对所述测试请求的测试结果;
所述处理模块502,用于根据所述测试结果以及所述请求结果,确定所述待检测应用是否存在漏洞。
在本实施例的一个可选实施例中,所述测试请求与所述数据请求中携带的信息不同,包括:
所述测试请求与所述数据请求中携带的用户认证信息不同;或者,
所述数据请求中携带用户认证信息,所述测试请求中未携带用户认证信息。
在本实施例的一个可选实施例中,处理模块502,用于:
将剔除所述第一用户的身份认证信息的数据请求作为所述测试请求。
在本实施例的一个可选实施例中,若所述测试请求与所述数据请求中携带的用户认证信息不同,获取模块501,用于:
从数据库的用户权限记录中获取第一用户的权限信息;
从所述数据库的用户认证记录中获取与所述第一用户的权限信息相同的第二用户的身份认证信息;
处理模块502,用于将所述数据请求中的所述第一用户的身份认证信息替换为所述第二用户的身份认证信息,生成所述测试请求。
在本实施例的一个可选实施例中,若所述测试请求与所述数据请求中携带的用户认证信息不同,获取模块501,用于:
从数据库的用户权限记录中获取所述第一用户的权限信息;
从所述数据库的用户认证记录中获取与所述第一用户的权限信息不同的第三用户的身份认证信息;
处理模块502,用于将所述数据请求中的所述第一用户的身份认证信息替换为所述第三用户的身份认证信息,生成所述测试请求。
图7为本申请实施例提供的漏洞检测装置的结构示意图二。在图6所示装置的基础上,如图7所示,本实施例提供的漏洞检测装置500,还包括:发送模块503和接收模块504;
发送模块503,用于向所述待检测应用发起所述测试请求;
接收模块504,用于接收所述待检测应用返回的所述测试结果。
在本实施例的一个可选实施例中,处理模块502,用于:
若所述测试结果与所述请求结果一致,确定所述待检测应用存在漏洞。
本实施例提供的漏洞检测装置,可以执行上述任一方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
图8为本申请实施例提供的电子设备的硬件结构图。如图8所示,本实施例提供的电子设备600,包括:
存储器601;
处理器602;以及
计算机程序;
其中,计算机程序存储在存储器601中,并被配置为由处理器602执行以实现上述任一方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
可选的,存储器601既可以是独立的,也可以跟处理器602集成在一起。当存储器601是独立于处理器602之外的器件时,电子设备600还包括:总线603,用于连接存储器601和处理器602。
本申请实施例还提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器602执行以实现如前述任一方法实施例的技术方案。
本申请实施例提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如前述任一方法实施例的技术方案。
本申请实施例还提供了一种芯片,包括:处理模块与通信接口,该处理模块能执行前述任一方法实施例的技术方案。
进一步地,该芯片还包括存储模块(如,存储器),存储模块用于存储指令,处理模块用于执行存储模块存储的指令,并且对存储模块中存储的指令的执行使得处理模块执行前述任一方法实施例的技术方案。
应理解,上述处理器可以是中央处理单元(英文:Central Processing Unit,简称:CPU),还可以是其他通用处理器、数字信号处理器(英文:Digital Signal Processor,简称:DSP)、专用集成电路(英文:Application Specific Integrated Circuit,简称:ASIC)等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合发明所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
存储器可能包含高速RAM存储器,也可能还包括非易失性存储NVM,例如至少一个磁盘存储器,还可以为U盘、移动硬盘、只读存储器、磁盘或光盘等。
总线可以是工业标准体系结构(Industry Standard Architecture,ISA)总线、外部设备互连(Peripheral Component,PCI)总线或扩展工业标准体系结构(ExtendedIndustry Standard Architecture,EISA)总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,本申请附图中的总线并不限定仅有一根总线或一种类型的总线。
上述存储介质可以是由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。存储介质可以是通用或专用计算机能够存取的任何可用介质。
一种示例性的存储介质耦合至处理器,从而使处理器能够从该存储介质读取信息,且可向该存储介质写入信息。当然,存储介质也可以是处理器的组成部分。处理器和存储介质可以位于专用集成电路(Application Specific Integrated Circuits,简称:ASIC)中。当然,处理器和存储介质也可以作为分立组件存在于电子设备中。
最后应说明的是:以上各实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述各实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例的技术方案的范围。

Claims (10)

1.一种漏洞检测方法,其特征在于,包括:
获取第一用户访问待检测应用的数据请求以及所述数据请求对应的请求结果;
基于所述数据请求生成测试请求,所述测试请求与所述数据请求中携带的信息不同;
获取所述待检测应用针对所述测试请求的测试结果;
根据所述测试结果以及所述请求结果,确定所述待检测应用是否存在漏洞。
2.根据权利要求1所述的方法,其特征在于,所述测试请求与所述数据请求中携带的信息不同,包括:
所述测试请求与所述数据请求中携带的用户认证信息不同;或者,
所述数据请求中携带用户认证信息,所述测试请求中未携带用户认证信息。
3.根据权利要求1所述的方法,其特征在于,所述基于所述数据请求生成测试请求,包括:
将剔除所述第一用户的身份认证信息的数据请求作为所述测试请求。
4.根据权利要求1所述的方法,其特征在于,若所述测试请求与所述数据请求中携带的用户认证信息不同,所述基于所述数据请求生成测试请求,包括:
从数据库的用户权限记录中获取第一用户的权限信息;
从所述数据库的用户认证记录中获取与所述第一用户的权限信息相同的第二用户的身份认证信息;
将所述数据请求中的所述第一用户的身份认证信息替换为所述第二用户的身份认证信息,生成所述测试请求。
5.根据权利要求1所述的方法,其特征在于,若所述测试请求与所述数据请求中携带的用户认证信息不同,所述基于所述数据请求生成测试请求,包括:
从数据库的用户权限记录中获取所述第一用户的权限信息;
从所述数据库的用户认证记录中获取与所述第一用户的权限信息不同的第三用户的身份认证信息;
将所述数据请求中的所述第一用户的身份认证信息替换为所述第三用户的身份认证信息,生成所述测试请求。
6.根据权利要求1-5任一项所述的方法,其特征在于,所述获取所述待检测应用针对所述测试请求的测试结果,包括:
向所述待检测应用发起所述测试请求;
接收所述待检测应用返回的所述测试结果。
7.根据权利要求1-5任一项所述的方法,其特征在于,所述根据所述测试结果以及所述请求结果,确定所述待检测应用是否存在漏洞,包括:
若所述测试结果与所述请求结果一致,确定所述待检测应用存在漏洞。
8.一种漏洞检测装置,其特征在于,包括:
获取模块,用于获取第一用户访问待检测应用的数据请求以及所述数据请求对应的请求结果;
处理模块,用于基于所述数据请求生成测试请求,所述测试请求与所述数据请求中携带的信息不同;
所述获取模块,用于获取所述待检测应用针对所述测试请求的测试结果;
所述处理模块,用于根据所述测试结果以及所述请求结果,确定所述待检测应用是否存在漏洞。
9.一种电子设备,其特征在于,包括:
存储器;
处理器;以及
计算机程序;
其中,所述计算机程序存储在所述存储器中,并被配置为由所述处理器执行以实现如权利要求1-7中任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,其上存储有计算机程序,所述计算机程序被处理器执行以实现如权利要求1-7中任一项所述的方法。
CN202111633813.0A 2021-12-28 2021-12-28 漏洞检测方法、装置、设备及存储介质 Pending CN114357460A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111633813.0A CN114357460A (zh) 2021-12-28 2021-12-28 漏洞检测方法、装置、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111633813.0A CN114357460A (zh) 2021-12-28 2021-12-28 漏洞检测方法、装置、设备及存储介质

Publications (1)

Publication Number Publication Date
CN114357460A true CN114357460A (zh) 2022-04-15

Family

ID=81103080

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111633813.0A Pending CN114357460A (zh) 2021-12-28 2021-12-28 漏洞检测方法、装置、设备及存储介质

Country Status (1)

Country Link
CN (1) CN114357460A (zh)

Similar Documents

Publication Publication Date Title
CN109376078B (zh) 移动应用的测试方法、终端设备及介质
US10740411B2 (en) Determining repeat website users via browser uniqueness tracking
US8856937B1 (en) Methods and systems for identifying fraudulent websites
EP2748781B1 (en) Multi-factor identity fingerprinting with user behavior
US8225401B2 (en) Methods and systems for detecting man-in-the-browser attacks
CN113489713B (zh) 网络攻击的检测方法、装置、设备及存储介质
US20160269417A1 (en) Dynamic data masking for mainframe application
CN108989355B (zh) 一种漏洞检测方法和装置
CN111416811A (zh) 越权漏洞检测方法、系统、设备及存储介质
CN104580230B (zh) 网站攻击验证方法及装置
US11019494B2 (en) System and method for determining dangerousness of devices for a banking service
US11275842B2 (en) Systems and methods for evaluating security of third-party applications
CN112187747A (zh) 一种远程容器登录方法、装置及电子设备
CN115361203A (zh) 一种基于分布式扫描引擎的脆弱性分析方法
US20210089658A1 (en) Systems and methods for evaluating data access signature of third-party applications
CN111241547A (zh) 一种越权漏洞的检测方法、装置及系统
CN115643044A (zh) 数据处理方法、装置、服务器及存储介质
CN114357460A (zh) 漏洞检测方法、装置、设备及存储介质
RU2758359C1 (ru) Система и способ выявления массовых мошеннических активностей при взаимодействии пользователей с банковскими сервисами
US20210084070A1 (en) Systems and methods for detecting changes in data access pattern of third-party applications
CN117896287B (zh) 一种主机网络安全隔离有效性检测方法、系统及装置
CN114598509B (zh) 一种确定脆弱性结果的方法及装置
CN112528330B (zh) 日志扫描方法、装置和设备
EP3441930A1 (en) System and method of identifying potentially dangerous devices during the interaction of a user with banking services
JP2019074893A (ja) 不正ログイン検出方法

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