CN113032787B - 一种系统漏洞检测方法及装置 - Google Patents

一种系统漏洞检测方法及装置 Download PDF

Info

Publication number
CN113032787B
CN113032787B CN202110270749.8A CN202110270749A CN113032787B CN 113032787 B CN113032787 B CN 113032787B CN 202110270749 A CN202110270749 A CN 202110270749A CN 113032787 B CN113032787 B CN 113032787B
Authority
CN
China
Prior art keywords
data
data packet
user data
user
packets
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
Application number
CN202110270749.8A
Other languages
English (en)
Other versions
CN113032787A (zh
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.)
Beijing Keynote Network Inc
Original Assignee
Beijing Keynote Network Inc
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 Beijing Keynote Network Inc filed Critical Beijing Keynote Network Inc
Priority to CN202110270749.8A priority Critical patent/CN113032787B/zh
Publication of CN113032787A publication Critical patent/CN113032787A/zh
Application granted granted Critical
Publication of CN113032787B publication Critical patent/CN113032787B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了一种权限漏洞的检测方法,包括:在获取了待检测的数据包后,从待检测的数据包中提取系统有效的认证方式,进而通过该有效的认证方式,可以将待检测额数据包进行聚合,得到至少一个用户数据集;由此,实现了自动化对数据包进行分类的目的。并且将每个用户数据集中的数据包按照上下流关系进行串联;对每个用户数据集的业务链条中缺失的数据包进行补全;通过每个用户数据集中各个数据包之间的关系,以及不同用户数据集之间的关系,生成不同的权限测试用例,并通过所述权利测试用例进行权限漏洞检测。由此可知,本实施例中,对全业务流程进行了串联,基于此,实现了对系统全业务节点的自动化检测,不仅提高了检测效率,而且通用性强。

Description

一种系统漏洞检测方法及装置
技术领域
本发明涉及信息安全领域,尤其涉及一种系统漏洞检测方法及装置。
背景技术
在计算机应用领域中,用户权限,指对资源的访问能力。例如,在一个应用软件中,可以基于不同角色设置相应的权限控制机制,一种角色的用户可以访问而且只能访问该角色被授权的资源。为了保障用户的信息安全,在用户访问业务系统时,需要严格按照用户权限进行访问,但是也会存在一些不法份子利用业务系统中可能存在的越权漏洞进行越权访问。为了尽可能的保障用户信息安全,避免越权访问的发生,需要尽可能的减少业务系统中的越权漏洞,因此需要不断的对业务系统的权限漏洞进行检测。
对越权漏洞的检测通常与业务场景具有极强的关联性,通常是对单一的业务节点的数据包进行标记和权限的检测,难以覆盖完整的业务流程,这就不仅使得权限漏洞的检测效率低,而且通用性差。
发明内容
有鉴于此,本发明实施例公开了一种系统漏洞检测方法及装置,通过对全业务节点的关联性,实现了对完整业务流程的检测,这样不仅提高了检测效率、而且通用性强。
本发明实施例公开了一种权限漏洞的检测方法,包括:
获取待检测的数据包,从所述待检测的数据包中提取系统有效的认证方式;
通过所述有效的认证方式,对所述待检测的数据包进行聚合,得到至少一个用户数据集;其中,所述同一个数据集中的数据包的有效认证方式的内容相同;
将每个用户数据集中的数据包按照上下流关系进行串联;
对每个用户数据集的业务链条中缺失的数据包进行补全;
通过每个用户数据集中各个数据包之间的关系,以及不同用户数据集之间的关系,生成不同的权限测试用例。
可选的,还包括:
对每个用户数据集中的数据包采用相对应的认证方式进行标记。
可选的,所述从所述待检测的数据包中提取系统有效的认证方式,包括:
提取所述数据包中所有的token信息,并生成包含所有token信息的认证数据包;
删除所述认证数据包中的目标token,并将删除了目标token的认证数据包发送给系统;所述目标token为所述认证数据包中任意一个token;
若接收到系统反馈的数据包中包含预设的信息,则将所述目标token作为有效的认证方式。
可选的,所述将每个用户数据集中的数据包按照上下流关系进行串联,包括:
针对任意一个用户数据集,获取该用户数据集中数据包的引用信息;
通过每个数据包的引用信息,确定数据包之间的上、下流关系;
并按照数据包之间的上、下流关系,将该用户数据集中的数据包进行串联。
可选的,还包括:
确定每个用户数据集中包含的数据包的数量,并按照由多到少的原则对用户数据集进行排列;
按照用户数据集排列的顺序,依次对用户数据集按照上、下流关系进行串联。
可选的,所述对每个用户数据集的业务链条中缺失的数据包进行补全,包括:
针对任意一个用户数据集,将用户数据集中的每个数据包分别放入预设的沙箱中,模拟事件触发;
获取通过模拟事件触发得到的所有数据包;
通过模拟事件触发得到所有数据包对用户数据集中的数据包进行补全;
若用户数据集中添加了补全的数据包,确定添加的数据包与所述用户数据集中原有的数据之间的上、下流关系。
可选的,还包括:
对每个用户数据集中的各个数据包进行数据清洗,去除每个数据包中无效的数据;
对所有用户数据集中属于同类型的数据包进行哈希计算,得到哈希标记;
通过哈希标记对每个数据包进行标记,其中,同类型的数据包具有相同的哈希标记。
可选的,对每个用户数据集中的各个数据包进行数据清洗之前,还包括:
针对不同用户数据集中任何一个类型的数据包,获取该类型的数据包预设的权重参数;
基于该类型的数据包预设的权重参数,计算该类型的数据包的权重;
并按照每种类型的数据包的权重设置每种类型的数据包的优先级。
可选的,通过每个用户数据集中各个数据包之间的关系,以及不同用户数据集之间的关系,生成不同的权限测试用例,包括:
从不同的用户数据集中获取具有相同哈希标记的两个数据包,并对具有相同哈希标记的两个数据包进行参数解析;
若具有相同哈希标记的两个数据包的参数解析结果,符合预设的业务逻辑条件,则生成水平越权测试数据包,通过水平越权测试数据包对第一数据节点进行水平越权漏洞检测;其中,第一数据节点为具有相同哈希标记的两个数据包对应的数据节点;水平越权测试数据包为对具有相同标记的两个数据包对应的用户的有效认证方式的内容进行交叉替换后得到的;所述业务逻辑条件为:不同的数据包具有相同的参数、相同的参数内容格式、且参数的内容不同。
可选的,所述通过每个用户数据集中各个数据包之间的关系,以及不同用户数据集之间的关系,生成不同的权限测试用例,包括:
根据每个用户数据集中数据包的上、下流关系,获取复合数据节点;所述复合数据节点对应的数据包包含至少一个下流数据包;
从不同的用户数据集中,获取具有相同哈希标记的复合数据节点;
将具有相同哈希标记的复合数据节点包含的下流数据包进行匹配,将无法成功匹配的数据包作为差异数据包,并将所述差异数据包添加到待检测的队列中;
删除所述待检测的队列中无效的数据包;
针对待检测队列中的任意一个数据包,表示为第一目标数据包,生成该第一目标数据包对应的垂直越权检测数据包,通过垂直检测数据包对所述第一目标数据包对应的数据节点进行垂直越权漏洞检测;所述越权检测数据包中包含任意一个不存在第一目标数据包的用户数据集的有效认证方式的内容。
可选的,所述通过每个用户数据集中各个数据包之间的关系,以及不同用户数据集之间的关系,生成不同的权限测试用例,包括:
从各个用户数据集中获取存在敏感数据的数据包,并将存在敏感数据的数据包存入待检测队列中;
从所述待检测队列中删除相似度大于预设的第三阈值的数据包;
针对待检测队列中的任何一个数据包,表示为第二目标数据包,删除该第二目标数据包的有效认证方式的内容,得到未授权测试数据包,通过所述未授权测试数据包对所述第二目标数据包对应的数据节点进行未授权漏洞测试;
本发明实施例公开了一种权限漏洞的检测装置,包括:
获取单元,用于获取待检测的数据包,从所述待检测的数据包中提取系统有效的认证方式;
聚合单元,用于通过所述有效的认证方式,对所述待检测的数据包进行聚合,得到至少一个用户数据集;其中,所述同一个数据集中的数据包的有效认证方式的内容相同;
串联单元,用于将每个用户数据集中的数据包按照上下流关系进行串联;
数据补全单元,用于对每个用户数据集的业务链条中缺失的数据包进行补全;
测试用例生成单元,用于通过每个用户数据集中各个数据包之间的关系,以及不同用户数据集之间的关系,生成不同的权限测试用例。
本发明实施例公开了一种权限漏洞的检测方法,包括:在获取了待检测的数据包后,从待检测的数据包中提取系统有效的认证方式,进而通过该有效的认证方式,可以将待检测额数据包进行聚合,得到至少一个用户数据集;由此,实现了自动化对数据包进行分类的目的。并且将每个用户数据集中的数据包按照上下流关系进行串联;对每个用户数据集的业务链条中缺失的数据包进行补全;通过每个用户数据集中各个数据包之间的关系,以及不同用户数据集之间的关系,生成不同的权限测试用例,以通过所述权利测试用例进行权限漏洞检测。由此可知,本实施例中,对全业务流程进行了串联,基于此,实现了对系统全业务节点的自动化检测,不仅提高了检测效率,而且通用性强。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1示出了本发明实施例提供的一种权限漏洞检测方法的流程示意图;
图2示出了本发明实施例提供的一种权限漏洞检测方法的又一流程示意图;
图3示出了本发明实施例提供的一种权限漏洞的检测方法的又一流程示意;
图4示出了本发明实施例提供的一种权限漏洞的检测方法的又一流程示意图;
图5示出了本发明实施例提供的一种权限漏洞检测装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
参考图1,示出了本发明实施例提供的一种权限漏洞检测方法的流程示意图,在本实施例中,该方法包括:
S101:获取待检测的数据包,从所述待检测的数据包中提取系统有效的认证方式;
本实施例中,待检测的数据包可以为系统在运行过程中产生的数据包。
一般情况下,针对于一个系统来说,只会包含一个有效的认证方式。但是,不同的数据包中,会提取到很多不同的认证方式,例如于header中的token、header中的自定义字段token、URL中的标准hash格式token,在没有开发工程师帮助的情况下,很难找到有效的认证方式。
为了解决上述问题,优选的,可以采用如下的两种方式获取有效的认证方式:
方式一:
提取所述数据包中所有的token信息,并生成包含所有token信息的认证数据包;
删除所述认证数据包中的目标token,并将删除了目标token的认证数据包发送给系统;所述目标token为所述认证数据包中任意一个token;
若接收到系统反馈的数据包中包含预设的信息,则将所述目标token作为有效的认证方式。
其中,预设的信息是与权限有关的信息,例如为不具有访问权限的信息。
本实施例中,若在删除了目标token后,访问系统,系统认为不具有访问权限,那么删除的该token,则为用于访问系统的有效认证方式。
方式二:
提取所述数据包中所有的token信息,并生成包含所有token信息的认证数据包;
删除所述认证数据包中的目标token,并将删除了目标token的认证数据包发送给系统;所述目标token为所述认证数据包中任意一个token;
若系统反馈的数据包与待检测的数据包的相似度小于预设的第五阈值,则表示该目标token为有效的认证方式。
S102:通过所述有效的认证方式,对所述待检测的数据包进行聚合,得到至少一个用户数据集;所述同一个数据集中的数据包的有效认证方式的内容相同;
本实施例中,每个待检测的数据包中会包含有效的认证方式的信息,即会包含有效token的内容,具有相同token的内容的数据包为同一个用户访问系统产生的,那么可以将具有相同token的内容的数据包进行聚合,得到用户数据集。
S103:将每个用户数据集中的数据包按照上下流关系进行串联;
本实施例中,数据包中包含有数据的引用信息,例如该数据包的referer信息,引用信息中包含有数据的引用关系,可以根据该引用关系确定上下流关系,具体的,S103包括:
针对任意一个用户数据集,获取该用户数据集中数据包的引用信息;
通过每个数据包的引用信息,确定数据包之间的上、下流关系;
按照数据包之间的上、下流关系,将该用户数据集中的数据包进行串联。
举例说明:用户通过主页面A跳转到下级页面B时,页面B和页面A具有引用关系,页面B是页面A的下流分支,那么页面B产生的数据包和页面A产生的数据包具有上、下游关系。
进一步的,为了提升数据处理的效率,可以预先对用户数据集进行优先级排序,并按照优先级顺序依次对用户数据集按照上、下流关系进行串联;
其中,优先级设置的原则可以为用户数据集中包含的数据包的数量,例如用户数据集中包含的数据包的数量多的优先级更高,具体的,还包括:
确定每个用户数据集中包含的数据包的数量,并按照由多到少的原则对用户的数据集进行排序;
按照用户数据集的排序结果,依次对用户数据集按照上、下流关系进行串联。
通过上述介绍可知,S103包括:
确定每个用户数据集中包含的数据包的数量,并按照由多到少的原则对用户的数据集进行排序;
按照用户数据集的排序结果,依次获取该用户数据集中数据包的引用信息;
通过每个数据包的引用信息,确定数据包之间的上、下流关系;
并按照数据包之间的上、下流关系,将该用户数据集中的数据包进行串联。
S104:对每个用户数据集的业务链条中缺失的数据包进行补全;
本实施例中,获取到的待检测的数据包,是用户访问系统时得到的,但是用户可能无法点击所有的功能,所有得到的用户数据集中可能无法包含完整的业务逻辑,为了保证对系统完整的业务链条进行漏洞检测,需要对用户数据集的业务链条中缺失的部分进行补全。
其中,补全的方法可以包括多种,本实施例中,不进行限定,优选的,可以采用动态沙箱模拟的方式,模拟事件触发,进而得到业务逻辑执行时的相关数据包,优选的,S104包括:
针对任意一个用户数据集,将用户数据集中的每个数据包分别放入预设的沙箱中,模拟事件触发;
获取通过模拟事件触发得到的所有数据包;
通过模拟事件触发得到的所有数据包对用户数据集中的数据包进行补全;
若用户数据集中添加了补全的数据包,确定添加的数据包与所述用户数据集中原有的数据之间的上、下流关系。
本实施例中,沙箱可以理解为一个虚拟系统程序,该虚拟的系统程序可以自动的模拟事件触发,例如,通过该虚拟系统程序模拟人的行为,触发一些操作。
其中,通过沙箱模拟事件触发可以获得每个用户在每个节点的全流量数据,这样,可以对用户数据集的业务链条中缺失的部分进行补全。
其中,为了进一步提升数据处理的效率,在执行S104时,可以按照用户数据集的优先级,依次对用户数据集进行沙箱模拟,具体的,还包括:
针对任何一个用户数据集,获取该用户数据集中每个数据包的权重特征;
根据每个数据包的权重特征计算用户数据集的权重值;
按照权重值的大小设置用户数据集的优先级。
其中,权重值越大的用户数据集的优先级越高。
S105:通过每个用户数据集中各个数据包之间的关系,以及不同用户数据集之间的关系,生成不同的权限测试用例。
本实施例中,当前存在多种越权漏洞,例如水平越权漏洞、垂直越权漏洞和未授权越权漏洞。
其中,水平越权是指,攻击者尝试访问与他拥有相同权限的用户资源。例如,用户A和用户B属于同一角色,拥有相同的权限等级,他们能获取自己的私有数据(数据A和数据B),但如果系统只验证了能访问数据的角色,而没有对数据做细分或者校验,导致用户A能访问到用户B的数据(数据B),那么用户A访问数据B的这种行为就叫做水平越权访问。
垂直越权是指,由于后台应用没有做权限控制,或仅仅在菜单、按钮上做了权限控制,导致恶意用户只要猜测其他管理页面的URL或者敏感的参数信息,就可以访问或控制其他角色拥有的数据或页面,达到权限提升的目的。未授权漏洞:未授权访问漏洞可以理解为需要安全配置或权限认证的地址、授权页面存在缺陷导致其他用户可以直接访问从而引发重要权限可被操作、数据库或网站目录等敏感信息泄露。
未授权访问漏洞可以理解为需要安全配置或权限认证的地址、授权页面存在缺陷导致其他用户可以直接访问从而引发重要权限可被操作、数据库或网站目录等敏感信息泄露。
通过上述的介绍可知,当不同用户数据集存在相同类型的数据节点的情况下,可能会产生水平越权漏洞,当不同用户数据集存在具有差异的数据节点时,可能会出现垂直越权漏洞,存在敏感数据的数据节点可能会存在未授权操作的漏洞。
其中,每个用户数据集中各个数据集之间的关系可以确定出数据节点,进而通过不同用户数据集中数据节点之间的关系,以及不同用户数据集的关系,生成测试用例,并根据测试用例进行权限漏洞检测。
其中,对于每种权限漏洞的检测会在下文中进行详细的介绍,本实施例中不再赘述。
本实施例中,在获取了待检测的数据包后,从待检测的数据包中提取系统有效的认证方式,进而通过该有效的认证方式,可以将待检测额数据包进行聚合,得到至少一个用户数据集;由此,实现了自动化对数据包进行分类的目的。并且将每个用户数据集中的数据包按照上下流关系进行串联;对每个用户数据集的业务链条中缺失的数据包进行补全;通过每个用户数据集中各个数据包之间的关系,以及不同用户数据集之间的关系,生成不同的权限测试用例,并通过所述权利测试用例进行权限漏洞检测。由此可知,本实施例中,对全业务流程进行了串联,基于此,实现了对系统全业务节点的自动化检测,不仅提高了检测效率,而且通用性强。
进一步的,在测试用例生成时,会对不同用户数据集中的数据包进行比对,从而找到相同或者不同类型的数据包,为了便于识别用户数据集中的数据包的类型,预先对数据包进行了标记,具体的,还包括:
对每个用户数据集中的各个数据包进行数据清洗,去除每个数据包中无效的数据;
对所有用户数据集中属于同类型的数据包进行哈希计算,得到哈希标记;
通过哈希标记对每个数据包进行标记,其中,同类型的数据包具有相同的哈希标记。
并且,为了进一步的提升数据处理的效率,可以预先对优先级高的数据包进行处理,数据包优先级的设置包括:
针对不同用户数据集中任何一个类型的数据包,获取该类型的数据包预设的权重参数;
基于该类型的数据包预设的权重参数,计算该类型的数据包的权重;
并按照每种类型的数据包的权重设置每种类型的数据包的优先级。
其中,权重参数例如可以包括数据包的采集时间、命中次数等。
参考图2,示出了本发明实施例提供的一种权限漏洞检测方法的又一流程示意图,在本实施例中,该方法包括:
S201:从不同的用户数据集中获取具有相同哈希标记的两个数据包,并对具有相同哈希标记的两个数据包进行参数解析;
本实施例中,通过上述介绍可知,相同类型的数据包标记有相同的哈希标记。
S202:若具有相同哈希标记的两个数据包的参数解析结果,符合预设的业务逻辑条件,则生成水平越权测试数据包,通过水平越权测试数据包对第一数据节点进行水平越权漏洞检测;其中,第一数据节点为具有相同哈希标记的两个数据包对应的数据节点;水平越权测试数据包为对具有相同标记的两个数据包对应的用户的有效认证方式的内容进行交叉替换后得到的;所述业务逻辑条件为:不同的数据包具有相同的参数、相同的参数内容格式、且参数的内容不同。
本实施例中,若具有相同哈希标记的两个数据包的参数结果中,参数相同、参数的内容格式相同,但是参数的内容不同,那么这两个数据包对应的数据节点属于相同的业务逻辑,具有相同业务逻辑的数据节点可能会发生水平越权的漏洞。
其中,进行水平越权漏洞检测时,将水平越权测试数据包发送给系统,得到反馈数据包,计算反馈数据包与替换有效认证方式的内容之前的数据包的相似度,若相似度大于预设的第一阈值,则表示存在第一越权漏洞。
举例说明:第一用户数据集的数据包A和第二用户数据集的数据包B具有相同的哈希标记,且数据包A和数据包B具有相同的参数、相同的参数内容格式、且参数的内容不同;那么交叉替换第一用户和第二用户的有效token的内容,以第一用户为例来说,将包含有第二用户的有效token内容的水平越权测试数据包发送给系统,由此会得到系统的反馈数据包,若系统的反馈数据包与数据包A的相似度大于预设的第一阈值,则认为存在水平越权漏洞。
其中,第一阈值可以根据需要进行设置,也可以根据需要进行调整,例如第一阈值可以为90%。
本实施例中,通过上述方式,实现了对水平越权漏洞的自动检测,并且能够自动化的对系统的每个数据节点进行检测。
参考图3,示出了本发明实施例提供的一种权限漏洞的检测方法的又一流程示意图,在本实施例中,该方法包括:
S301:根据每个用户数据集中数据包的上、下流关系,获取复合数据节点;所述复合数据节点对应的数据包包含至少一个下流数据包;
S302:从不同的用户数据集中,获取具有相同哈希标记的复合数据节点;
S303:将具有相同哈希标记的复合数据节点包含的下流数据包进行匹配,将无法成功匹配的数据包作为差异数据包,并将所述差异数据包添加到待检测的队列中;
S304:删除所述待检测的队列中无效的数据包;
其中,无效的数据包可以认为是公共数据节点产生的数据包,公共数据节点是没有权限限制的。
其中,公共数据节点的检测可以通过如下的方式进行:
删除待检测队列中每个数据包的有效认证方式的内容,并对删除有效认证方式内容的数据包进行重放测试,得到验证数据包,若验证数据包与删除有效认证方式的内容之前的数据包一致,则认为该数据包无效。
S305:针对待检测队列中的任意一个数据包,表示为第一目标数据包,生成该第一目标数据包对应的垂直越权检测数据包,通过垂直检测数据包对所述第一目标数据包对应的数据节点进行垂直越权漏洞检测;所述越权检测数据包中包含任意一个不存在第一目标数据包的用户数据集的有效认证方式的内容。
其中,进行垂直漏洞检测时,将垂直越权检测数据包发送给系统,得到系统发送的反馈数据包,计算反馈数据包与目标数据包的相似度,若相似度大于预设的第二阈值,则认为目标数据包对应的数据节点存在越权漏洞。
举例说明:假设第一用户数据集和第二用户数据集均包含复合数据节点C,第一用户数据集中,复合数据节点C包含的下流数据节点为1、2、3、4,在第二用户数据集中,复合数据节点D包含的下流数据节点为1,2,3,将将第一用户数据集和第二用户数据集的复合数据节点C包含的下流数据节点进行匹配,那么节点4为差异数据节点,可以基于不包含节点4的用户数据集的token的内容生成垂直越权测试数据包,并通过该垂直越权测试数据包对节点4进行垂直越权漏洞检测,进行漏洞检测时,将垂直越权漏洞测试数据包发送给系统,得到系统的反馈数据包,计算该反馈数据包与节点4对应的数据包的相似度,若相似度大于预设的第二阈值,则表示存在垂直越权漏洞。
本实施例中,,通过上述的方法,实现了对未垂直越权漏洞的自动化检测,并且能够自动化的对系统的每个数据节点进行检测。
参考图4,示出了本发明实施例提供的一种权限漏洞的检测方法的又一流程示意图,在本实施例中,该方法包括:
S401:从各个用户数据集中获取存在敏感数据的数据包,并将存在敏感数据的数据包存入待检测队列中;
S402:从所述待检测队列中删除相似度大于预设的第三阈值的数据包;
本实施例中,计算待检测队列中,每两个数据包之间相似度,若两个数据包的相似度大于预设的第三阈值,则从待检测队列中删除这两个数据包。
S403:针对待检测队列中的任何一个数据包,表示为第二目标数据包,删除该第二目标数据包的有效认证方式的内容,得到未授权测试数据包,通过所述未授权测试数据包对所述第二目标数据包对应的数据节点进行未授权漏洞测试;
在对第二目标数据包对应的数据节点进行未授权漏洞测试时,对删除了有效认证方式内容的数据包进行重放测试,得到验证数据包,若验证数据包与第二目标数据包的相似度大于预设的第三阈值,则表示存在未授权漏洞。
本实施例中,通过上述的方法,实现了对未授权漏洞的自动化检测,并且能够自动化的对系统的每个数据节点进行漏洞检测。
需要说明的是,上述提到的数据节点,在系统中,每个业务功能对应一个数据节点。
参考图5,示出了本发明实施例提供的一种权限漏洞检测装置的结构示意图,在本实施例中,该装置包括:
提取单元501,用于获取待检测的数据包,从所述待检测的数据包中提取系统有效的认证方式;
聚合单元502,用于通过所述有效的认证方式,对所述待检测的数据包进行聚合,得到至少一个用户数据集;其中,所述同一个数据集中的数据包的有效认证方式的内容相同;
串联单元503,用于将每个用户数据集中的数据包按照上下流关系进行串联;
数据补全单元504,用于对每个用户数据集的业务链条中缺失的数据包进行补全;
测试用例生成单元505,用于通过每个用户数据集中各个数据包之间的关系,以及不同用户数据集之间的关系,生成不同的权限测试用例。
可选的,还包括:
对每个用户数据集中的数据包采用相对应的认证方式进行标记。
可选的,所述提取单元,包括:
提取子单元,用于提取所述数据包中所有的token信息,并生成包含所有token信息的认证数据包;
删除子单元,用于删除所述认证数据包中的目标token,并将删除了目标token的认证数据包发送给系统;所述目标token为所述认证数据包中任意一个token;
有效认证方式确定子单元,用于若接收到系统反馈的数据包中包含预设的信息,则将所述目标token作为有效的认证方式。
可选的,所述串联单元,包括:
第一获取子单元,用于针对任意一个用户数据集,获取该用户数据集中数据包的引用信息;
串联关系确定子单元,用于通过每个数据包的引用信息,确定数据包之间的上、下流关系;
第一串联子单元,用于并按照数据包之间的上、下流关系,将该用户数据集中的数据包进行串联。
可选的,还包括:
排类子单元,用于确定每个用户数据集中包含的数据包的数量,并按照由多到少的原则对用户数据集进行排列;
第二串联子单元,用于按照用户数据集排列的顺序,依次对用户数据集按照上、下流关系进行串联。
可选的,所述数据补全单元,包括:
沙箱模拟子单元,用于针对任意一个用户数据集,将用户数据集中的每个数据包分别放入预设的沙箱中,模拟事件触发;
第二获取子单元,用于获取通过模拟事件触发得到的所有数据包;
补全子单元,用于通过模拟事件触发得到所有数据包对用户数据集中的数据包进行补全;
第三串联子单元,用于若用户数据集中添加了补全的数据包,确定添加的数据包与所述用户数据集中原有的数据之间的上、下流关系。
可选的,还包括:
清洗子单元,用于对每个用户数据集中的各个数据包进行数据清洗,去除每个数据包中无效的数据;
哈希计算子单元,用于对所有用户数据集中属于同类型的数据包进行哈希计算,得到哈希标记;
标记子单元,用于通过哈希标记对每个数据包进行标记,其中,同类型的数据包具有相同的哈希标记。
可选的,还包括:
第三获取子单元,用于针对不同用户数据集中任何一个类型的数据包,获取该类型的数据包预设的权重参数;
第一权重计算子单元,用于基于该类型的数据包预设的权重参数,计算该类型的数据包的权重;
优先级设置子单元,用于并按照每种类型的数据包的权重设置每种类型的数据包的优先级。
可选的,测试用例生成单元,包括:
水平越权测试生成子单元,用于
从不同的用户数据集中获取具有相同哈希标记的两个数据包,并对具有相同哈希标记的两个数据包进行参数解析;
若具有相同哈希标记的两个数据包的参数解析结果,符合预设的业务逻辑条件,则生成水平越权测试数据包,通过水平越权测试数据包对第一数据节点进行水平越权漏洞检测;其中,第一数据节点为具有相同哈希标记的两个数据包对应的数据节点;水平越权测试数据包为对具有相同标记的两个数据包对应的用户的有效认证方式的内容进行交叉替换后得到的;所述业务逻辑条件为:不同的数据包具有相同的参数、相同的参数内容格式、且参数的内容不同。
可选的,所述测试用例生成单元,包括:
垂直越权测试子单元,用于
根据每个用户数据集中数据包的上、下流关系,获取复合数据节点;所述复合数据节点对应的数据包包含至少一个下流数据包;
从不同的用户数据集中,获取具有相同哈希标记的复合数据节点;
将具有相同哈希标记的复合数据节点包含的下流数据包进行匹配,将无法成功匹配的数据包作为差异数据包,并将所述差异数据包添加到待检测的队列中;
删除所述待检测的队列中无效的数据包;
针对待检测队列中的任意一个数据包,表示为第一目标数据包,生成该第一目标数据包对应的垂直越权检测数据包,通过垂直检测数据包对所述第一目标数据包对应的数据节点进行垂直越权漏洞检测;所述越权检测数据包中包含任意一个不存在第一目标数据包的用户数据集的有效认证方式的内容。
可选的,所述测试用例生成单元,包括:
未授权测试用例生成子单元,用于
从各个用户数据集中获取存在敏感数据的数据包,并将存在敏感数据的数据包存入待检测队列中;
从所述待检测队列中删除相似度大于预设的第三阈值的数据包;
针对待检测队列中的任何一个数据包,表示为第二目标数据包,删除该第二目标数据包的有效认证方式的内容,得到未授权测试数据包,通过所述未授权测试数据包对所述第二目标数据包对应的数据节点进行未授权漏洞测试。
通过本实施例的装置,获取待检测的数据包,并从待检测的数据包中提取系统有效的认证方式,进而通过该有效的认证方式,可以将待检测额数据包进行聚合,得到至少一个用户数据集;由此,实现了自动化对数据包进行分类的目的。并且将每个用户数据集中的数据包按照上下流关系进行串联;对每个用户数据集的业务链条中缺失的数据包进行补全;通过每个用户数据集中各个数据包之间的关系,以及不同用户数据集之间的关系,生成不同的权限测试用例,并通过所述权利测试用例进行权限漏洞检测。由此可知,本实施例中,对全业务流程进行了串联,基于此,实现了对系统全业务节点的自动化检测,不仅提高了检测效率,而且通用性强。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

Claims (11)

1.一种权限漏洞的检测方法,其特征在于,包括:
获取待检测的数据包,从所述待检测的数据包中提取系统有效的认证方式;
通过所述有效的认证方式,对所述待检测的数据包进行聚合,得到至少一个用户数据集;其中,同一个数据集中的数据包的有效认证方式的内容相同;
将每个用户数据集中的数据包按照上下流关系进行串联;
对每个用户数据集的业务链条中缺失的数据包进行补全;
通过每个用户数据集中各个数据包之间的关系,以及不同用户数据集之间的关系,生成不同的权限测试用例;
所述通过每个用户数据集中各个数据包之间的关系,以及不同用户数据集之间的关系,生成不同的权限测试用例,包括:
根据每个用户数据集中数据包的上、下流关系,获取复合数据节点;所述复合数据节点对应的数据包包含至少一个下流数据包;
从不同的用户数据集中,获取具有相同哈希标记的复合数据节点;
将具有相同哈希标记的复合数据节点包含的下流数据包进行匹配,将无法成功匹配的数据包作为差异数据包,并将所述差异数据包添加到待检测的队列中;
删除所述待检测的队列中无效的数据包;
针对待检测队列中的任意一个数据包,表示为第一目标数据包,生成该第一目标数据包对应的垂直越权检测数据包,通过垂直检测数据包对所述第一目标数据包对应的数据节点进行垂直越权漏洞检测;所述越权检测数据包中包含任意一个不存在第一目标数据包的用户数据集的有效认证方式的内容。
2.根据权利要求1所述的方法,其特征在于,还包括:
对每个用户数据集中的数据包采用相对应的认证方式进行标记。
3.根据权利要求2所述的方法,其特征在于,所述从所述待检测的数据包中提取系统有效的认证方式,包括:
提取所述数据包中所有的token信息,并生成包含所有token信息的认证数据包;
删除所述认证数据包中的目标token,并将删除了目标token的认证数据包发送给系统;所述目标token为所述认证数据包中任意一个token;
若接收到系统反馈的数据包中包含预设的信息,则将所述目标token作为有效的认证方式。
4.根据权利要求1所述的方法,其特征在于,所述将每个用户数据集中的数据包按照上下流关系进行串联,包括:
针对任意一个用户数据集,获取该用户数据集中数据包的引用信息;
通过每个数据包的引用信息,确定数据包之间的上、下流关系;
并按照数据包之间的上、下流关系,将该用户数据集中的数据包进行串联。
5.根据权利要求1所述的方法,其特征在于,还包括:
确定每个用户数据集中包含的数据包的数量,并按照由多到少的原则对用户数据集进行排列;
按照用户数据集排列的顺序,依次对用户数据集按照上、下流关系进行串联。
6.根据权利要求1所述的方法,其特征在于,所述对每个用户数据集的业务链条中缺失的数据包进行补全,包括:
针对任意一个用户数据集,将用户数据集中的每个数据包分别放入预设的沙箱中,模拟事件触发;
获取通过模拟事件触发得到的所有数据包;
通过模拟事件触发得到所有数据包对用户数据集中的数据包进行补全;
若用户数据集中添加了补全的数据包,确定添加的数据包与所述用户数据集中原有的数据之间的上、下流关系。
7.根据权利要求1所述的方法,其特征在于,还包括:
对每个用户数据集中的各个数据包进行数据清洗,去除每个数据包中无效的数据;
对所有用户数据集中属于同类型的数据包进行哈希计算,得到哈希标记;
通过哈希标记对每个数据包进行标记,其中,同类型的数据包具有相同的哈希标记。
8.根据权利要求7所述的方法,其特征在于,对每个用户数据集中的各个数据包进行数据清洗之前,还包括:
针对不同用户数据集中任何一个类型的数据包,获取该类型的数据包预设的权重参数;
基于该类型的数据包预设的权重参数,计算该类型的数据包的权重;
并按照每种类型的数据包的权重设置每种类型的数据包的优先级。
9.根据权利要求7所述的方法,其特征在于,通过每个用户数据集中各个数据包之间的关系,以及不同用户数据集之间的关系,生成不同的权限测试用例,包括:
从不同的用户数据集中获取具有相同哈希标记的两个数据包,并对具有相同哈希标记的两个数据包进行参数解析;
若具有相同哈希标记的两个数据包的参数解析结果,符合预设的业务逻辑条件,则生成水平越权测试数据包,通过水平越权测试数据包对第一数据节点进行水平越权漏洞检测;其中,第一数据节点为具有相同哈希标记的两个数据包对应的数据节点;水平越权测试数据包为对具有相同标记的两个数据包对应的用户的有效认证方式的内容进行交叉替换后得到的;所述业务逻辑条件为:不同的数据包具有相同的参数、相同的参数内容格式、且参数的内容不同。
10.根据权利要求1所述的方法,其特征在于,所述通过每个用户数据集中各个数据包之间的关系,以及不同用户数据集之间的关系,生成不同的权限测试用例,包括:
从各个用户数据集中获取存在敏感数据的数据包,并将存在敏感数据的数据包存入待检测队列中;
从所述待检测队列中删除相似度大于预设的第三阈值的数据包;
针对待检测队列中的任何一个数据包,表示为第二目标数据包,删除该第二目标数据包的有效认证方式的内容,得到未授权测试数据包,通过所述未授权测试数据包对所述第二目标数据包对应的数据节点进行未授权漏洞测试。
11.一种权限漏洞的检测装置,其特征在于,包括:
提取单元,用于获取待检测的数据包,从所述待检测的数据包中提取系统有效的认证方式;
聚合单元,用于通过所述有效的认证方式,对所述待检测的数据包进行聚合,得到至少一个用户数据集;其中,同一个数据集中的数据包的有效认证方式的内容相同;
串联单元,用于将每个用户数据集中的数据包按照上下流关系进行串联;
数据补全单元,用于对每个用户数据集的业务链条中缺失的数据包进行补全;
测试用例生成单元,用于通过每个用户数据集中各个数据包之间的关系,以及不同用户数据集之间的关系,生成不同的权限测试用例;
所述测试用例生成单元通过每个用户数据集中各个数据包之间的关系,以及不同用户数据集之间的关系,生成不同的权限测试用例,包括:
根据每个用户数据集中数据包的上、下流关系,获取复合数据节点;所述复合数据节点对应的数据包包含至少一个下流数据包;
从不同的用户数据集中,获取具有相同哈希标记的复合数据节点;
将具有相同哈希标记的复合数据节点包含的下流数据包进行匹配,将无法成功匹配的数据包作为差异数据包,并将所述差异数据包添加到待检测的队列中;
删除所述待检测的队列中无效的数据包;
针对待检测队列中的任意一个数据包,表示为第一目标数据包,生成该第一目标数据包对应的垂直越权检测数据包,通过垂直检测数据包对所述第一目标数据包对应的数据节点进行垂直越权漏洞检测;所述越权检测数据包中包含任意一个不存在第一目标数据包的用户数据集的有效认证方式的内容。
CN202110270749.8A 2021-03-12 2021-03-12 一种系统漏洞检测方法及装置 Active CN113032787B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110270749.8A CN113032787B (zh) 2021-03-12 2021-03-12 一种系统漏洞检测方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110270749.8A CN113032787B (zh) 2021-03-12 2021-03-12 一种系统漏洞检测方法及装置

Publications (2)

Publication Number Publication Date
CN113032787A CN113032787A (zh) 2021-06-25
CN113032787B true CN113032787B (zh) 2024-05-07

Family

ID=76470260

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110270749.8A Active CN113032787B (zh) 2021-03-12 2021-03-12 一种系统漏洞检测方法及装置

Country Status (1)

Country Link
CN (1) CN113032787B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114138661B (zh) * 2021-12-08 2022-08-05 国家工业信息安全发展研究中心 一种对测试目标的动态安全检测方法及系统

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104331366A (zh) * 2014-10-30 2015-02-04 北京思特奇信息技术股份有限公司 一种测试用例设计效率提升方法及系统
US10523699B1 (en) * 2017-06-20 2019-12-31 Amazon Technologies, Inc. Privilege escalation vulnerability detection using message digest differentiation
WO2020000723A1 (zh) * 2018-06-27 2020-01-02 平安科技(深圳)有限公司 越权漏洞检测方法和装置
CN110674507A (zh) * 2019-09-19 2020-01-10 深圳开源互联网安全技术有限公司 检测web应用越权的方法及系统
CN110688659A (zh) * 2019-09-10 2020-01-14 深圳开源互联网安全技术有限公司 基于iast测试工具动态检测水平越权的方法及系统
CN111767542A (zh) * 2020-02-06 2020-10-13 北京沃东天骏信息技术有限公司 一种越权检测方法和装置

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104331366A (zh) * 2014-10-30 2015-02-04 北京思特奇信息技术股份有限公司 一种测试用例设计效率提升方法及系统
US10523699B1 (en) * 2017-06-20 2019-12-31 Amazon Technologies, Inc. Privilege escalation vulnerability detection using message digest differentiation
WO2020000723A1 (zh) * 2018-06-27 2020-01-02 平安科技(深圳)有限公司 越权漏洞检测方法和装置
CN110688659A (zh) * 2019-09-10 2020-01-14 深圳开源互联网安全技术有限公司 基于iast测试工具动态检测水平越权的方法及系统
CN110674507A (zh) * 2019-09-19 2020-01-10 深圳开源互联网安全技术有限公司 检测web应用越权的方法及系统
CN111767542A (zh) * 2020-02-06 2020-10-13 北京沃东天骏信息技术有限公司 一种越权检测方法和装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
漏洞与威胁闭环管理系统的设计与实现;王晓聪 等;《计算机科学》;全文 *

Also Published As

Publication number Publication date
CN113032787A (zh) 2021-06-25

Similar Documents

Publication Publication Date Title
CN103905451B (zh) 一种智能电网嵌入式设备网络攻击诱捕系统和诱捕方法
CN102624677B (zh) 一种网络用户行为监控方法及服务器
CN108776616B (zh) 一种确定区块链节点可信状态的方法、区块链节点及系统
CN107766728A (zh) 移动应用安全管理装置、方法及移动作业安全防护系统
CN103746982B (zh) 一种http网络特征码自动生成方法及其系统
CN104135474B (zh) 基于主机出入度的网络异常行为检测方法
CN103905450A (zh) 智能电网嵌入式设备网络检测评估系统与检测评估方法
CN111274046A (zh) 服务调用的合法性检测方法、装置、计算机设备及计算机存储介质
CN102882748A (zh) 网络接入检测系统和网络接入检测方法
US20140344931A1 (en) Systems and methods for extracting cryptographic keys from malware
CN105407096A (zh) 基于流管理的报文数据检测方法
CN108989294A (zh) 一种准确识别网站访问的恶意用户的方法及系统
CN107404487A (zh) 一种工业控制系统安全检测方法及装置
CN114785567B (zh) 一种流量识别方法、装置、设备及介质
Wang et al. Honeynet construction based on intrusion detection
CN113032787B (zh) 一种系统漏洞检测方法及装置
KR20140070075A (ko) 불법 접속 탐지 및 처리 시스템, 장치, 방법 및 컴퓨터 판독 가능한 기록 매체
CN106713293A (zh) 一种云平台恶意行为检测系统及其方法
CN112422486B (zh) 一种基于sdk的安全防护方法及设备
CN110837646A (zh) 一种非结构化数据库的风险排查装置
CN110099041A (zh) 一种物联网防护方法及设备、系统
CN105404796A (zh) 一种JavaScript源文件保护的方法及装置
CN117278245A (zh) 针对互联网仿真场景的数据采集方法、装置及存储介质
CN106897619B (zh) 移动终端恶意软件感知方法及装置
KR20220073657A (ko) 이미지 기반 악성코드 탐지 방법 및 장치와 이를 이용하는 인공지능 기반 엔드포인트 위협탐지 및 대응 시스템

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
TA01 Transfer of patent application right

Effective date of registration: 20231117

Address after: Room 301, building 1, No. 5, Xiaguangli, Chaoyang District, Beijing 100027

Applicant after: Beijing keynote Network Inc.

Address before: 100085 1-312-338, floor 3, building 1, courtyard 35, Shangdi East Road, Haidian District, Beijing

Applicant before: Beijing safety consensus Technology Co.,Ltd.

TA01 Transfer of patent application right
GR01 Patent grant
GR01 Patent grant