CN107678833A - 基于操作系统信息的模拟器检测方法及装置 - Google Patents
基于操作系统信息的模拟器检测方法及装置 Download PDFInfo
- Publication number
- CN107678833A CN107678833A CN201710922747.6A CN201710922747A CN107678833A CN 107678833 A CN107678833 A CN 107678833A CN 201710922747 A CN201710922747 A CN 201710922747A CN 107678833 A CN107678833 A CN 107678833A
- Authority
- CN
- China
- Prior art keywords
- simulator
- checked
- information
- measurement equipment
- operating system
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45591—Monitoring or debugging support
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Testing Or Calibration Of Command Recording Devices (AREA)
Abstract
本申请实施例公开了一种基于操作系统信息的模拟器检测方法及装置,用以实现利用操作系统相关信息来鉴别模拟器。所述方法包括:基于待检测设备的操作系统运行所述待检测设备;获取所述操作系统的相关信息,所述相关信息包括所述待检测设备的操作系统信息和/或所述操作系统对特定指令的反馈信息;根据所述相关信息确定所述待检测设备是否为模拟器。该技术方案提供了依据操作系统相关信息对待检测设备是否为模拟器的检测机制,相较于传统的模拟器检测方法(例如仅依靠CPU信息中所包含的字段来检测设备)而言,不仅使模拟器的检测方法更加多样化,且提高了模拟器检测的准确度。
Description
技术领域
本发明涉及模拟器检测领域,尤其涉及一种基于操作系统信息的模拟器检测方法及装置。
背景技术
安卓模拟器是能在非安卓系统(如windows系统)中模拟安卓系统的模拟器软件。安卓模拟器能在非安卓系统中模拟安卓系统运行环境,从而使操作人员在非安卓系统中运行安卓操作系统的应用,在非安卓系统中体验安卓应用程序的安装、使用及卸载。
开发人员利用安卓模拟器能够方便安卓应用程序的开发,然而,由于通过安卓模拟器能够修改移动终端的各种配置参数,因此黑客可以通过安卓模拟器伪造多个移动终端用户,还能够在安卓模拟器中篡改应用程序的数据以达到“外挂”的目的。
基于此,需要提出一种方法来鉴别设备的真伪。
发明内容
本申请实施例的目的是提供一种基于操作系统信息的模拟器检测方法及装置,用以实现利用操作系统相关信息来鉴别模拟器。
为解决上述技术问题,本申请实施例是这样实现的:
一方面,本申请实施例提供一种基于操作系统信息的模拟器检测方法,包括:
基于待检测设备的操作系统运行所述待检测设备;
获取所述操作系统的相关信息,所述相关信息包括所述待检测设备的操作系统信息和/或所述操作系统对特定指令的反馈信息;
根据所述相关信息确定所述待检测设备是否为模拟器。
可选地,所述操作系统信息包括操作系统标识、操作系统名称、操作系统版本信息中的至少一项。
可选地,根据所述相关信息确定所述待检测设备是否为模拟器,包括:
判断所述操作系统信息是否包含用于表征所述模拟器的特定字符;
若是,则确定所述待检测设备为所述模拟器。
可选地,判断所述操作系统信息是否包含用于表征所述模拟器的特定字符,包括:
判断所述操作系统信息中是否包含预设的模拟器敏感信息,所述模拟器敏感信息包含模拟器名称、模拟器类型、模拟器型号中的至少一项;
若是,则确定所述操作系统信息包含所述特定字符。
可选地,所述特定指令包括针对所述待检测设备的设备序列号的获取指令;
根据所述相关信息确定所述待检测设备是否为模拟器,包括:
判断所述操作系统对所述获取指令的反馈信息中是否包含所述模拟器的身份标识信息;
若是,则确定所述待检测设备为所述模拟器。
可选地,根据所述相关信息确定所述待检测设备是否为模拟器,包括:
根据所述操作系统信息与设备序列号之间的绑定关系,获取所述待检测设备的设备序列号;
判断所述待检测设备的设备序列号是否符合真实设备的设备序列号的预定格式;
若否,则确定所述待检测设备为所述模拟器。
另一方面,本申请实施例提供一种基于操作系统信息的模拟器检测装置,包括:
运行模块,用于基于待检测设备的操作系统运行所述待检测设备;
获取模块,用于获取所述操作系统的相关信息,所述相关信息包括所述待检测设备的操作系统信息和/或所述操作系统对特定指令的反馈信息;
确定模块,用于根据所述相关信息确定所述待检测设备是否为模拟器。
可选地,所述操作系统信息包括操作系统标识、操作系统名称、操作系统版本信息中的至少一项。
可选地,所述确定模块包括:
第一判断单元,用于判断所述操作系统信息是否包含用于表征所述模拟器的特定字符;
第一确定单元,用于若所述操作系统信息包含所述特定字符,则确定所述待检测设备为所述模拟器。
可选地,所述特定指令包括针对所述待检测设备的设备序列号的获取指令;所述确定模块包括:
第二判断单元,用于判断所述操作系统对所述获取指令的反馈信息中是否包含所述模拟器的身份标识信息;
第二确定单元,用于若所述操作系统对所述获取指令的反馈信息中包含所述模拟器的身份标识信息,则确定所述待检测设备为所述模拟器。
采用本发明实施例的技术方案,在基于待检测设备的操作系统运行待检测设备之后,能够获取操作系统的相关信息,其中包括待检测设备的操作系统信息和/或操作系统对特定指令的反馈信息,并根据操作系统的相关信息确定待检测设备是否为模拟器。因此,该技术方案提供了依据操作系统相关信息对待检测设备是否为模拟器的检测机制,相较于传统的模拟器检测方法(例如仅依靠CPU信息中所包含的字段来检测设备)而言,不仅使模拟器的检测方法更加多样化,且提高了模拟器检测的准确度。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是根据本发明一实施例的一种基于操作系统信息的模拟器检测方法的示意性流程图;
图2是根据本发明另一实施例的一种基于操作系统信息的模拟器检测方法的示意性流程图;
图3是根据本发明再一实施例的一种基于操作系统信息的模拟器检测方法的示意性流程图;
图4是根据本发明再一实施例的一种基于操作系统信息的模拟器检测方法的示意性流程图;
图5是根据本发明再一实施例的一种基于操作系统信息的模拟器检测方法的示意性流程图;
图6是根据本发明一实施例的一种基于操作系统信息的模拟器检测装置的示意性框图。
具体实施方式
本申请实施例提供一种基于操作系统信息的模拟器检测方法及装置,用以实现利用操作系统相关信息来鉴别模拟器。
为了使本技术领域的人员更好地理解本申请中的技术方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
图1是根据本发明一实施例的一种基于操作系统信息的模拟器检测方法的示意性流程图,如图1所示,该方法包括:
步骤S101,基于待检测设备的操作系统运行待检测设备。
步骤S102,获取操作系统的相关信息,其中,操作系统的相关信息包括待检测设备的操作系统信息和/或操作系统对特定指令的反馈信息。
步骤S103,根据相关信息确定待检测设备是否为模拟器。
采用本发明实施例的技术方案,在基于待检测设备的操作系统运行待检测设备之后,能够获取操作系统的相关信息,其中包括待检测设备的操作系统信息和/或操作系统对特定指令的反馈信息,并根据操作系统的相关信息确定待检测设备是否为模拟器。因此,该技术方案提供了依据操作系统相关信息对待检测设备是否为模拟器的检测机制,相较于传统的模拟器检测方法(例如仅依靠CPU信息中所包含的字段来检测设备)而言,不仅使模拟器的检测方法更加多样化,且提高了模拟器检测的准确度。
在一个实施例中,操作系统信息包括操作系统标识、操作系统名称、操作系统版本信息中的至少一项。获取到待检测设备的操作系统信息之后,判断该操作系统信息是否包含用于表征模拟器的特定字符;若包含,则确定待检测设备为模拟器;若不包含,则确定待检测设备为真实设备。
本实施例中,用于表征模拟器的特定字符可包括预设的模拟器敏感信息、模拟器身份标识等信息,其中,模拟器敏感信息可包括模拟器名称、模拟器类型、模拟器型号等信息。因此,进一步地,可判断操作系统信息中是否包含预设的模拟器敏感信息和/或模拟器身份标识,若包含,则确定待检测设备为模拟器;若不包含,则确定待检测设备为真实设备。
在一个实施例中,特定指令包括针对待检测设备的设备序列号的获取指令,操作系统对特定指令的反馈信息可以是通过获取指令获取到的设备序列号,也可以是设备序列号的相关描述信息。基于此,可判断操作系统对获取指令的反馈信息中是否包含模拟器的身份标识信息,若包含,则确定待检测设备为模拟器;若不包含,则确定待检测设备为真实设备。
例如,特定指令为adb get-serialno指令。调用执行adb get-serialno指令进行搜索,待检测设备的操作系统会针对该指令输出反馈信息,该反馈信息可以是通过adbget-serialno指令获取到的设备序列号,也可以是通过adb get-serialno指令获取到的设备序列号的相关描述信息。若该反馈信息中包含模拟器的身份标识信息(如emulator),则确定待检测设备为模拟器;反之,若反馈信息中不包含模拟器的身份标识信息,则确定待检测设备为真实设备。
在一个实施例中,操作系统信息与设备序列号之间存在绑定关系。因此,获取到待检测设备的操作系统信息之后,还可利用操作系统信息与设备序列号之间的绑定关系获取待检测设备的设备序列号。进而,判断待检测设备的设备序列号是否符合真实设备的设备序列号的预定格式,若符合,则确定待检测设备为真实设备;若不符合,则确定待检测设备为模拟器。或者,判断待检测设备的设备序列号中是否包含模拟器的身份标识信息(如emulator),若包含,则确定待检测设备为模拟器;若不包含,则确定待检测设备为真实设备。
本实施例中,真实设备的设备序列号是由15位数字组成的“电子串号”,因此,若待检测设备的设备序列号为15位数字组成的“电子串号”,例如“862966024243759”,则可确定待检测设备为真实设备;若待检测设备的设备序列号不为15位数字组成的“电子串号”,例如“emulator-5554”,则确定待检测设备为模拟器。
上述实施例详述了根据操作系统相关信息检测待检测设备是否为模拟器。实际应用中,不仅可利用上述实施例中的方法单独检测待检测设备,还可利用操作系统相关信息与其他信息的结合来检测待检测设备,从而使得检测结果更加准确。例如,可与操作系统相关信息结合的其他信息如配置信息、针对底层指令的反馈信息、硬件信息等信息。以下通过几个具体实施例来说明操作系统相关信息和其他信息的结合。
在一个实施例中,结合操作系统相关信息与配置信息确定待检测设备是否为模拟器。其中,操作系统相关信息包括待检测设备的操作系统信息和/或操作系统对特定指令的反馈信息,配置信息包括无线网络连接配置信息、短信功能配置信息、内存卡存取配置信息等。
图2是根据本发明一实施例的基于操作系统信息的模拟器检测方法的示意性流程图,如图2,该方法包括:
步骤S201,获取待检测设备的操作系统信息以及配置信息。
其中,操作系统信息包括操作系统标识、操作系统名称、操作系统版本信息中的至少一项。
步骤S202,判断待检测设备的操作系统信息是否包含模拟器敏感信息。若否,则执行步骤S203;若是,则执行步骤S205。
其中,模拟器敏感信息可包括模拟器名称、模拟器类型、模拟器型号等信息。
步骤S203,进一步判断待检测设备的配置信息中是否包含无线网络连接配置信息、短信功能配置信息、内存卡存取配置信息中的至少一项;若是,则执行步骤S204;若否,则执行步骤S205。
该步骤中,对于待检测设备是否具有无线网络连接配置信息,可通过以下方法进行判断:在待检测设备中注册监听器,以检测待检测设备的wifi开关状态值是否存在,由于模拟器通常不具有wifi开关状态值,因此,若检测到待检测设备的wifi开关状态值存在,则确定待检测设备为真实设备;反之,若检测到待检测设备的wifi开关状态值不存在,则确定待检测设备为模拟器。
若将wifi开关状态值以wifi正在打开、wifi已经打开、wifi正在关闭、wifi已经关闭、wifi状态未知这五个状态值进行表示,那么,若检测到待检测设备的wifi开关状态值为wifi正在打开、wifi已经打开、wifi正在关闭或wifi已经关闭,则确定待检测设备为真实设备;若检测到待检测设备的wifi开关状态值为wifi状态未知,则确定待检测设备为模拟器。
此外,为防止待检测设备的wifi开关状态值被修改,因此在监听到待检测设备的wifi开关状态值存在时,还可进一步检测是否能够获取到wifi连接属性信息。其中,wifi连接属性信息可包括ssid(Service Set Identifier,服务集标识,即wifi名称)、bssid(Basic Service Set Identifier,即路由器的Mac地址)、rssi(Received SignalStrength Indicator,即wifi强度)、networkid(连接wifi的身份标识id)、建立wifi连接的当前设备的互联网协议地址Ip等。若能够获取到待检测设备的上述至少一项wifi连接属性信息,则确定待检测设备为真实设备;否则,确定待检测设备为模拟器。此外,还可判断待检测设备是否隐藏wifi名称,若是,则确定待检测设备为模拟器。
对于待检测设备是否具有短信功能配置信息,可通过以下方法进行判断:利用真实设备发送短信的方式(如安卓系统发送短信的方式)来检测待检测设备是否具有短信功能配置信息。具体的,在待检测设备上注册短信发送权限后,构建PendingIntent对象并使用getBroadcast()广播,然后将PendingIntent、短信、电话号码等内容传入SmsManager的sendTextMessage()方法中。若上传过程中出现异常情况,如因为待检测设备中的某个组件不存在而导致异常,则认为待检测设备没有短信功能配置信息,此时可确定待检测设备为模拟器;反之,若上传成功,则认为待检测设备具有短信功能配置信息,此时可确定待检测设备为真实设备。
对于待检测设备是否具有内存卡存取配置信息,可通过以下方法进行判断:检测待检测设备是否具有内存卡内存信息、内存卡存储目录信息、内存卡目录权限信息、以及内存卡插拔状态值中的至少一项;若是,则确定待检测设备具有内存卡配置信息,反之,确定待检测设备不具有内存卡配置信息。
具体的,从/proc/meminfo文件中获取待检测设备的总内存信息,根据总内存信息获取内存卡存储目录、目录权限以及内存卡内存大小等信息,若能获取到这些信息,则确定待检测设备为真实设备;否则,确定待检测设备为模拟器。此外,还可在待检测设备内注册监听器,以检测内存卡的插拔状态。由于模拟器一般不具备内存卡插拔状态值配置,因此,若能够检测到内存卡的插拔状态值,则确定待检测设备为真实设备;否则,确定待检测设备为模拟器。
步骤S204,确定待检测设备为真实设备。
步骤S205,确定待检测设备为模拟器。
在一个实施例中,结合操作系统相关信息与针对底层指令的反馈信息确定待检测设备是否为模拟器。其中,操作系统相关信息包括待检测设备的操作系统信息和/或操作系统对特定指令的反馈信息,底层指令包括闪存分区状态信息的获取指令。
图3根据本发明一实施例的基于操作系统信息的模拟器检测方法的示意性流程图,如图3该方法包括:
步骤S301,获取待检测设备的操作系统信息。
步骤S302,判断待检测设备的操作系统信息是否包含模拟器敏感信息。若否,则执行步骤S303;若是,则执行步骤S306。
其中,模拟器敏感信息可包括模拟器名称、模拟器类型、模拟器型号等信息。
步骤S303,获取待检测设备的闪存分区信息。
该步骤中,可通过路径“open/proc/diskstats”获取待检测设备的闪存分区信息。
步骤S304,进一步判断待检测设备的闪存分区信息是否包含仅存在于真实设备中的特定分区。若是,则执行步骤S305;若否,则执行步骤S306。
该步骤中,仅存在于真实设备中的特定分区包括mmcblk0分区,那么,若通过路径“open/proc/diskstats”获取到的闪存分区信息中包括mmcblk0分区,则执行步骤S305。
步骤S305,确定待检测设备为真实设备。
步骤S306,确定待检测设备为模拟器。
在一个实施例中,结合操作系统相关信息与硬件信息确定待检测设备是否为模拟器。其中,操作系统相关信息包括待检测设备的操作系统信息和/或操作系统对特定指令的反馈信息,硬件信息包括是否具有安全数码卡卡槽、用户身份识别卡卡槽、无线保真硬件设备、传感器中的至少一项。
图4根据本发明一实施例的基于操作系统信息的模拟器检测方法的示意性流程图,如图4该方法包括:
步骤S401,获取待检测设备的操作系统对特定指令的反馈信息以及硬件信息。
步骤S402,判断操作系统对特定指令的反馈信息是否包含模拟器的身份标识信息。若否,则执行步骤S403;若是,则执行步骤S406。
其中,模拟器敏感信息可包括模拟器名称、模拟器类型、模拟器型号等信息。特定指令包括针对待检测设备的设备序列号的获取指令,操作系统对特定指令的反馈信息可以是通过获取指令获取到的设备序列号,也可以是设备序列号的相关描述信息。例如,特定指令为adb get-serialno指令。调用执行adb get-serialno指令进行搜索,待检测设备的操作系统会针对该指令输出反馈信息,该反馈信息可以是通过adb get-serialno指令获取到的设备序列号,也可以是通过adb get-serialno指令获取到的设备序列号的相关描述信息。
步骤S403,根据硬件信息判断待检测设备是否具有安全数码卡卡槽、用户身份识别卡卡槽、无线保真硬件设备中的至少一项;若是,则执行步骤S404;若否,则执行步骤S406。
步骤S404,根据硬件信息判断待检测设备是否安装有预设传感器安装列表中的传感器;若是,则执行步骤S405;若否,则执行步骤S406。
其中,预设传感器安装列表中包括安装于真实设备中的至少一种传感器。此外,预设传感器安装列表中还可包括真实设备中安装的每种传感器的数量。
步骤S405,将待检测设备的传感器与预设传感器安装列表中的传感器进行比对,并根据比对结果确定待检测设备是否为模拟器。
该步骤中,可判断待检测设备中安装的传感器数量是否少于预设传感器安装列表中的传感器数量,若是,则确定待检测设备为模拟器,即步骤S406;否则,确定待检测设备为真实设备。或者,还可判断待检测设备是否缺失预设传感器安装列表中的至少一种传感器,若是,则确定待检测设备为模拟器,即步骤S406;否则,确定待检测设备为真实设备。
步骤S406,确定待检测设备为模拟器。
上述几个实施例列举了结合待检测设备的操作系统相关信息与其他信息(如配置信息、针对底层指令的反馈信息、硬件信息等)来确定待检测设备是否为模拟器,除此之外,还可将待检测设备的操作系统相关信息与其他多种信息进行结合。
图5是根据本发明一实施例的基于操作系统信息的模拟器检测方法的示意性流程图,如图5,该方法包括:
步骤S501,获取待检测设备的操作系统信息。
步骤S502,判断待检测设备的操作系统信息是否包含模拟器敏感信息。若否,则执行步骤S503;若是,则执行步骤S507。
步骤S503,判断待检测设备是否具有模拟器特有的进程通信通道。若否,则执行步骤S504;若是,则执行步骤S507。
其中,模拟器特有的进程通信通道包括“/dev/socket/qemud”和“/dev/qemu_pipe”。通过打开函数打开“/dev/socket/qemud”和“/dev/qemu_pipe”,若两个返回值均为空,说明待检测设备不具有模拟器特有的进程通信通道;否则,说明待检测设备具有模拟器特有的进程通信通道。
步骤S504,判断待检测设备是否具有模拟器特有的电话号码。若否,则执行步骤S505;若是,则执行步骤S507。
其中,模拟器特有的电话号码包括如下:
{"15555215554","15555215556","15555215582","15555215584"
"15555215558","15555215560","15555215562","15555215564",
"15555215566","15555215568","15555215570","15555215572",
"15555215574","15555215576","15555215578","15555215580"}。
步骤S505,判断待检测设备是否具有模拟器文件。若否,则执行步骤S506;若是,则执行步骤S507。
其中,模拟器文件包括:
{"/system/lib/libc_malloc_debug_qemu.so";
"/sys/qemu_trace";
"/system/bin/qemu-props";}。
步骤S506,确定待检测设备为真实设备。
步骤S507,确定待检测设备为模拟器。
综上,已经对本主题的特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作可以按照不同的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序,以实现期望的结果。在某些实施方式中,多任务处理和并行处理可以是有利的。
上述一个或多个实施例中详述了基于待检测设备的操作系统信息来鉴别待检测设备是否为模拟器的方法,以及详述了将待检测设备的操作系统信息结合一种或多种其他信息共同鉴别待检测设备是否为模拟器的方法,因此,不仅使模拟器的检测方法更加多样化,且提高了模拟器检测的准确度。
以上为本申请实施例提供的基于操作系统信息的模拟器检测方法,基于同样的思路,本申请实施例还提供一种基于操作系统信息的模拟器检测装置。
图6是根据本发明一实施例的基于操作系统信息的模拟器检测装置的示意性流程图,如图6所示,该装置包括:
运行模块610,用于基于待检测设备的操作系统运行待检测设备;
获取模块620,用于获取操作系统的相关信息,相关信息包括待检测设备的操作系统信息和/或操作系统对特定指令的反馈信息;
确定模块630,用于根据相关信息确定待检测设备是否为模拟器。
可选地,操作系统信息包括操作系统标识、操作系统名称、操作系统版本信息中的至少一项。
可选地,确定模块630包括:
第一判断单元,用于判断操作系统信息是否包含用于表征模拟器的特定字符;
第一确定单元,用于若操作系统信息包含特定字符,则确定待检测设备为模拟器。
可选地,特定指令包括针对待检测设备的设备序列号的获取指令;确定模块630包括:
第二判断单元,用于判断操作系统对获取指令的反馈信息中是否包含模拟器的身份标识信息;
第二确定单元,用于若操作系统对获取指令的反馈信息中包含模拟器的身份标识信息,则确定待检测设备为模拟器。
采用本发明实施例的装置,在基于待检测设备的操作系统运行待检测设备之后,能够获取操作系统的相关信息,其中包括待检测设备的操作系统信息和/或操作系统对特定指令的反馈信息,并根据操作系统的相关信息确定待检测设备是否为模拟器。因此,该技术方案提供了依据操作系统相关信息对待检测设备是否为模拟器的检测机制,相较于传统的模拟器检测方法(例如仅依靠CPU信息中所包含的字段来检测设备)而言,不仅使模拟器的检测方法更加多样化,且提高了模拟器检测的准确度。
本领域的技术人员应可理解,图6中的基于操作系统信息的模拟器检测装置能够用来实现前文所述的基于操作系统信息的模拟器检测方法,其中的细节描述应与前文方法部分描述类似,为避免繁琐,此处不另赘述。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本申请时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。
Claims (10)
1.一种基于操作系统信息的模拟器检测方法,其特征在于,包括:
基于待检测设备的操作系统运行所述待检测设备;
获取所述操作系统的相关信息,所述相关信息包括所述待检测设备的操作系统信息和/或所述操作系统对特定指令的反馈信息;
根据所述相关信息确定所述待检测设备是否为模拟器。
2.根据权利要求1所述的方法,其特征在于,所述操作系统信息包括操作系统标识、操作系统名称、操作系统版本信息中的至少一项。
3.根据权利要求2所述的方法,其特征在于,根据所述相关信息确定所述待检测设备是否为模拟器,包括:
判断所述操作系统信息是否包含用于表征所述模拟器的特定字符;
若是,则确定所述待检测设备为所述模拟器。
4.根据权利要求3所述的方法,其特征在于,判断所述操作系统信息是否包含用于表征所述模拟器的特定字符,包括:
判断所述操作系统信息中是否包含预设的模拟器敏感信息,所述模拟器敏感信息包含模拟器名称、模拟器类型、模拟器型号中的至少一项;
若是,则确定所述操作系统信息包含所述特定字符。
5.根据权利要求1所述的方法,其特征在于,所述特定指令包括针对所述待检测设备的设备序列号的获取指令;
根据所述相关信息确定所述待检测设备是否为模拟器,包括:
判断所述操作系统对所述获取指令的反馈信息中是否包含所述模拟器的身份标识信息;
若是,则确定所述待检测设备为所述模拟器。
6.根据权利要求1所述的方法,其特征在于,根据所述相关信息确定所述待检测设备是否为模拟器,包括:
根据所述操作系统信息与设备序列号之间的绑定关系,获取所述待检测设备的设备序列号;
判断所述待检测设备的设备序列号是否符合真实设备的设备序列号的预定格式;
若否,则确定所述待检测设备为所述模拟器。
7.一种基于操作系统信息的模拟器检测装置,其特征在于,包括:
运行模块,用于基于待检测设备的操作系统运行所述待检测设备;
获取模块,用于获取所述操作系统的相关信息,所述相关信息包括所述待检测设备的操作系统信息和/或所述操作系统对特定指令的反馈信息;
确定模块,用于根据所述相关信息确定所述待检测设备是否为模拟器。
8.根据权利要求7所述的装置,其特征在于,所述操作系统信息包括操作系统标识、操作系统名称、操作系统版本信息中的至少一项。
9.根据权利要求8所述的装置,其特征在于,所述确定模块包括:
第一判断单元,用于判断所述操作系统信息是否包含用于表征所述模拟器的特定字符;
第一确定单元,用于若所述操作系统信息包含所述特定字符,则确定所述待检测设备为所述模拟器。
10.根据权利要求7所述的装置,其特征在于,所述特定指令包括针对所述待检测设备的设备序列号的获取指令;所述确定模块包括:
第二判断单元,用于判断所述操作系统对所述获取指令的反馈信息中是否包含所述模拟器的身份标识信息;
第二确定单元,用于若所述操作系统对所述获取指令的反馈信息中包含所述模拟器的身份标识信息,则确定所述待检测设备为所述模拟器。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710922747.6A CN107678833A (zh) | 2017-09-30 | 2017-09-30 | 基于操作系统信息的模拟器检测方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710922747.6A CN107678833A (zh) | 2017-09-30 | 2017-09-30 | 基于操作系统信息的模拟器检测方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107678833A true CN107678833A (zh) | 2018-02-09 |
Family
ID=61139809
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710922747.6A Pending CN107678833A (zh) | 2017-09-30 | 2017-09-30 | 基于操作系统信息的模拟器检测方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107678833A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108712253A (zh) * | 2018-06-06 | 2018-10-26 | 北京美好人生伙伴信息技术有限公司 | 一种基于手机传感器指纹的伪造移动端识别方法及装置 |
CN111097175A (zh) * | 2019-11-21 | 2020-05-05 | 腾讯科技(深圳)有限公司 | 一种模拟器的确定方法、装置及存储介质 |
CN111338946A (zh) * | 2020-02-24 | 2020-06-26 | 北京新氧科技有限公司 | 安卓模拟器检测方法及装置 |
CN111367752A (zh) * | 2018-12-26 | 2020-07-03 | 卓望数码技术(深圳)有限公司 | 识别Android真机和模拟器的方法、装置及存储介质 |
CN112733141A (zh) * | 2020-12-30 | 2021-04-30 | 五八有限公司 | 一种信息处理方法及装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104079571A (zh) * | 2014-06-27 | 2014-10-01 | 广州华多网络科技有限公司 | 一种识别Android模拟器的方法及装置 |
CN106201872A (zh) * | 2016-07-05 | 2016-12-07 | 北京鼎源科技有限公司 | 一种Android系统的运行环境检测方法 |
CN106648835A (zh) * | 2016-12-26 | 2017-05-10 | 武汉斗鱼网络科技有限公司 | 检测Android应用程序在安卓模拟器中运行的方法及系统 |
CN106815058A (zh) * | 2016-12-08 | 2017-06-09 | 同盾科技有限公司 | 一种模拟器的识别方法和系统 |
CN107102885A (zh) * | 2017-04-14 | 2017-08-29 | 北京洋浦伟业科技发展有限公司 | 利用adb方式检测安卓模拟器的方法及装置 |
-
2017
- 2017-09-30 CN CN201710922747.6A patent/CN107678833A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104079571A (zh) * | 2014-06-27 | 2014-10-01 | 广州华多网络科技有限公司 | 一种识别Android模拟器的方法及装置 |
CN106201872A (zh) * | 2016-07-05 | 2016-12-07 | 北京鼎源科技有限公司 | 一种Android系统的运行环境检测方法 |
CN106815058A (zh) * | 2016-12-08 | 2017-06-09 | 同盾科技有限公司 | 一种模拟器的识别方法和系统 |
CN106648835A (zh) * | 2016-12-26 | 2017-05-10 | 武汉斗鱼网络科技有限公司 | 检测Android应用程序在安卓模拟器中运行的方法及系统 |
CN107102885A (zh) * | 2017-04-14 | 2017-08-29 | 北京洋浦伟业科技发展有限公司 | 利用adb方式检测安卓模拟器的方法及装置 |
Non-Patent Citations (3)
Title |
---|
LQH: "Android区别真机和模拟器的几种方法", 《HTTPS://WWW.JB51.NET/ARTICLE/88548.HTM》 * |
作者不详: "基于文件特征的Android模拟器检测", 《HTTPS://WWW.ANQUANKE.COM/POST/ID/85173》 * |
大杯具: "android识别模拟器与真机的一些方法", 《HTTPS://BLOG.CSDN.NET/ABCD1115313634/ARTICLE/DETAILS/48784251/》 * |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108712253A (zh) * | 2018-06-06 | 2018-10-26 | 北京美好人生伙伴信息技术有限公司 | 一种基于手机传感器指纹的伪造移动端识别方法及装置 |
CN108712253B (zh) * | 2018-06-06 | 2020-10-13 | 北京人人云图信息技术有限公司 | 一种基于手机传感器指纹的伪造移动端识别方法及装置 |
CN111367752A (zh) * | 2018-12-26 | 2020-07-03 | 卓望数码技术(深圳)有限公司 | 识别Android真机和模拟器的方法、装置及存储介质 |
CN111367752B (zh) * | 2018-12-26 | 2023-08-01 | 卓望数码技术(深圳)有限公司 | 识别Android真机和模拟器的方法、装置及存储介质 |
CN111097175A (zh) * | 2019-11-21 | 2020-05-05 | 腾讯科技(深圳)有限公司 | 一种模拟器的确定方法、装置及存储介质 |
CN111097175B (zh) * | 2019-11-21 | 2021-09-14 | 腾讯科技(深圳)有限公司 | 一种模拟器的确定方法、装置及存储介质 |
CN111338946A (zh) * | 2020-02-24 | 2020-06-26 | 北京新氧科技有限公司 | 安卓模拟器检测方法及装置 |
CN111338946B (zh) * | 2020-02-24 | 2023-07-14 | 北京新氧科技有限公司 | 安卓模拟器检测方法及装置 |
CN112733141A (zh) * | 2020-12-30 | 2021-04-30 | 五八有限公司 | 一种信息处理方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107678833A (zh) | 基于操作系统信息的模拟器检测方法及装置 | |
CN107729121A (zh) | 模拟器检测方法及装置 | |
CN111064745B (zh) | 一种基于异常行为探测的自适应反爬方法和系统 | |
CN109062809A (zh) | 一种线上测试用例生成方法、装置及电子设备 | |
CN104376266B (zh) | 应用软件安全级别的确定方法及装置 | |
CN107729750A (zh) | 结合配置信息和硬件特性的安卓模拟器检测方法及装置 | |
CN107197462B (zh) | 无线网络类型的检测方法、装置及电子设备 | |
US20160350525A1 (en) | Application Program Management Method, Device, Terminal, and Computer Storage Medium | |
CN110516173B (zh) | 一种非法网站识别方法、装置、设备及介质 | |
CN104978213B (zh) | 实现应用安装包的链接获取方法和装置 | |
CN110287696A (zh) | 一种反弹shell进程的检测方法、装置和设备 | |
CN107798064A (zh) | 页面处理方法、电子设备及计算机可读存储介质 | |
CN111353143A (zh) | 敏感权限检测方法、装置及存储介质 | |
CN106528255A (zh) | 类加载方法及装置 | |
CN107678834A (zh) | 一种基于硬件配置的安卓模拟器检测方法及装置 | |
CN104021074B (zh) | PhoneGap框架的应用程序的漏洞检测方法及装置 | |
CN110119354A (zh) | 基于测试用例生成的软件测试方法、装置及电子设备 | |
CN117241276B (zh) | 一种面向移动应用的检测工具及检测方法、系统及设备 | |
CN110580171A (zh) | App分类方法、相关装置及产品 | |
WO2019127151A1 (zh) | 一种检测方法、检测设备及服务器 | |
CN104573486A (zh) | 漏洞检测方法和装置 | |
CN109688099A (zh) | 服务器端撞库识别方法、装置、设备及可读存储介质 | |
CN107846351A (zh) | 一种聊天消息敏感信息加密方法及装置 | |
CN116881896A (zh) | 设备指纹库的生成方法和装置 | |
CN106095781A (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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20180209 |