CN111176977B - 一种安全漏洞自动识别方法和装置 - Google Patents
一种安全漏洞自动识别方法和装置 Download PDFInfo
- Publication number
- CN111176977B CN111176977B CN201910983663.2A CN201910983663A CN111176977B CN 111176977 B CN111176977 B CN 111176977B CN 201910983663 A CN201910983663 A CN 201910983663A CN 111176977 B CN111176977 B CN 111176977B
- Authority
- CN
- China
- Prior art keywords
- data
- game
- protocol
- test case
- vulnerability
- 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
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3684—Test management for test design, e.g. generating new test cases
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3692—Test management for test results analysis
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Quality & Reliability (AREA)
- Software Systems (AREA)
- Computing Systems (AREA)
- Debugging And Monitoring (AREA)
Abstract
本申请实施例公开了一种安全漏洞自动识别的方法和装置,能够自动获取待测试游戏中的协议对象并生成测试用例,对待测游戏进行漏洞测试,通过对所述协议对象对应的存储位置的数据进行分析判断所述待测游戏是否存在安全漏洞。所述方法包括:创建针对待测游戏的协议对象;根据漏洞策略和协议对象生成测试用例;在所述待测游戏执行所述测试用例后,根据目标存储位置的数据变化信息,判断是否满足异常条件;所述目标存储位置为根据所述协议对象确定的,所述异常条件是根据所述测试用例确定的;若满足,确定所述待测游戏具有与所述测试用例相关的安全漏洞。
Description
技术领域
本申请涉及数据处理领域,特别是涉及一种安全漏洞自动识别方法和装置。
背景技术
游戏可以部署在智能设备中,为用户提供放松、娱乐的服务。由于游戏在设计或开发过程中可能产生缺陷,从而出现游戏安全漏洞,导致一些用户会利用游戏安全漏洞获得但不限于游戏代币、游戏装备、玩家各种属性等,破坏游戏公平性,对于游戏的危害性较大。
如何可以及时发现游戏安全漏洞,避免游戏上线后被一些用户发现而进行不法活动是目前亟需解决的问题。
目前主要采用手动测试方案来发现游戏安全漏洞,然而手动方案效率低下,人力成本投入高,覆盖面和漏洞挖掘的深度不足,往往难以及时发现游戏安全漏洞。
发明内容
为了解决上述技术问题,本申请提供了一种安全漏洞自动识别的方法和装置,通过自动创建协议对象和基于漏洞策略生成测试用例,解决了现有技术中手动效率低下和挖掘深度不足等问题。
本申请实施例公开了如下技术方案:
第一方面,本申请实施例提供了一种安全漏洞自动识别的方法,所述方法包括:
创建针对待测游戏的协议对象;
根据漏洞策略和协议对象生成测试用例;
在所述待测游戏执行所述测试用例后,根据目标存储位置的数据变化信息,判断是否满足异常条件;所述目标存储位置为根据所述协议对象确定的,所述异常条件是根据所述测试用例确定的;
若满足,确定所述待测游戏具有与所述测试用例相关的安全漏洞。
可选的,在所述根据目标存储位置的数据变化信息,判断是否满足异常条件之前,所述方法还包括:
从所述目标存储位置获取第一数据和第二数据,所述第一数据为在所述待测游戏执行所述测试用例前,从所述目标存储位置获取的数据;所述第二数据为在所述待测游戏执行所述测试用例后,从所述目标存储位置获取的数据;
根据所述第一数据和第二数据确定所述数据变化信息。
可选的,所述第一数据和第二数据根据如下方式获得:
逆向分析所述目标存储位置中的内存数据;
根据所述内存数据的格式,采用映射关系将所述内存数据转换为具有统一数据结构的第一数据或第二数据。
可选的,所述创建针对待测游戏的协议对象,包括:
根据映射关系创建针对待测游戏的协议对象。
可选的,所述漏洞策略包括根据历史安全漏洞确定的漏洞类型。
可选的,所述根据所述第一数据和第二数据,判断是否满足异常条件,包括:
通过识别策略判断所述第一数据和第二数据之差是否满足异常条件,所述识别策略包括精准识别策略、模糊识别策略或智能识别策略中一种或多种的组合。
可选的,所述协议对象为具有可盗刷类安全漏洞的协议对象,所述目标存储位置为游戏角色的可盗刷对象的存储位置。
第二方面,本申请实施例提供了一种安全漏洞自动识别装置,所述装置包括创建单元、生成单元、判断单元和第一确定单元:
所述创建单元,用于创建针对待测游戏的协议对象;
所述生成单元,用于根据漏洞策略和协议对象生成测试用例;
所述判断单元,用于在所述待测游戏执行所述测试用例后,根据目标存储位置的数据变化信息,判断是否满足异常条件;所述目标存储位置为根据所述协议对象确定的,所述异常条件是根据所述测试用例确定的;
所述第一确定单元,用于根据判断结果确定所述待测游戏是否具有安全漏洞;若目标存储位置的数据变化信息满足所述异常条件,确定所述待测游戏具有与所述测试用例相关的安全漏洞。
可选的,在所述判断单元之前,所述装置还包括:
获取单元,用于从所述目标存储位置获取第一数据和第二数据,所述第一数据为在所述待测游戏执行所述测试用例前,从所述目标存储位置获取的数据;所述第二数据为在所述待测游戏执行所述测试用例后,从所述目标存储位置获取的数据;
第二确定单元,用于根据所述第一数据和第二数据确定所述数据变化信息。
可选的,所述获取单元包括:
分析单元,用于逆向分析所述目标存储位置中的内存数据;
转换单元,用于根据所述内存数据的格式,采用映射关系将所述内存数据转换为具有统一数据结构的第一数据或第二数据。
可选的,所述创建单元,包括:
关系确定单元:用于确定所述游戏协议所对应的映射关系;
协议对象创建单元:用于根据所述映射关系创建针对待测游戏的协议对象。
可选的,所述漏洞策略包括根据历史安全漏洞确定的漏洞类型。
可选的,所述判断单元,包括:
策略确定单元,用于确定使用的识别策略,所述识别策略包括精准识别策略、模糊识别策略或智能识别策略中一种或多种的组合;
异常判断单元,用于通过识别策略判断所述第一数据和第二数据之差是否满足异常条件。
可选的,所述协议对象为具有可盗刷类安全漏洞的协议对象,所述目标存储位置为游戏角色的可盗刷对象的存储位置。
第三方面,本申请实施例提供了一种用于安全漏洞自动识别的实现设备,所述设备包括处理器以及存储器:
所述存储器用于存储程序代码,并将所述程序代码传输给所述处理器;
所述处理器用于根据所述程序代码中的指令执行第一方面所述的安全漏洞自动识别的实现方法。
第四方面,本申请实施例提供一种计算机可读存储介质,所述计算机可读存储介质用于存储程序代码,所述程序代码用于执行第一方面所述的安全漏洞自动识别的实现方法。
由上述技术方案可以看出,针对需要测试安全漏洞的待测游戏,通过创建协议对象,并根据漏洞策略和该协议对象生成测试用例,在通过待测游戏执行该测试用例后,从该协议对象对应的目标存储位置,确定该目标存储位置的数据变化信息,根据该数据变化信息确定是否满足异常条件,在判断出数据变化信息异常时,确定待测游戏具有与该测试用例相关的安全漏洞。由于可以自动创建协议对象和基于漏洞策略生成测试用例,使得通过待测游戏可以持续执行各种可能出现漏洞的场景,在高效的前提下能够增加漏洞测试覆盖面和提高漏洞挖掘的深度。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的安全漏洞自动识别的方法的应用场景示意图;
图2为本申请实施例提供的一种安全漏洞自动识别方法的流程图;
图3为本申请实施例提供的构造测试用例并发送给服务器的流程图;
图4为本申请实施例提供的漏洞逆向定位分析的流程图;
图5为本申请实施例提供的json结构转化示意图;
图6为本申请实施例提供的数据分析流程图;
图7为本申请实施例提供的一种应用场景的安全漏洞自动识别方法流程图;
图8为本申请实施例提供的另一种应用场景的安全漏洞自动识别方法流程图;
图9为本申请实施例提供的一种产品侧的安全漏洞自动识别方法流程图;
图10为本申请实施例提供的一种手机端游戏进行漏洞检测时的状态图;
图11为本申请实施例提供的一种物理架构图;
图12为本申请实施例提供的一种Web端的漏洞结果显示图;
图13为本申请实施例提供的一种漏洞检测详情图;
图14为本申请实施例提供的一种安全漏洞自动识别装置的结构图;
图15为本申请实施例提供的一种安全漏洞自动识别装置的结构图;
图16为本申请实施例提供的一种安全漏洞自动识别装置的结构图;
图17为本申请实施例提供的一种安全漏洞自动识别装置的结构图;
图18为本申请实施例提供的一种安全漏洞自动识别装置的结构图;
图19为本申请实施例提供的一种用于安全漏洞自动识别的实现设备的结构图;
图20为本申请实施例提供的一种服务器的结构图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
现有技术中,对游戏漏洞进行检测主要采用手动放挖掘方法,通过一些内存修改工具如烧饼修改器、八门神器、GameGuardian或协议修改工具tcpdumo、fiddler等来手工构造测试用例,并将这些测试用例应用与待测游戏中。在修改内存或协议后,再由测试者手动查看游戏道具、物品、属性等是否被盗刷,从而来判定待测游戏是否存在安全漏洞。
由于该方法需要大量人为操作,需要进行检测的漏洞类型繁多,所要人为检测的对象数目巨大,因此存在游戏安全漏洞效率低下、人力成本投入高的问题;同时,由于人为检测能够检测出问题种类和待检测对象数目有限,无法进行深度挖掘,因此存在漏洞挖掘覆盖深度和广度不足的问题。
为了解决上述技术问题,本申请实施例提供了一种安全漏洞自动识别的方法,该方法可以通过对待测游戏的协议内容进行分析,自动创建协议对象,并自动将协议对象与漏洞经验库中的漏洞类型相结合,构造测试用例进行测试。通过对所述协议对象对应的存储位置的数据进行自动监控分析,判断所述待测游戏是否存在相应的安全漏洞,从而实现了对游戏安全漏洞的自动检测功能,解决了现有技术中人力成本投入高、效率低下以及漏洞挖掘深度和广度不足的问题。
可以理解的是,该方法可以应用在终端设备上,终端设备例如可以是智能终端、计算机、个人数字助理(Personal Digital Assistant,简称PDA)、平板电脑等设备。同时,在硬件环境上,本技术已经实现的环境有:ARM架构处理器、X86架构处理器;在软件环境上,本技术已经实现的环境有:Android平台、Windows xp及以上操作系统或Linux操作系统。
为了便于理解本申请的技术方案,下面结合实际应用场景,对本申请实施例提供的安全漏洞自动识别的实现方法进行介绍。
参见图1,图1为本申请实施例提供的安全漏洞自动识别的方法的应用场景示意图。该应用场景中包括终端设备101,终端设备101能够自动根据待测游戏协议创建协议对象。游戏协议是游戏客户端和游戏服务器之间通信的数据格式,协议对象是指协议在客户端内存中的表示,通常为一个结构体或一个类的对象。
终端设备101自动根据漏洞经验库中不同的漏洞类型创建对应的漏洞策略。漏洞策略是根据从漏洞类型中获得的漏洞生成原因,针对性创建的包含能够引发对应安全漏洞的操作行为的策略。将不同的漏洞策略与协议对象相结合,创建对应的测试用例。测试用例是指将上述漏洞策略中的操作行为应用于所选的协议对象中,使该协议对象包含的操作行为能够引发对应的安全漏洞并使该协议对象能够反映所引发的安全漏洞。
终端设备101自动将所述测试用例应用于待测游戏,可以理解的是,待测游戏可以位于终端设备101中,由终端设备101对待测游戏直接进行测试,并由终端设备101接收和分析测试结果;待测游戏也可以位于终端设备101外部的其他设备中,终端设备构建好测试用例后发送至其他设备,其他设备在进行测试后将测试结果反馈至终端设备101中进行分析。测试用例中所包含的协议对象具有对应的目标存储位置,测试结果在目标存储位置的数据的数据变化信息上进行反映。
终端设备101自动对所述目标存储位置的数据变化信息进行分析,并通过分析结果确定待测游戏是否存在相关游戏安全漏洞。可以理解的是,所述对数据变化信息进行分析可以为对数据的数值变化情况进行分析,例如数据是否发生了增加、减少等变化;也可以为对数据的数值属性进行分析,例如检测数据是否出现异常值和离群值等。
测试用例中包含的漏洞策略具有对应的漏洞现象,当待测游戏具有相应的安全漏洞时,该漏洞现象会在目标存储位置的数据变化信息上进行映射。终端设备101通过将存储位置数据变化信息与相应的测试用例所对应的漏洞现象相比较,确定待测游戏是否存在相关游戏安全漏洞。
接下来,将结合附图对本申请实施例提供的安全漏洞自动识别的方法进行介绍。
参见图2,该图为本申请实施例提供的一种安全漏洞自动识别方法的流程图,所述方法包括以下步骤:
S101:创建针对待测游戏的协议对象。
首先,需要根据待测游戏的协议创建对应协议的协议对象。创建协议对象的方式有自动创建和手动创建两种类型。在高级程序语言中可以采取自动创建的方法,例如通过反射机制自动对待测游戏中的协议进行分析,通过映射关系从协议中获取协议对应的协议对象。
反射机制是只有在部分高级编程语言才有的特性。举例来讲,在编程时,A模块创建了一个对象x,A把这个对象当做参数传递给模块B。如果是没有反射机制的编程语言中,B要想知道这个对象x的结构和里面的内容,必须在语言编译之前就由A模块提供明确的有关对象x的内部信息。如果有反射机制,B模块可以在运行时直接通过反射获取对象x里面的内容,无需由A模块提供内部信息。
对应本申请实施例内的反射机制应用场景,即若不使用反射机制,则针对游戏客户端和服务器交互的每条协议都需要事先知道,然后针对每条协议的每个结构按照测试需求手动编写代码,进行测试用例构造。在有反射机制的情况下,可以直接获取所有协议及其协议结构,在此基础上进行后续测试用例的构建。如下列代码所示所示,该代码是在高级编程语言中使用反射机制从协议代码中获取协议对象的实际代码演示,从图中可以看出,该代码是针对游戏中的角色信息进行提取的,因此协议对象为各种角色信息,例如角色所具有的花瓣货币、钻石、游戏币、经验值以及角色的竞技场能力、武器信息等:
此外,手动编写代码需要根据游戏版本版本的变化而进行修改,只要协议有变动就需要重新编写用例生成代码;而反射机制针对游戏的所有版本全部兼容,版本变更时无需更改代码。
此外,根据协议种类的不同,协议对象也具有多种不同的类别。例如,当协议与游戏中的道具、属性等对象的获取相关时,该类对象通常具有可盗刷类的安全漏洞,因此所述协议对象为具有可盗刷类安全漏洞的协议对象。
S102:根据漏洞策略和协议对象生成测试用例。
在创建好协议对象后,需要将需要进行测试的漏洞策略与所创建的协议对象相结合,生成需要对待测游戏进行测试的测试用例。
其中,所述漏洞策略是根据历史安全漏洞中的漏洞类型所得到的,通过对历史安全漏洞中的漏洞类型进行遍历,分析其漏洞产生的原因,并将漏洞产生原因对应的操作提取出来形成漏洞策略。将漏洞策略和协议对象进行结合,可以针对不同的漏洞种类将协议对象进行相应的更改。例如,当协议对象为从商店购买的道具时,其对应的漏洞种类有并发盗刷、重发盗刷、0值盗刷等,对应的漏洞策略分别为重发策略、并发策略和0值策略。
在确定漏洞策略后,将漏洞策略与创建的待测对象相结合,得到需要对待测游戏进行的测试用例。例如,当协议对象为任务获取的奖励时,将所述协议对象与重发策略相结合,得到的测试用例为在任务完成后重复的申请领取任务奖励。
S103:在所述待测游戏执行所述测试用例后,根据目标存储位置的数据变化信息,判断是否满足异常条件。
在创建好测试用例后,将测试用例先发送到待测游戏客户端中,由客户端向服务器发送所述测试用例,服务器在收到测试用例后执行该测试用例,并将执行结果反馈给游戏客户端。游戏客户端在接受到反馈结果之后,根据反馈结果中的信息,对测试用例对应的目标存储位置的数据信息进行相应更改。其中,服务器是指待测游戏对应的游戏服务器,用于对待测游戏客户端发送的测试用例进行响应。
如图3所示,图3是构造测试用例并发送给服务器的流程图。在开始进行漏洞测试后,先确定需要进行测试的游戏协议。其中,确定游戏协议之前需要在待测游戏中将需要进行测试的游戏协议先进行运行,从而根据运行的游戏协议获取对应的协议对象。在获取协议对象后,由于重发和并发策略是可以对所有游戏协议中的所有游戏协议对象进行的,因此在对某一协议对象针对性的进行测试之前,可以先进行重发和并发策略的测试;其他漏洞策略通常是对某一协议对象中的某一项数据进行检测,因此需要对获取的协议对象进行字段遍历,分析所述协议对象中的可测试字段,例如,当协议对象为购买某个道具时,所述字段可以为该道具的各条属性、道具数量等。对所述字段进行数值类型分析,并针对该字段进行多种漏洞策略的测试用例创建。上述每一个测试用例创建完成后都会经待测游戏客户端发送至游戏服务器进行测试。
在客户端根据反馈结果对目标存储位置的数据信息进行更改后,由监视器对目标存储位置上的数据变化信息进行监视和识别。需要说明的是,监视器对数据变化信息进行监视和识别主要有两种方式:
当需要通过数据变化信息中的数值变化量进行漏洞分析时,监视器会在待测游戏执行测试用例之前,获取目标存储位置上的数据,该数据称为第一数据;在待测游戏执行测试用例之后,监视器获取目标存储位置上的数据,该数据称为第二数据;根据第一数据和第二数据确定数据变化信息。
当只需要通过数据变化信息中的异常值或离群值等进行漏洞分析时,监视器只需在待测游戏执行测试用例之后,获取目标存储位置上的数据即可。监视器在监控并识别目标存储位置的数据后,将数据上传至识别器进行分析。
在一种可能的实现方式中,监视器在获取目标存储位置数据时可以采用逆向分析定位法。逆向分析是指在没有源代码的情况下,通过某些工具和手段,分析和还原部分或所有代码的实现逻辑。例如,在本案中,在需要定位背包代码的位置时,由于缺少游戏源代码的,需要借助一些软件逆向工程,去还原游戏的逻辑代码,实现逆向分析定位。
如图4所示,逆向分析代币、背包等位置中的数据位置及结构进行分析,将协议对象列表转化为每一个具有物品ID、背包类型、物品数量、背包位置等信息的json结构数据,从而可以清楚直观的得到协议对象对应的目标存储位置以及目标存储位置上的数据信息。监视器通过该方法,将上述第一数据或第二数据转化为具有统一数据结构的第一数据或第二数据。所述jison结构转化如图5所示。
例如,当所述协议对象为具有可盗刷类安全漏洞的协议对象时,通过对该协议对象进行结构转化,可以得到的目标存储位置为游戏角色的可盗刷对象的存储位置,如背包内的物品存储位置、人物角色属性的属性面板位置等。
在获取数据变化信息后,识别器通过分析数据变化信息,判断所述待测游戏是否存在测试用例对应的安全漏洞。
当获取的数据变化信息为根据第一数据和第二数据确定时,识别器需要计算两数据之间的差值,通过识别策略对两数据本身以及两数据的差值进行分析,判断是否满足异常条件。如图6所示,所述识别策略包括精准识别策略、模糊识别策略或智能识别策略中的一种或多种。其中,精准识别策略是指根据测试用例构造策略的不同选择不同的精准识别策略,精准识别策略与测试用例中的漏洞策略相对应。所述精准识别策略包括:
负值检测:检测第一数据和第二数据的差值是否有负值。在待测游戏中,当所构建的测试用例中包含的协议对象具有不会减少的性质,例如角色的经验值、等级时,通过检测其差值是否为负值来判断待测游戏是否存在安全漏洞;此外,当构建的测试用例中包含的漏洞策略为负值策略,即本应增加的协议对象出现了减少现象时,能够通过对差值进行负值检测来判断待测游戏是否存在安全漏洞。
消耗获取方向不一致:检测第一数据和第二数据的差值类型是否与测试用例中的消耗或获取类型相对应。当构建的测试用例中包含的漏洞策略为类型判断策略时,即判断目标存储位置的变化数据的类型与测试用例中应当产生变化的数据类型是否相同。通过对目标存储位置变化数据的类型进行识别,并与测试用例中所变化的数据类型进行比对,能够检测出待测游戏是否存在安全漏洞。例如,测试用例中消耗了金币购买A道具,目标存储位置增长的是B道具,判断待测游戏存在安全漏洞。
物品/货币单独增加:检测第一数据和第二数据是否存在没有物品减少但货币单独增加或没有货币减少但物品单独增加的情况。
对比重发比例不一致:检测第一数据和第二数据是否存在具有错误的增长值的情况。例如,在重发、并发等漏洞策略中,无论重发、并发次数为大于1的任何数,第一数据和第二数据增长值应为一次发送所增长的数据值。当增长值与一次发送的增长值不匹配时,判断待测游戏存在相应的安全漏洞。
模糊识别策略是对第一数据和第二数据中的异常值进行检测,例如负值、超大值和超小值等。
智能识别策略是通过孤立森林算法等对数据中的离群值进行检测。可以理解的是,上述模糊识别策略和智能识别策略也可以对单独数据进行问题检测,不需要分别获取第一数据和第二数据。
另外,在现有技术中存在另一种漏洞挖掘技术,该现有技术是通过构造测试用例并对服务器返回的协议进行监控,对所述协议内容进行分析从而判定是否存在安全漏洞。其中,所述协议内容包括协议名、协议包含的字段名和字段名的语义等信息,例如,当返回的协议内容为购买道具成功时,协议内容可以包括“恭喜你购买成功”字段,“购买xx物品*1”字段等。
由于不同游戏中,所述协议内容的形式大不相同,例如在购买成功时,返回的协议内容有“恭喜你购买成功”、“恭喜你获得XX物品”等不同形式,因此,所述现有技术对协议内容进行监控的漏洞挖掘方法通配实用性低。
而本申请中的技术方案是通过对协议对象对应的目标存储位置的数据变化信息进行监控来检测是否具有漏洞,并不是对协议内容进行监控。在不同的游戏中,虽然协议内容大不相同,但是大多数游戏中的协议对象都具有相对应的目标存储位置,且该存储位置的数据变化信息可以反映出所述协议对象对应的协议是否正常执行。由于不对协议内容进行监控,因此本申请中的技术方案并不受不同游戏的多样协议内容的制约,具有较好的通配性。
S104:当满足异常条件时,确定所述待测游戏具有与所述测试用例相关的安全漏洞。
例如,当测试用例中包含的漏洞策略为负值策略时,若识别器检测到第二数据与第一数据的差值为负值,判定待测游戏存在负值盗刷漏洞;当测试用例中包含的漏洞策略为0值策略时,即将游戏协议中消耗的数据量改为0时,若识别器检测到第二数据与第一数据的差值为正值,判定待测游戏存在0值盗刷漏洞。
由上述技术方案可以看出,针对需要测试安全漏洞的待测游戏,通过创建协议对象,并根据漏洞策略和该协议对象生成测试用例,在通过待测游戏执行该测试用例后,从该协议对象对应的目标存储位置,确定该目标存储位置的数据变化信息,根据该数据变化信息确定是否满足异常条件,在判断出数据变化信息异常时,确定待测游戏具有与该测试用例相关的安全漏洞。由于可以自动创建协议对象和基于漏洞策略生成测试用例,使得通过待测游戏可以持续执行各种可能出现漏洞的场景,在高效的前提下能够增加漏洞测试覆盖面和提高漏洞挖掘的深度。
接下来,将结合实际应用场景,对本申请实施例提供的安全漏洞自动识别方法进行介绍。在该应用场景中,所述协议为商店购买SHOP_BUY协议,所述协议对象为从道具商店购买的各种游戏道具。所述安全漏洞自动识别方法流程图如图7所示,所述方法包括:
S201:创建针对待测游戏SHOP_BUY协议的协议对象。
在创建协议对象之前,需要在待测游戏中遍历一遍商店购买操作,对所有SHOP_BUY协议相关的操作进行测试。在测试完毕后,程序根据待测游戏中进行过的操作,从中自动提取与SHOP_BUY协议对应的协议对象,该协议对象为从道具商店购买的各种道具。
S202:根据漏洞策略和SHOP_BUY协议对象生成测试用例。
在获取所述SHOP_BUY协议对象后,根据漏洞经验库中的漏洞类型以及所述协议对象生成测试用例。其中,所述策略类型如下表所示。所述字段可以为物品的数量、各项属性值以及物品等级等。
S203:从所述SHOP_BUY协议对象对应的目标存储位置获取第一数据。
其中,所述协议对象对应的目标存储位置有道具背包、道具栏等,从中获取在测试用例实施前的第一物品数据。
S204:待测试用例执行完毕后,从所述存储位置获取第二数据。
在测试用例执行完毕后,从协议对象对应的存储位置获取第二物品数据。
S205:根据第一数据和第二数据确定所述数据变化信息。
通过对所述第一数据和第二数据进行比较计算,得到从第一数据到第二数据的数据变化信息。
S206:根据所述数据变化信息判断所述待测游戏是否包含游戏安全漏洞。
在得到数据变化信息后,将所述变化信息与执行的测试用例相对应,判断所述变化信息是否满足测试用例对应的漏洞要求。例如,当所述测试用例中的漏洞策略为并发策略时,所述变化信息为相关物品增长了不止一份的数据量,此时判定所述待测游戏存在并发盗刷漏洞。
接下来,将结合另一实际应用场景,对本申请实施例提供的安全漏洞自动识别方法进行介绍。在该应用场景中,所述协议为战斗经验协议,所述协议对象为从战斗中获取的各种人物属性。所述安全漏洞自动识别方法流程图如图8所示,所述方法包括:
S301:创建针对待测游戏战斗经验协议的协议对象。
在创建所述协议对象前,需要测试人员进行相关战斗操作,将与所述战斗经验协议有关的战斗操作全部进行测试。程序从测试过的战斗操作中获取所需协议对象,例如角色经验值、角色属性面板的各项属性值等。
S302:根据漏洞策略和战斗经验协议对象生成测试用例。
将与战斗经验协议相关的漏洞策略与获得的协议对象相结合,得到测试用例。例如,将多次战斗但只获得一次经验奖励的漏洞与协议对象相结合,得到的测试用例为将某一战斗操作执行多次。
S303:从所述战斗经验协议对象对应的目标存储位置获取第一数据。
其中,所述战斗经验协议对象对应的目标存储位置为角色经验条和角色属性面板等。
S304:待测试用例执行完毕后,从所述存储位置获取第二数据。
S305:根据第一数据和第二数据确定所述数据变化信息。
S306:根据所述数据变化信息判断所述待测游戏是否包含游戏安全漏洞。
接下来,将结合附图介绍一种本申请实施例提供的一种安全漏洞自动识别方法的产品侧应用场景。所述安全漏洞自动识别方法流程图参见图9所示,所述方法包括:
S401:进入SR客户端,选择游戏进行漏洞挖掘。
SR是指手游安全测试工具SecurityRadar。打开SR工具后,首先选择漏洞自动挖掘功能,进入二级界面,在二级界面中选择需要进行漏洞挖掘的游戏。
S402:从电脑上打开漏洞挖掘配置界面,选择对应游戏和需要进行漏洞挖掘的协议接口。
S403:手机与Web界面进行关联,开启漏洞挖掘。
在手机进行漏洞挖掘时,手机端游戏界面被遮挡,无法操作,如图10所示,工具在后台进行协议用例的构造与内存数据的监控,将数据上报到服务器进行漏洞识别。
其中,所述构造协议用例并进行内存数据监控、上报服务器识别的物理架构图如图11所示。构造器在分析协议对象并构造测试用例后,将所述测试用例发送给游戏客户端,游戏客户端发送至游戏服务器进行测试用例的运行,并将运行结果反馈到游戏客户端中。监视器对游戏客户端中的内存数据进行监控,并将监控结果上传至服务器中的识别器进行漏洞识别。识别器将漏洞识别结果上传至Web平台。
S404:在Web平台上展示漏洞挖掘的测试结果。
在Web平台上展示的漏洞挖掘的测试结果中包含测试用例和用例执行后的内存监控以及漏洞判定原因,如图12所示,在USE_ITEM和SHOP_BUY两条协议都发现了安全漏洞,其中√表示该协议在该漏洞策略中是正常的,不存在该漏洞;×表示该协议在该漏洞策略中是异常的,存在该漏洞。点击×号后可以查看测试详情,如图13所示。由图13可知,在SHOP_BUY协议中,第一行测试用例将需要消耗的道具从数值1改为数值0,而通过对目标存储位置的数据变化信息检测可知,目标存储位置的数据产生变化,因此0值策略检测出了安全漏洞,检测结果显示不通过;第二行测试用例将数值修改为了极大的溢出值,而通过对目标存储位置的数据变化信息检测可知,目标存储位置的数据变化为1,明显表明待测游戏未对溢出值做出正确反应,因此溢出值策略检测出了安全漏洞,检测结果显示不通过。
基于前述实施例提供的安全漏洞自动识别方法,本实施例供一种安全漏洞自动识别装置200,参见图14,所述装置包括创建单元201、生成单元202、判断单元203、第一确定单元204:
所述创建单元201,用于创建针对待测游戏的协议对象;
所述生成单元202,用于根据漏洞策略和协议对象生成测试用例;
所述判断单元203,用于在所述待测游戏执行所述测试用例后,根据目标存储位置的数据变化信息,判断是否满足异常条件;所述目标存储位置为根据所述协议对象确定的,所述异常条件是根据所述测试用例确定的;
所述第一确定单元204,用于根据判断结果确定所述待测游戏是否具有安全漏洞;若目标存储位置的数据变化信息满足所述一场条件,确定所述待测游戏具有与所述测试用例相关的安全漏洞。
在一种实现方式中,参见图15,该安全漏洞自动识别装置还包括获取单元205、第二确定单元206:
所述获取单元205,用于从所述目标存储位置获取第一数据和第二数据,所述第一数据为在所述待测游戏执行所述测试用例前,从所述目标存储位置获取的数据;所述第二数据为在所述待测游戏执行所述测试用例后,从所述目标存储位置获取的数据;
所述第二确定单元206,用于根据所述第一数据和第二数据确定所述数据变化信息。
在一种实现方式中,参见图16,所述获取单元205具体包括:
分析单元207,用于逆向分析所述目标存储位置中的内存数据;
转换单元208,用于根据所述内存数据的格式,采用映射关系将所述内存数据转换为具有统一数据结构的第一数据或第二数据。
在一种实现方式中,参见图17,所述创建单元201具体包括:
关系确定单元209:用于确定所述游戏协议所对应的映射关系;
协议对象创建单元210:用于根据所述映射关系创建针对待测游戏的协议对象。
在一种实现方式中,参见图18,所述判断单元203具体包括:
策略确定单元211,用于确定使用的识别策略,所述识别策略包括精准识别策略、模糊识别策略或智能识别策略中一种或多种的组合;
异常判断单元212,用于通过识别策略判断所述第一数据和第二数据之差是否满足异常条件。
本申请实施例还提供了一种用于安全漏洞自动识别的实现设备,下面结合附图对用于安全漏洞自动识别的实现设备进行介绍。请参见图19所示,本申请实施例提供了一种用于安全漏洞自动识别的实现设备1200,该设备1200还可以是终端设备,该终端设备可以为包括手机、平板电脑、个人数字助理(Personal Digital Assistant,简称PDA)、销售终端(Point of Sales,简称POS)、车载电脑等任意智能终端,以终端设备为手机为例:
图19示出的是与本申请实施例提供的终端设备相关的手机的部分结构的框图。参考图19,手机包括:射频(Radio Frequency,简称RF)电路1210、存储器1220、输入单元1230、显示单元1240、传感器1250、音频电路1260、无线保真(wireless fidelity,简称WiFi)模块1270、处理器1280、以及电源1290等部件。本领域技术人员可以理解,图19中示出的手机结构并不构成对手机的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
下面结合图19对手机的各个构成部件进行具体的介绍:
RF电路1210可用于收发信息或通话过程中,信号的接收和发送,特别地,将基站的下行信息接收后,给处理器1280处理;另外,将设计上行的数据发送给基站。通常,RF电路1210包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器(Low NoiseAmplifier,简称LNA)、双工器等。此外,RF电路1210还可以通过无线通信与网络和其他设备通信。上述无线通信可以使用任一通信标准或协议,包括但不限于全球移动通讯系统(Global System of Mobile communication,简称GSM)、通用分组无线服务(GeneralPacket Radio Service,简称GPRS)、码分多址(Code Division Multiple Access,简称CDMA)、宽带码分多址(Wideband Code Division Multiple Access,简称WCDMA)、长期演进(Long Term Evolution,简称LTE)、电子邮件、短消息服务(Short Messaging Service,简称SMS)等。
存储器1220可用于存储软件程序以及模块,处理器1280通过运行存储在存储器1220的软件程序以及模块,从而执行手机的各种功能应用以及数据处理。存储器1220可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器1220可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
输入单元1230可用于接收输入的数字或字符信息,以及产生与手机的用户设置以及功能控制有关的键信号输入。具体地,输入单元1230可包括触控面板1231以及其他输入设备1232。触控面板1231,也称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板1231上或在触控面板1231附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触控面板1231可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器1280,并能接收处理器1280发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板1231。除了触控面板1231,输入单元1230还可以包括其他输入设备1232。具体地,其他输入设备1232可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。
显示单元1240可用于显示由用户输入的信息或提供给用户的信息以及手机的各种菜单。显示单元1240可包括显示面板1241,可选的,可以采用液晶显示器(LiquidCrystal Display,简称LCD)、有机发光二极管(Organic Light-Emitting Diode,简称OLED)等形式来配置显示面板1241。进一步的,触控面板1231可覆盖显示面板1241,当触控面板1231检测到在其上或附近的触摸操作后,传送给处理器1280以确定触摸事件的类型,随后处理器1280根据触摸事件的类型在显示面板1241上提供相应的视觉输出。虽然在图19中,触控面板1231与显示面板1241是作为两个独立的部件来实现手机的输入和输入功能,但是在某些实施例中,可以将触控面板1231与显示面板1241集成而实现手机的输入和输出功能。
手机还可包括至少一种传感器1250,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板1241的亮度,接近传感器可在手机移动到耳边时,关闭显示面板1241和/或背光。作为运动传感器的一种,加速计传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于手机还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
音频电路1260、扬声器1261,传声器1262可提供用户与手机之间的音频接口。音频电路1260可将接收到的音频数据转换后的电信号,传输到扬声器1261,由扬声器1261转换为声音信号输出;另一方面,传声器1262将收集的声音信号转换为电信号,由音频电路1260接收后转换为音频数据,再将音频数据输出处理器1280处理后,经RF电路1210以发送给比如另一手机,或者将音频数据输出至存储器1220以便进一步处理。
WiFi属于短距离无线传输技术,手机通过WiFi模块1270可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图19示出了WiFi模块1270,但是可以理解的是,其并不属于手机的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。
处理器1280是手机的控制中心,利用各种接口和线路连接整个手机的各个部分,通过运行或执行存储在存储器1220内的软件程序和/或模块,以及调用存储在存储器1220内的数据,执行手机的各种功能和处理数据,从而对手机进行整体监控。可选的,处理器1280可包括一个或多个处理单元;优选的,处理器1280可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器1280中。
手机还包括给各个部件供电的电源1290(比如电池),优选的,电源可以通过电源管理系统与处理器1280逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。
尽管未示出,手机还可以包括摄像头、蓝牙模块等,在此不再赘述。
在本实施例中,该终端设备所包括的处理器1280还具有以下功能:
创建针对待测游戏的协议对象;
根据漏洞策略和协议对象生成测试用例;
在所述待测游戏执行所述测试用例后,根据目标存储位置的数据变化信息,判断是否满足异常条件;所述目标存储位置为根据所述协议对象确定的,所述异常条件是根据所述测试用例确定的;
若满足,确定所述待测游戏具有与所述测试用例相关的安全漏洞。
本申请实施例还提供一种服务器,请参见图20所示,图20为本申请实施例提供的服务器1300的结构图,服务器1300可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上中央处理器(Central Processing Units,简称CPU)1322(例如,一个或一个以上处理器)和存储器1332,一个或一个以上存储应用程序1342或数据1344的存储介质1330(例如一个或一个以上海量存储设备)。其中,存储器1332和存储介质1330可以是短暂存储或持久存储。存储在存储介质1330的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对服务器中的一系列指令操作。更进一步地,中央处理器1322可以设置为与存储介质1330通信,在服务器1300上执行存储介质1330中的一系列指令操作。
服务器1300还可以包括一个或一个以上电源1326,一个或一个以上有线或无线网络接口1350,一个或一个以上输入输出接口1358,和/或,一个或一个以上操作系统1341,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM等等。
上述实施例中由服务器所执行的步骤可以基于该本申请实施例还提供一种计算机可读存储介质,用于存储程序代码,该程序代码用于执行前述各个实施例所述的一种安全漏洞自动识别的实现方法中的任意一种实施方式。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质可以是下述介质中的至少一种:只读存储器(英文:read-only memory,缩写:ROM)、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于设备及系统实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的设备及系统实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上所述,仅为本申请的一种具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应该以权利要求的保护范围为准。
Claims (10)
1.一种安全漏洞自动识别方法,其特征在于,所述方法包括:
创建针对待测游戏的协议对象,所述协议对象是指游戏协议在客户端内存中的表示,所述协议对象为一个结构体或一个类的对象,所述游戏协议为游戏客户端和游戏服务器之间通信的数据格式,所述协议对象为具有可盗刷类安全漏洞的协议对象;
根据漏洞策略和协议对象生成测试用例,所述测试用例是指漏洞策略中的操作行为应用于所选的协议对象中,使所述协议对象包含的操作行为能够引发对应的安全漏洞并使所述协议对象能够反映所引发的安全漏洞;
在所述待测游戏执行所述测试用例后,根据目标存储位置的数据变化信息,判断是否满足异常条件;所述目标存储位置为根据所述协议对象确定的,所述异常条件是根据所述测试用例确定的,所述目标存储位置为游戏角色的可盗刷对象的存储位置;
若满足,确定所述待测游戏具有与所述测试用例相关的安全漏洞。
2.根据权利要求1所述的方法,其特征在于,在所述根据目标存储位置的数据变化信息,判断是否满足异常条件之前,所述方法还包括:
从所述目标存储位置获取第一数据和第二数据,所述第一数据为在所述待测游戏执行所述测试用例前,从所述目标存储位置获取的数据;所述第二数据为在所述待测游戏执行所述测试用例后,从所述目标存储位置获取的数据;
根据所述第一数据和第二数据确定所述数据变化信息。
3.根据权利要求2所述的方法,其特征在于,所述第一数据和第二数据根据如下方式获得:
获取所述目标存储位置中的内存数据;
根据所述内存数据的格式,采用映射关系将所述内存数据转换为具有统一数据结构的第一数据或第二数据。
4.根据权利要求1所述的方法,其特征在于,所述漏洞策略包括重发策略、并发策略、0值策略、负值策略、乘法/加法溢出策略、ID变换/附近枚举值策略、最大最小值策略、截断值策略中的一种或多种。
5.根据权利要求2所述的方法,其特征在于,根据所述第一数据和第二数据,判断是否满足异常条件,包括:
通过识别策略判断所述第一数据和第二数据之差是否满足异常条件,所述识别策略包括精准识别策略、模糊识别策略或智能识别策略中一种或多种的组合。
6.根据权利要求1-5任意一项所述的方法,其特征在于,所述协议对象为具有可盗刷类安全漏洞的协议对象,所述目标存储位置为游戏角色的可盗刷对象的存储位置。
7.一种安全漏洞自动识别装置,其特征在于,所述装置包括创建单元、生成单元、判断单元、第一确定单元:
所述创建单元,用于创建针对待测游戏的协议对象,所述协议对象是指游戏协议在客户端内存中的表示,所述协议对象为一个结构体或一个类的对象,所述游戏协议为游戏客户端和游戏服务器之间通信的数据格式,所述协议对象为具有可盗刷类安全漏洞的协议对象;
所述生成单元,用于根据漏洞策略和协议对象生成测试用例,所述测试用例是指漏洞策略中的操作行为应用于所选的协议对象中,使所述协议对象包含的操作行为能够引发对应的安全漏洞并使所述协议对象能够反映所引发的安全漏洞;
所述判断单元,用于在所述待测游戏执行所述测试用例后,根据目标存储位置的数据变化信息,判断是否满足异常条件;所述目标存储位置为根据所述协议对象确定的,所述异常条件是根据所述测试用例确定的,所述目标存储位置为游戏角色的可盗刷对象的存储位置;
所述第一确定单元,用于根据判断结果确定所述待测游戏是否具有安全漏洞;若目标存储位置的数据变化信息满足所述异常条件,确定所述待测游戏具有与所述测试用例相关的安全漏洞。
8.根据权利要求7所述的装置,其特征在于,所述装置进一步包括获取单元、第二确定单元:
所述获取单元,用于从所述目标存储位置获取第一数据和第二数据,所述第一数据为在所述待测游戏执行所述测试用例前,从所述目标存储位置获取的数据;所述第二数据为在所述待测游戏执行所述测试用例后,从所述目标存储位置获取的数据;
所述第二确定单元,用于根据所述第一数据和第二数据确定所述数据变化信息。
9.一种用于安全漏洞自动识别的实现设备,其特征在于,所述设备包括处理器以及存储器:
所述存储器用于存储程序代码,并将所述程序代码传输给所述处理器;
所述处理器用于根据所述程序代码中的指令执行权利要求1-6所述的安全漏洞自动识别的实现方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质用于存储程序代码,所述程序代码用于执行权利要求1-6所述的安全漏洞自动识别的实现方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910983663.2A CN111176977B (zh) | 2019-10-16 | 2019-10-16 | 一种安全漏洞自动识别方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910983663.2A CN111176977B (zh) | 2019-10-16 | 2019-10-16 | 一种安全漏洞自动识别方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111176977A CN111176977A (zh) | 2020-05-19 |
CN111176977B true CN111176977B (zh) | 2021-08-03 |
Family
ID=70650073
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910983663.2A Active CN111176977B (zh) | 2019-10-16 | 2019-10-16 | 一种安全漏洞自动识别方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111176977B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112989355B (zh) * | 2021-02-08 | 2024-04-12 | 中国农业银行股份有限公司 | 一种漏洞威胁感知方法、装置、存储介质和设备 |
CN112565026B (zh) | 2021-02-20 | 2021-06-04 | 支付宝(杭州)信息技术有限公司 | 测试帧的生成方法、装置及设备 |
CN112925725B (zh) * | 2021-04-09 | 2024-03-15 | 网易(杭州)网络有限公司 | 数据测试方法和装置、可读存储介质、电子设备 |
CN115695034A (zh) * | 2022-03-07 | 2023-02-03 | 王云 | 应用于云计算的数据分析方法及服务器 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104168288A (zh) * | 2014-08-27 | 2014-11-26 | 中国科学院软件研究所 | 一种基于协议逆向解析的自动化漏洞挖掘系统及方法 |
CN106294166A (zh) * | 2016-08-16 | 2017-01-04 | 腾讯科技(深圳)有限公司 | 一种游戏数据监控方法和装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10592390B2 (en) * | 2014-05-28 | 2020-03-17 | Nintendo Co., Ltd. | Detecting anomalous function execution in a program |
-
2019
- 2019-10-16 CN CN201910983663.2A patent/CN111176977B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104168288A (zh) * | 2014-08-27 | 2014-11-26 | 中国科学院软件研究所 | 一种基于协议逆向解析的自动化漏洞挖掘系统及方法 |
CN106294166A (zh) * | 2016-08-16 | 2017-01-04 | 腾讯科技(深圳)有限公司 | 一种游戏数据监控方法和装置 |
Non-Patent Citations (1)
Title |
---|
软件安全漏洞检测技术;李舟军 等;《计算机学报》;20150430;第717-732页 * |
Also Published As
Publication number | Publication date |
---|---|
CN111176977A (zh) | 2020-05-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111176977B (zh) | 一种安全漏洞自动识别方法和装置 | |
CN104516812A (zh) | 一种软件测试方法和装置 | |
CN107943683B (zh) | 一种测试脚本生成方法、装置、电子设备及存储介质 | |
CN107908952B (zh) | 识别真机和模拟器的方法、装置和终端 | |
CN107291586B (zh) | 一种应用程序的分析方法和装置 | |
CN107291317B (zh) | 一种虚拟场景中目标的选择方法和装置 | |
CN108932429A (zh) | 应用程序的分析方法、终端及存储介质 | |
CN106407114B (zh) | 内存泄漏分析方法和装置 | |
CN111078556B (zh) | 应用测试方法及装置 | |
CN111666222A (zh) | 一种测试方法和相关装置 | |
CN107908407B (zh) | 编译方法、装置及终端设备 | |
CN109451130B (zh) | 移动终端测试方法、装置、移动终端及存储介质 | |
CN112148579A (zh) | 一种用户界面的测试方法和装置 | |
CN109992965A (zh) | 进程处理方法和装置、电子设备、计算机可读存储介质 | |
US20140372930A1 (en) | Method and device for displaying a list view through a sliding operation | |
CN115904950A (zh) | 一种测试用例生成方法、装置、设备及存储介质 | |
CN104102560B (zh) | 系统性能测试的方法及装置 | |
CN106933633A (zh) | 权限管理方法、装置和移动终端 | |
CN108255631A (zh) | 移动终端重启定位方法、移动终端及计算机可读存储介质 | |
CN111367502A (zh) | 一种数值处理方法和装置 | |
CN112053216A (zh) | 一种金融产品的风险管理方法以及相关装置 | |
US20220283795A1 (en) | Package deployment method and apparatus, terminal device, and storage medium | |
CN115328770A (zh) | 应用程序的测试方法、装置、电子设备及存储介质 | |
CN114064447B (zh) | 界面测试方法、装置、存储介质及终端 | |
CN109286571A (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 |