CN106713215B - 一种信息处理方法、终端及服务器 - Google Patents
一种信息处理方法、终端及服务器 Download PDFInfo
- Publication number
- CN106713215B CN106713215B CN201510413776.0A CN201510413776A CN106713215B CN 106713215 B CN106713215 B CN 106713215B CN 201510413776 A CN201510413776 A CN 201510413776A CN 106713215 B CN106713215 B CN 106713215B
- Authority
- CN
- China
- Prior art keywords
- applications
- terminal
- running
- application
- 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
Landscapes
- Debugging And Monitoring (AREA)
Abstract
本发明公开了一种信息处理方法、终端及服务器,其中,所述方法包括:按照第一预设规则运行所述多个应用;检测到所述多个应用处于运行状态时,加载基于第一安全框架生成的监控插件;控制所述监控插件对所述多个应用在所述运行状态中的行为信息进行扫描,得到动态扫描结果;按照第二预设规则从所述动态扫描结果中分析得到应用的软件安全漏洞信息,上报所述应用的软件安全漏洞信息给服务器。
Description
技术领域
本发明涉及通讯技术,尤其涉及一种信息处理方法、终端及服务器。
背景技术
本申请在实现本申请实施例技术方案的过程中,至少发现相关技术中存在如下技术问题:
随着智能终端的普及,在智能终端上安装大量应用(APP)以便通过这些 APP所提供的功能为用户提供相应的服务,已经成为一种工作和生活中的常态。 APP需要更新,一方面是为了对已有功能进行完善或者新增功能,另一方面是为了打补丁以便对APP中的软件漏洞进行修复,如果不能对软件漏洞进行修复,很容易被远程控制工具、木马工具、病毒工具等侵袭,以手机为例,随着用户通过智能手机对O2O模式的各种服务进行在线支付的广泛使用,如果存在未必修复的软件漏洞,则很容易被远程控制工具、木马工具、病毒工具等侵袭,从而造成用户的财产损失,也就是说,如果不能及时扫描出APP中的软件漏洞并进行修复,会存在很大的安全隐患。
然而,现有技术中对APP中的软件漏洞进行扫描多采用静态方式,而APP 的运行是个动态过程,所以,采用该静态方式导致很多软件漏洞不能被及时扫描获知,即便有动态方式,也还停留在由后台的专门安全管理员人工核对和模拟运行APP以达到动态方式的扫描目的,由于模拟运行APP与真实环境中APP 仍然是存在差异的,所以,扫描结果并不精确,而且由于全人工操作会耗费大量人工和时间成本。
发明内容
有鉴于此,本发明实施例希望提供一种信息处理方法、终端及服务器,至少解决了现有技术存在的问题,通过自动化的动态扫描,不仅使得扫描结果更加精确以降低误报率,而且提高了扫描效率,从而节约了大量人工和时间成本。
本发明实施例的技术方案是这样实现的:
本发明实施例的一种信息处理方法,所述方法应用于终端中,所述终端安装有多个应用,所述方法包括:
按照第一预设规则运行所述多个应用;
检测到所述多个应用处于运行状态时,加载基于第一安全框架生成的监控插件;
控制所述监控插件对所述多个应用在所述运行状态中的行为信息进行扫描,得到动态扫描结果;
按照第二预设规则从所述动态扫描结果中分析得到应用的软件安全漏洞信息,上报所述应用的软件安全漏洞信息给服务器。
上述方案中,所述按照第一预设规则运行所述多个应用,包括:
启用自动化测试模式,将预定义的测试用例运行于所述多个应用上,得到测试结果;
将所述测试结果作为所述运行状态中的行为信息。
上述方案中,所述按照第一预设规则运行所述多个应用,包括以下任意一种方式:
方式一:
通过定时器的方式来设置终端开机后的应用定时启动功能;
在所述定时器时间到达后开启运行所述多个应用,收集所述多个应用的运行参数作为所述运行状态中的行为信息;
方式二:
通过对应用进行开机自启动的预先配置来设置终端开机后的应用启动功能;
在终端开机后按照所述预先配置开启运行所述多个应用,收集所述多个应用的运行参数作为所述运行状态中的行为信息;
方式三:
检测终端的系统资源低于第一阈值或者终端的运行状态为空闲状态时,对所述终端中安装的所述多个应用进行扫描,扫描得到所述多个应用后生成第一指令;所述第一指令为用于表征应用开启的指令;
通过所述第一指令开启运行所述多个应用,收集所述多个应用的运行参数作为所述运行状态中的行为信息。
上述方案中,所述运行状态中的行为信息包括:任意一个应用自身运行时被监控得到的行为信息、所述多个应用在运行过程中存在彼此交互时被监控得到的行为信息。
上述方案中,所述按照第二预设规则从所述动态扫描结果中分析得到应用的软件安全漏洞信息,包括:
提取所述第二预设规则,所述第二预设规则为用于匹配过程中确定是否符合预定义配置的漏洞规则;
将所述动态扫描结果与所述预定义配置的漏洞规则进行匹配,匹配成功时,则将所述动态扫描结果中匹配成功的匹配结果作为所述应用的软件安全漏洞信息。
本发明实施例的一种终端,所述终端安装有多个应用,所述终端包括:
运行单元,用于按照第一预设规则运行所述多个应用;
加载单元,用于检测到所述多个应用处于运行状态时,加载基于第一安全框架生成的监控插件;
扫描控制单元,用于控制所述监控插件对所述多个应用在所述运行状态中的行为信息进行扫描,得到动态扫描结果;
匹配分析单元,用于按照第二预设规则从所述动态扫描结果中分析得到应用的软件安全漏洞信息,上报所述应用的软件安全漏洞信息给服务器。
上述方案中,所述运行单元,进一步用于
启用自动化测试模式,将预定义的测试用例运行于所述多个应用上,得到测试结果;将所述测试结果作为所述运行状态中的行为信息。
上述方案中,所述运行单元,进一步用于采用包括以下任意一种方式来运行所述多个应用:
方式一:
通过定时器的方式来设置终端开机后的应用定时启动功能;
在所述定时器时间到达后开启运行所述多个应用,收集所述多个应用的运行参数作为所述运行状态中的行为信息;
方式二:
通过对应用进行开机自启动的预先配置来设置终端开机后的应用启动功能;
在终端开机后按照所述预先配置开启运行所述多个应用,收集所述多个应用的运行参数作为所述运行状态中的行为信息;
方式三:
检测终端的系统资源低于第一阈值或者终端的运行状态为空闲状态时,对所述终端中安装的所述多个应用进行扫描,扫描得到所述多个应用后生成第一指令;所述第一指令为用于表征应用开启的指令;
通过所述第一指令开启运行所述多个应用,收集所述多个应用的运行参数作为所述运行状态中的行为信息。
上述方案中,所述运行状态中的行为信息包括:任意一个应用自身运行时被监控得到的行为信息、所述多个应用在运行过程中存在彼此交互时被监控得到的行为信息。
上述方案中,所述匹配分析单元,进一步包括:
规则提取子单元,用于提取所述第二预设规则,所述第二预设规则为用于匹配过程中确定是否符合预定义配置的漏洞规则;
匹配子单元,用于将所述动态扫描结果与所述预定义配置的漏洞规则进行匹配,匹配成功时,则将所述动态扫描结果中匹配成功的匹配结果作为所述应用的软件安全漏洞信息。
本发明实施例的一种信息处理方法,所述方法应用于服务器中,所述方法包括:
接收终端上报的应用的软件安全漏洞信息;
所述应用的软件安全漏洞信息为终端按照第一预设规则运行多个应用,通过加载基于第一安全框架生成的监控插件对所述多个应用在所述运行状态中的行为信息进行扫描,从得到的动态扫描结果中分析得到的信息;
将所述应用的软件安全漏洞信息显示给用户进行查看。
本发明实施例的一种服务器,所述服务器包括:
接收单元,用于接收终端上报的应用的软件安全漏洞信息;所述应用的软件安全漏洞信息为终端按照第一预设规则运行多个应用,通过加载基于第一安全框架生成的监控插件对所述多个应用在所述运行状态中的行为信息进行扫描,从得到的动态扫描结果中分析得到的信息;
监控显示单元,用于将所述应用的软件安全漏洞信息显示给用户进行查看。
本发明实施例的信息处理方法包括:按照第一预设规则运行所述多个应用;检测到所述多个应用处于运行状态时,加载基于第一安全框架生成的监控插件;控制所述监控插件对所述多个应用在所述运行状态中的行为信息进行扫描,得到动态扫描结果;按照第二预设规则从所述动态扫描结果中分析得到应用的软件安全漏洞信息,上报所述应用的软件安全漏洞信息给服务器。
采用本发明实施例,通过自动化的动态扫描机制,首先检测到所述多个应用处于运行状态时,加载基于第一安全框架生成的监控插件,之后控制所述监控插件对所述多个应用在所述运行状态中的行为信息进行扫描,按照第二预设规则从扫描得到的动态扫描结果中分析得到应用的软件安全漏洞信息并上报给服务器进行监控管理使用,不仅使得扫描结果更加精确以降低误报率,而且提高了扫描效率,从而节约了大量人工和时间成本。
附图说明
图1为本发明方法实施例一的一个实现流程示意图;
图2为本发明方法实施例二的一个实现流程示意图;
图3为本发明方法实施例三的一个实现流程示意图;
图4为本发明终端实施例一的一个组成结构示意图;
图5为本发明方法实施例四的一个实现流程示意图;
图6为本发明服务器实施例的一个组成结构示意图;
图7为本发明终端或服务器一个具体硬件结构的示意图;
图8为应用本发明实施例一应用场景的系统实例的组成结构示意图;
图9为应用本发明实施例一应用场景的方法实例的实现流程示意图。
具体实施方式
下面结合附图对技术方案的实施作进一步的详细描述。
方法实施例一:
本发明实施例的一种信息处理方法,所述方法应用于终端中,所述终端安装有多个应用,如图1所示,所述方法包括:
步骤101、按照第一预设规则运行所述多个应用;
步骤102、检测到所述多个应用处于运行状态时,加载基于第一安全框架生成的监控插件;
步骤103、控制所述监控插件对所述多个应用在所述运行状态中的行为信息进行扫描,得到动态扫描结果;
步骤104、按照第二预设规则从所述动态扫描结果中分析得到应用的软件安全漏洞信息,上报所述应用的软件安全漏洞信息给服务器。
采用本发明实施例,通过步骤101-104的这种自动化的动态扫描机制,首先检测到所述多个应用处于运行状态时,加载基于第一安全框架生成的监控插件,之后控制所述监控插件对所述多个应用在所述运行状态中的行为信息进行扫描,按照第二预设规则从扫描得到的动态扫描结果中分析得到应用的软件安全漏洞信息并上报给服务器进行监控管理使用,不仅使得扫描结果更加精确以降低误报率,而且提高了扫描效率,从而节约了大量人工和时间成本。
比如,按照第一预设规则运行所述多个应用可以是通过用户自己开启应用来触发多个应用的运行,也可以是管理员开启应用来触发多个应用的运行,还可以是利用自动化测试工具来触发多个应用的运行。
加载的基于第一安全框架生成的监控插件为动态检测工具,比如用于APP 应用安全漏洞扫描的扫描器,它可以基于诸如Xposed框架这种第一安全框架进行开发,使用Xposed框架的好处是:首先Xposed框架是一个开源平台,其次,可以支持用于APP应用安全漏洞扫描的钩子(Hook)技术,而且,Xposed框架自身就是一个支持开发各种插件的框架平台。
方法实施例二:
本发明实施例的一种信息处理方法,所述方法应用于终端中,所述终端安装有多个应用,如图2所示,所述方法包括:
步骤201、启用自动化测试模式,将预定义的测试用例运行于所述多个应用上,得到测试结果;
步骤202、将所述测试结果作为所述运行状态中的行为信息;
步骤203、检测到所述多个应用处于运行状态时,加载基于第一安全框架生成的监控插件;
步骤204、控制所述监控插件对所述多个应用在所述运行状态中的行为信息进行扫描,得到动态扫描结果;
步骤205、按照第二预设规则从所述动态扫描结果中分析得到应用的软件安全漏洞信息,上报所述应用的软件安全漏洞信息给服务器。
采用本发明实施例,通过步骤201-205的这种自动化的动态扫描机制,首先启用自动化测试模式,比如通过自动化测试工具将预定义的测试用例运行于所述多个应用上,得到测试结果,将所述测试结果作为所述运行状态中的行为信息,之后检测到所述多个应用处于运行状态时,加载基于第一安全框架生成的监控插件,再控制所述监控插件对所述多个应用在所述运行状态中的行为信息进行扫描,按照第二预设规则从扫描得到的动态扫描结果中分析得到应用的软件安全漏洞信息并上报给服务器进行监控管理使用,不仅使得扫描结果更加精确以降低误报率,而且提高了扫描效率,从而节约了大量人工和时间成本。
这里,按照第一预设规则运行所述多个应用是利用自动化测试工具来触发多个应用的运行,这是最优的实施方式。
加载的基于第一安全框架生成的监控插件为动态检测工具,比如用于APP 应用安全漏洞扫描的扫描器,它可以基于诸如Xposed框架这种第一安全框架进行开发,使用Xposed框架的好处是:首先Xposed框架是一个开源平台,其次,可以支持用于APP应用安全漏洞扫描的Hook技术,而且,Xposed框架自身就是一个支持开发各种插件的框架平台。
在本发明实施例一实施方式中,所述按照第一预设规则运行所述多个应用,包括以下任意一种方式:
方式一:
通过定时器的方式来设置终端开机后的应用定时启动功能;
在所述定时器时间到达后开启运行所述多个应用,收集所述多个应用的运行参数作为所述运行状态中的行为信息;
方式二:
通过对应用进行开机自启动的预先配置来设置终端开机后的应用启动功能;
在终端开机后按照所述预先配置开启运行所述多个应用,收集所述多个应用的运行参数作为所述运行状态中的行为信息;
方式三:
检测终端的系统资源低于第一阈值或者终端的运行状态为空闲状态时,对所述终端中安装的所述多个应用进行扫描,扫描得到所述多个应用后生成第一指令;所述第一指令为用于表征应用开启的指令;
通过所述第一指令开启运行所述多个应用,收集所述多个应用的运行参数作为所述运行状态中的行为信息。
在本发明实施例一实施方式中,所述运行状态中的行为信息包括:任意一个应用自身运行时被监控得到的行为信息、所述多个应用在运行过程中存在彼此交互时被监控得到的行为信息。
方法实施例三:
本发明实施例的一种信息处理方法,所述方法应用于终端中,所述终端安装有多个应用,如图3所示,所述方法包括:
步骤301、启用自动化测试模式,将预定义的测试用例运行于所述多个应用上,得到测试结果;
步骤302、将所述测试结果作为所述运行状态中的行为信息;
步骤303、检测到所述多个应用处于运行状态时,加载基于第一安全框架生成的监控插件;
步骤304、控制所述监控插件对所述多个应用在所述运行状态中的行为信息进行扫描,得到动态扫描结果;
步骤305、提取所述第二预设规则,所述第二预设规则为用于匹配过程中确定是否符合预定义配置的漏洞规则;
步骤306、将所述动态扫描结果与所述预定义配置的漏洞规则进行匹配,匹配成功时,则将所述动态扫描结果中匹配成功的匹配结果作为所述应用的软件安全漏洞信息。
在本发明实施例一实施方式中,还可以包括:通过对上述预定义配置的漏洞规则和应用等进行更新配置,以提高软件漏洞的监控等级。
这里需要指出的是:以下涉及终端和服务器项的描述,与上述方法描述是类似的,同方法的有益效果描述,不做赘述。对于本发明终端和服务器实施例中未披露的技术细节,请参照本发明方法实施例的描述。
终端实施例一:
本发明实施例的一种终端,所述终端安装有多个应用,如图4所示,所述终端包括:
运行单元11,用于按照第一预设规则运行所述多个应用;
加载单元12,用于检测到所述多个应用处于运行状态时,加载基于第一安全框架生成的监控插件;
扫描控制单元13,用于控制所述监控插件对所述多个应用在所述运行状态中的行为信息进行扫描,得到动态扫描结果;
匹配分析单元14,用于按照第二预设规则从所述动态扫描结果中分析得到应用的软件安全漏洞信息,上报所述应用的软件安全漏洞信息给服务器。
比如,如图8所述的一个具体应用场景,所述运行单元可以为图中的自动化测试模块,所述加载单元可以为图中用于加载监控插件(如Xposed插件,或称动态检测工具)的模块,所述扫描控制单元可以为图中的Hook模块,所述匹配分析单元可以为图中的规则匹配模块。进一步还可以包括用于对上述预定义配置的漏洞规则和应用等进行更新配置,以提高软件漏洞的监控等级配置管理模块,在后续具体场景描述中具体介绍,这里不做赘述。
在本发明实施例一实施方式中,所述运行单元,进一步用于启用自动化测试模式,将预定义的测试用例运行于所述多个应用上,得到测试结果;将所述测试结果作为所述运行状态中的行为信息。
在本发明实施例一实施方式中,所述运行单元,进一步用于采用包括以下任意一种方式来运行所述多个应用:
方式一:
通过定时器的方式来设置终端开机后的应用定时启动功能;
在所述定时器时间到达后开启运行所述多个应用,收集所述多个应用的运行参数作为所述运行状态中的行为信息;
方式二:
通过对应用进行开机自启动的预先配置来设置终端开机后的应用启动功能;
在终端开机后按照所述预先配置开启运行所述多个应用,收集所述多个应用的运行参数作为所述运行状态中的行为信息;
方式三:
检测终端的系统资源低于第一阈值或者终端的运行状态为空闲状态时,对所述终端中安装的所述多个应用进行扫描,扫描得到所述多个应用后生成第一指令;所述第一指令为用于表征应用开启的指令;
通过所述第一指令开启运行所述多个应用,收集所述多个应用的运行参数作为所述运行状态中的行为信息。
在本发明实施例一实施方式中,所述运行状态中的行为信息包括:任意一个应用自身运行时被监控得到的行为信息、所述多个应用在运行过程中存在彼此交互时被监控得到的行为信息。
在本发明实施例一实施方式中,所述匹配分析单元,进一步包括:
规则提取子单元,用于提取所述第二预设规则,所述第二预设规则为用于匹配过程中确定是否符合预定义配置的漏洞规则;
匹配子单元,用于将所述动态扫描结果与所述预定义配置的漏洞规则进行匹配,匹配成功时,则将所述动态扫描结果中匹配成功的匹配结果作为所述应用的软件安全漏洞信息。
方法实施例四:
本发明实施例的一种信息处理方法,所述方法应用于服务器中,如图5所示,所述方法包括:
步骤501、接收终端上报的应用的软件安全漏洞信息;
这里,所述应用的软件安全漏洞信息为终端按照第一预设规则运行多个应用,通过加载基于第一安全框架生成的监控插件对所述多个应用在所述运行状态中的行为信息进行扫描,从得到的动态扫描结果中分析得到的信息;
步骤502、将所述应用的软件安全漏洞信息显示给用户进行查看。
服务器实施例一:
本发明实施例的一种服务器,如图6所示,所述服务器包括:
接收单元21,用于接收终端上报的应用的软件安全漏洞信息;所述应用的软件安全漏洞信息为终端按照第一预设规则运行多个应用,通过加载基于第一安全框架生成的监控插件对所述多个应用在所述运行状态中的行为信息进行扫描,从得到的动态扫描结果中分析得到的信息;
监控显示单元22,用于将所述应用的软件安全漏洞信息显示给用户进行查看。
这里需要指出的是,上述终端可以为PC这种电子设备,还可以为如PAD,平板电脑,手提电脑这种便携电子设备、还可以为如手机这种智能移动终端,不限于这里的描述;所述服务器可以是通过集群系统构成的,为实现各单元功能而合并为一或各单元功能分体设置的电子设备,终端和服务器都至少包括用于存储数据的数据库和用于数据处理的处理器,或者包括设置于服务器内的存储介质或独立设置的存储介质。
其中,对于用于数据处理的处理器而言,在执行处理时,可以采用微处理器、中央处理器(CPU,Central Processing Unit)、数字信号处理器(DSP,Digital SingnalProcessor)或可编程逻辑阵列(FPGA,Field-Programmable Gate Array) 实现;对于存储介质来说,包含操作指令,该操作指令可以为计算机可执行代码,通过所述操作指令来实现上述本发明实施例信息处理方法流程中的各个步骤。
该终端和该服务器作为硬件实体S11的一个示例如图7所示。所述装置包括处理器31、存储介质32以及至少一个外部通信接口33;所述处理器31、存储介质32以及外部通信接口33均通过总线34连接。
以一个现实应用场景为例对本发明实施例阐述如下:
本应用场景为智能终端上安装大量APP的情况下,需要对APP进行扫描以得到APP中的软件漏洞,并对扫描得到的软件漏洞进行修复的场景。对于这个具体应用场景,有如下技术术语需要先行介绍:
1)动态扫描:动态扫描是指在Android应用运行过程中,动态的检测Android 应用是否存在安全漏洞。
2)自动化测试:自动化测试主要是指Android应用的自动化测试,常用于产品研发的测试阶段,主要是为了减轻功能测试人员的工作量而实现的自动化运行功能测试用例的一种测试手段。
3)捉虫猎手:捉虫猎手是360公司研发的一个基于云的静态Android应用安全扫描器。
4)金刚扫描器:金刚扫描器是腾讯公司研发的一款静态Android应用扫描器。
5)Xposed框架:Xposed框架是一款可以在不修改APK的情况下影响程序运行(修改系统)的框架服务,基于它可以制作出许多功能强大的模块,且在功能不冲突的情况下同时运作。
对于静态扫描技术来说,上述捉虫猎手和金刚扫描器都属于静态扫描的技术,这种静态技术是针对APK安装包进行,不需要运行该APK安装包,对该 APK安装包,通过对Android应用进行反编译,然后对反编译后的源码和资源进行扫描。静态扫描因为是在静态代码和资源层面的分析,导致有些漏洞不能被很好的发现或者无法发现,利如日志打印敏感信息漏洞,该漏洞出现频繁,但却无法通过静态扫描器扫出来。还有一些漏洞,例如Intent劫持,静态扫描误报率较高,因为很多时候Intent传送的并非敏感信息,但静态扫描器无法进行区分,都统一报了出来,这种误判导致很高的误判率
对于动态扫描技术来说,动态扫描器是需要在Android应用的运行过程中来进行扫描的,也就是说是针对已经运行,无论是在前台还是在后台运行的APP 来进行,对于未开启运行的APP不在讨论范围内,从而需要服务器侧的安全审计人员人工地去运行这个APP,遍历APP的所有功能来达到动态扫描的目的,虽然可以实现动态扫描,但却无法实现自动化,仍然需要安全审计人员花费大量人工去熟悉和运行被扫描的Android应用,效率低下。且这种现有的动态扫描技术还停留在由后台的专门安全管理员人工核对和模拟运行APP以达到动态方式的扫描目的,由于模拟运行APP与真实环境中APP仍然是存在差异的,所以,扫描结果并不精确,也存在误判率。
针对上述应用场景采用本发明实施例,具体是一种实现自动化动态扫描 Android应用漏洞的方案,采用该方案,可以有效的解决上述两方面,不仅能弥补静态扫描技术的不足,实现了动态扫描Android应用的漏洞,成功解决了日志打印敏感信息等漏洞无法扫描的问题,避免误判,而且还能通过将动态扫描工作与自动化测试相结合,即将动态扫描和自动化控制同时进行,无需人工介入,省掉了安全人员去遍历一遍被测应用功能的时间,提高了工作效率,减轻了安全审计人员的工作量,大大提高了效率,也避免了误判。
以下对本应用场景采用本发明实施例的方案进行具体阐述:
系统应用实例:
如图8为本应用场景的系统实例,该系统包括智能终端侧和后台服务器侧,其中,智能终端侧以智能终端为手机为例,后台服务器侧以安全审计员所在的 Web端为例。
手机侧包括:自动化测试模块41,Android应用模块42,Hook模块43,规则匹配模块44,配置管理模块45,其中,Hook模块43,规则匹配模块44,配置管理模块45位于基于Xposed框架开发生成的Xposed插件中。
自动化测试模块41用于按照第一预设规则运行Android应用模块42的多个应用;Android应用模块42用于作为多个应用的容器;Hook模块43用于主要负责Hook住Android的相关API接口,具体可以通过API hook,改变一个系统api的原有功能,比如通过hook“接触”到需要修改的API函数入口点,改变它的地址指向新的自定义的函数,即支持对运行的APP进行改变APP运行状态,在检测到所述多个应用处于运行状态时,加载基于Xposed框架开发生成的Xposed插件后,控制所述Xposed插件对所述多个应用在所述运行状态中的行为信息进行扫描,得到动态扫描结果;规则匹配模块44主要负责扫描规则的匹配,看是否符合某个漏洞规则,即按照第二预设规则从所述动态扫描结果中分析得到应用的软件安全漏洞信息,上报所述应用的软件安全漏洞信息给服务器;配置管理模块45主要负责配置的查询、更新等操作,即对上述预定义配置的漏洞规则和应用等进行更新配置,以提高软件漏洞的监控等级配置管理模块。
以安全审计员所在的Web端包括:前台Web51、插件配置文件模块52,存储DB(数据库)53,接收漏洞信息CGI接口模块54。
前台Web51用于作为显示端,主要负责展示漏洞信息,支持配置文件编辑等功能,即主要对接收的手机侧所上报的所述应用的软件安全漏洞信息进行显示;插件配置文件模块52用于与配置管理模块45进行交互,以便更新配置;存储DB53用于存储手机侧所上报的所述应用的软件安全漏洞信息及与其相关的信息;接收漏洞信息CGI接口模块54主要负责接收手机端传过来的漏洞信息,并将其入存储DB53,即用于接收手机侧所上报的所述应用的软件安全漏洞信息,进一步还可以对其进行分析后得到的分析结果反馈给规则匹配模块使用。
方法应用实例:
如图9为本应用场景的方法实例,该自动化动态扫描流程主要包括:图中所示的三条分支,左边的一条分支为手机端的扫描及规则匹配处理分支,中间的一条分支为在Web端通过监控人员查看管理系统的显示内容,右边的一条分支为手机端的配置更新分支。该自动化动态扫描流程的总体规划步骤包括以下内容:
一、第一条分支(左边的一条分支):
步骤701、进入自动化测试平台运行APP,得到包括相关行为信息的测试结果;
步骤702、Hook模块捕获到相关行为信息;
步骤703、规则匹配模块对捕获到的信息进行规则匹配;
步骤704、判断是否匹配成功,如果是,则执行步骤705,否则,结束当前分支;
步骤705、将漏洞信息上报给Web端的接收漏洞信息CGI模块,转入执行步骤801。
二、第二条分支(中间的一条分支):
步骤801、从数据库中提取出漏洞信息;
步骤802、Web端展示漏洞信息,结束当前分支。
三、第三条分支(右边的一条分支):
步骤901、开机启动配置管理服务;
步骤902、检查配置文件;
步骤903、判断是否配置有更新,如果是,则执行步骤904,否则,按照预定义的时间休眠一段时间后转入执行步骤902;
步骤904、更新配置信息,之后,转入执行步骤703。
这里需要指出的是,本应用场景采用本发明实施例,使用动态扫描与自动化测试相结合的方式,实现了全自动化动态扫描Android应用的安全漏洞,本发明实施例的动态扫描工具,或称为APP扫描器是基于Xposed框架开发的一个监控插件,结合自动化测试,如果在Android应用在运行过程中有类似于日志打印敏感信息等操作,那么监控插件就能将其发现,并上报到后台Web端供安全人员查看。监控扫描的范围包括:除了监控日志打印,还可以对发送广播、打开Activity等操作进行安全检测。
在本申请所提供的几个实施例中,应该理解到,所揭露的设备和方法,可以通过其它的方式实现。以上所描述的设备实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个单元或组件可以结合,或可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,设备或单元的间接耦合或通信连接,可以是电性的、机械的或其它形式的。
上述作为分离部件说明的单元可以是、或也可以不是物理上分开的,作为单元显示的部件可以是、或也可以不是物理单元,即可以位于一个地方,也可以分布到多个网络单元上;可以根据实际的需要选择其中的部分或全部单元来实现本实施例方案的目的。
另外,在本发明各实施例中的各功能单元可以全部集成在一个处理单元中,也可以是各单元分别单独作为一个单元,也可以两个或两个以上单元集成在一个单元中;上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
或者,本发明上述集成的单元如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机、服务器、或者网络设备等)执行本发明各个实施例所述方法的全部或部分。而前述的存储介质包括:移动存储设备、ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。
Claims (21)
1.一种信息处理方法,其特征在于,所述方法应用于终端中,所述终端安装有多个应用,所述方法包括:
通过自动化测试工具触发运行所述多个应用;其中,所述通过自动化测试工具触发运行所述多个应用包括:开机后检测到预设定时器时间到达时运行所述多个应用、按照应用的开机自启动的预先配置运行所述多个应用、或者检测到所述终端处于空闲状态时运行所述多个应用;
检测到所述多个应用处于运行状态时,加载基于第一安全框架生成的监控插件;
控制所述监控插件对所述多个应用在所述运行状态中的行为信息进行扫描,得到动态扫描结果;其中,所述行为信息包括:所述多个应用在运行过程中存在彼此交互时被监控得到的行为信息;
按照第二预设规则从所述动态扫描结果中分析得到应用的软件安全漏洞信息,其中,所述第二预设规则为用于确定是否符合预定义配置的漏洞规则;
上报所述应用的软件安全漏洞信息给服务器;其中,所述软件安全漏洞信息,用于供所述服务器对所述软件安全漏洞信息进行分析,得到分析结果并返回至所述终端;
接收到所述服务器返回的所述分析结果,根据所述分析结果,对所述预定义配置的漏洞规则进行更新,以基于更新后的所述预定义配置的漏洞规则进行动态扫描结果的分析。
2.根据权利要求1所述的方法,其特征在于,所述通过自动化测试工具触发运行所述多个应用,包括:
启用自动化测试模式,将预定义的测试用例运行于所述多个应用上,得到测试结果;
将所述测试结果作为所述运行状态中的行为信息。
3.根据权利要求1所述的方法,其特征在于,所述通过自动化测试工具触发运行所述多个应用,包括以下任意一种方式:
方式一:
通过定时器的方式来设置终端开机后的应用定时启动功能;
在所述定时器时间到达后开启运行所述多个应用,收集所述多个应用的运行参数作为所述运行状态中的行为信息;
方式二:
通过对应用进行开机自启动的预先配置来设置终端开机后的应用启动功能;
在终端开机后按照所述预先配置开启运行所述多个应用,收集所述多个应用的运行参数作为所述运行状态中的行为信息;
方式三:
检测终端的系统资源低于第一阈值或者终端的运行状态为空闲状态时,对所述终端中安装的所述多个应用进行扫描,扫描得到所述多个应用后生成第一指令;所述第一指令为用于表征应用开启的指令;
通过所述第一指令开启运行所述多个应用,收集所述多个应用的运行参数作为所述运行状态中的行为信息。
4.根据权利要求1至3中任一项所述的方法,其特征在于,所述运行状态中的行为信息包括:任意一个应用自身运行时被监控得到的行为信息。
5.根据权利要求1至3中任一项所述的方法,其特征在于,所述按照第二预设规则从所述动态扫描结果中分析得到应用的软件安全漏洞信息,包括:
提取所述第二预设规则;
将所述动态扫描结果与所述预定义配置的漏洞规则进行匹配,匹配成功时,则将所述动态扫描结果中匹配成功的匹配结果作为所述应用的软件安全漏洞信息。
6.一种终端,其特征在于,所述终端安装有多个应用,所述终端包括:
运行单元,用于通过自动化测试工具触发运行所述多个应用;其中,所述通过自动化测试工具触发运行所述多个应用包括:开机后检测到预设定时器时间到达时运行所述多个应用、按照应用的开机自启动的预先配置运行所述多个应用、或者检测到所述终端处于空闲状态时运行所述多个应用;
加载单元,用于检测到所述多个应用处于运行状态时,加载基于第一安全框架生成的监控插件;
扫描控制单元,用于控制所述监控插件对所述多个应用在所述运行状态中的行为信息进行扫描,得到动态扫描结果;其中,所述行为信息包括:所述多个应用在运行过程中存在彼此交互时被监控得到的行为信息;
匹配分析单元,用于按照第二预设规则从所述动态扫描结果中分析得到应用的软件安全漏洞信息,其中,所述第二预设规则为用于确定是否符合预定义配置的漏洞规则;
上报单元,用于上报所述应用的软件安全漏洞信息给服务器;其中,所述软件安全漏洞信息,用于供所述服务器对所述软件安全漏洞信息进行分析,得到分析结果并返回至所述终端;
更新单元,用于接收到所述服务器返回的所述分析结果,根据所述分析结果,对所述预定义配置的漏洞规则进行更新,以基于更新后的所述预定义配置的漏洞规则进行动态扫描结果的分析。
7.根据权利要求6所述的终端,其特征在于,所述运行单元,进一步用于启用自动化测试模式,将预定义的测试用例运行于所述多个应用上,得到测试结果;将所述测试结果作为所述运行状态中的行为信息。
8.根据权利要求6所述的终端,其特征在于,所述运行单元,进一步用于采用包括以下任意一种方式来运行所述多个应用:
方式一:
通过定时器的方式来设置终端开机后的应用定时启动功能;
在所述定时器时间到达后开启运行所述多个应用,收集所述多个应用的运行参数作为所述运行状态中的行为信息;
方式二:
通过对应用进行开机自启动的预先配置来设置终端开机后的应用启动功能;
在终端开机后按照所述预先配置开启运行所述多个应用,收集所述多个应用的运行参数作为所述运行状态中的行为信息;
方式三:
检测终端的系统资源低于第一阈值或者终端的运行状态为空闲状态时,对所述终端中安装的所述多个应用进行扫描,扫描得到所述多个应用后生成第一指令;所述第一指令为用于表征应用开启的指令;
通过所述第一指令开启运行所述多个应用,收集所述多个应用的运行参数作为所述运行状态中的行为信息。
9.根据权利要求6至8中任一项所述的终端,其特征在于,所述运行状态中的行为信息包括:任意一个应用自身运行时被监控得到的行为信息。
10.根据权利要求6至8中任一项所述的终端,其特征在于,所述匹配分析单元,进一步包括:
规则提取子单元,用于提取所述第二预设规则;
匹配子单元,用于将所述动态扫描结果与所述预定义配置的漏洞规则进行匹配,匹配成功时,则将所述动态扫描结果中匹配成功的匹配结果作为所述应用的软件安全漏洞信息。
11.一种信息处理方法,其特征在于,所述方法应用于服务器中,所述方法包括:
接收终端上报的应用的软件安全漏洞信息;
所述应用的软件安全漏洞信息为终端通过自动化测试工具触发运行多个应用;其中,所述通过自动化测试工具触发运行所述多个应用包括:开机后检测到预设定时器时间到达时运行所述多个应用、按照应用的开机自启动的预先配置运行所述多个应用、或者检测到所述终端处于空闲状态时运行所述多个应用;通过加载基于第一安全框架生成的监控插件对所述多个应用在运行状态中的行为信息进行扫描,从得到的动态扫描结果中分析得到的信息;其中,所述行为信息包括:所述多个应用在运行过程中存在彼此交互时被监控得到的行为信息;
将所述应用的软件安全漏洞信息显示给用户进行查看;
对所述软件安全漏洞信息进行分析,得到分析结果并返回至所述终端;其中,所述分析结果,用于供所述终端根据接收到的所述分析结果,对预定义配置的漏洞规则进行更新,以基于更新后的所述预定义配置的漏洞规则进行动态扫描结果的分析。
12.根据权利要求11所述的方法,其特征在于,所述方法还包括:
将更新的第一配置文件发送给终端;
或者,接收终端发送的第二配置文件;
基于服务器与终端间的交互,更新服务器侧的配置。
13.根据权利要求12所述的方法,其特征在于,所述更新的第一配置文件根据预定义配置的漏洞规则、和/或对配置文件的编辑处理结果所得到;
更新的第二配置文件根据预定义配置的漏洞规则和/或监控终端运行状态所得到。
14.根据权利要求13所述的方法,其特征在于,所述运行状态包括:任意一个应用自身运行时被监控得到的行为信息。
15.根据权利要求11至14任一项所述的方法,其特征在于,所述方法还包括:
对所述应用的软件安全漏洞信息进行分析,得到分析结果;
将所述分析结果发送给终端,使终端根据所述分析结果进行动态扫描结果的规则匹配。
16.一种服务器,其特征在于,所述服务器包括:
接收单元,用于接收终端上报的应用的软件安全漏洞信息;所述应用的软件安全漏洞信息为终端通过自动化测试工具触发运行多个应用;其中,所述通过自动化测试工具触发运行所述多个应用包括:开机后检测到预设定时器时间到达时运行所述多个应用、按照应用的开机自启动的预先配置运行所述多个应用、或者检测到所述终端处于空闲状态时运行所述多个应用;通过加载基于第一安全框架生成的监控插件对所述多个应用在运行状态中的行为信息进行扫描,从得到的动态扫描结果中分析得到的信息;其中,所述行为信息包括:所述多个应用在运行过程中存在彼此交互时被监控得到的行为信息;
监控显示单元,用于将所述应用的软件安全漏洞信息显示给用户进行查看;
发送单元,用于对所述软件安全漏洞信息进行分析,得到分析结果并发送至所述终端;其中,所述分析结果,用于供所述终端根据接收到的所述分析结果,对预定义配置的漏洞规则进行更新,以基于更新后的所述预定义配置的漏洞规则进行动态扫描结果的分析。
17.根据权利要求16所述的服务器,其特征在于,所述服务器还包括:配置文件单元;
所述配置文件单元,用于:
将更新的第一配置文件发送给终端;
或者,接收终端发送的第二配置文件;
基于服务器与终端间的交互,更新服务器侧的配置。
18.根据权利要求17所述的服务器,其特征在于,所述更新的第一配置文件根据预定义配置的漏洞规则、和/或对配置文件的编辑处理结果所得到;
更新的第二配置文件根据预定义配置的漏洞规则和/或监控终端运行状态所得到。
19.根据权利要求18所述的服务器,其特征在于,所述运行状态包括:任意一个应用自身运行时被监控得到的行为信息。
20.根据权利要求16至19任一项所述的服务器,其特征在于,所述服务器还包括:漏洞信息接收单元;
所述漏洞信息接收单元,用于:
对所述应用的软件安全漏洞信息进行分析,得到分析结果;
将所述分析结果发送给终端,使终端根据所述分析结果进行动态扫描结果的规则匹配。
21.一种计算机存储介质,其上存储有计算机程序,其中,该计算机程序被处理器执行时实现权利要求1-5、权利要求11-15任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510413776.0A CN106713215B (zh) | 2015-07-14 | 2015-07-14 | 一种信息处理方法、终端及服务器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510413776.0A CN106713215B (zh) | 2015-07-14 | 2015-07-14 | 一种信息处理方法、终端及服务器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106713215A CN106713215A (zh) | 2017-05-24 |
CN106713215B true CN106713215B (zh) | 2020-12-15 |
Family
ID=58898291
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510413776.0A Active CN106713215B (zh) | 2015-07-14 | 2015-07-14 | 一种信息处理方法、终端及服务器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106713215B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107608746A (zh) * | 2017-09-18 | 2018-01-19 | 北京奇虎科技有限公司 | 一种多开应用的优化方法和装置 |
CN111310183A (zh) * | 2020-03-04 | 2020-06-19 | 深信服科技股份有限公司 | 一种软件风险识别方法、装置、设备、存储介质及系统 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103186740A (zh) * | 2011-12-27 | 2013-07-03 | 北京大学 | 一种Android恶意软件的自动化检测方法 |
CN103491064A (zh) * | 2012-06-14 | 2014-01-01 | 腾讯科技(深圳)有限公司 | 终端软件维护方法、业务客户端及业务服务器 |
CN103744784A (zh) * | 2014-01-06 | 2014-04-23 | 中国移动(深圳)有限公司 | 手机应用自动化测试方法及系统 |
CN103984900A (zh) * | 2014-05-19 | 2014-08-13 | 南京赛宁信息技术有限公司 | Android应用漏洞检测方法及系统 |
CN104537309A (zh) * | 2015-01-23 | 2015-04-22 | 北京奇虎科技有限公司 | 应用程序漏洞检测方法、装置及服务器 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9286063B2 (en) * | 2012-02-22 | 2016-03-15 | Veracode, Inc. | Methods and systems for providing feedback and suggested programming methods |
-
2015
- 2015-07-14 CN CN201510413776.0A patent/CN106713215B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103186740A (zh) * | 2011-12-27 | 2013-07-03 | 北京大学 | 一种Android恶意软件的自动化检测方法 |
CN103491064A (zh) * | 2012-06-14 | 2014-01-01 | 腾讯科技(深圳)有限公司 | 终端软件维护方法、业务客户端及业务服务器 |
CN103744784A (zh) * | 2014-01-06 | 2014-04-23 | 中国移动(深圳)有限公司 | 手机应用自动化测试方法及系统 |
CN103984900A (zh) * | 2014-05-19 | 2014-08-13 | 南京赛宁信息技术有限公司 | Android应用漏洞检测方法及系统 |
CN104537309A (zh) * | 2015-01-23 | 2015-04-22 | 北京奇虎科技有限公司 | 应用程序漏洞检测方法、装置及服务器 |
Also Published As
Publication number | Publication date |
---|---|
CN106713215A (zh) | 2017-05-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10075455B2 (en) | Zero-day rotating guest image profile | |
US10169585B1 (en) | System and methods for advanced malware detection through placement of transition events | |
US20190014132A1 (en) | Internet of things security appliance | |
US9690606B1 (en) | Selective system call monitoring | |
CN109635523B (zh) | 应用程序检测方法、装置及计算机可读存储介质 | |
CN108830084B (zh) | 实现漏洞扫描与防护加固的手持式终端及防护方法 | |
CN106709325B (zh) | 一种监控程序的方法及装置 | |
CN105389263A (zh) | 应用软件权限监控方法、系统及设备 | |
CN110149298A (zh) | 一种劫持检测的方法和装置 | |
CN111193616A (zh) | 自动运维方法、装置、系统、存储介质及自动运维服务器 | |
CN112528296B (zh) | 漏洞检测方法、装置和存储介质及电子设备 | |
CN112395597A (zh) | 网站应用漏洞攻击的检测方法及装置、存储介质 | |
CN103581185A (zh) | 对抗免杀测试的云查杀方法、装置及系统 | |
CN110119350A (zh) | 软件开发工具包测试方法、装置和设备及计算机存储介质 | |
CN109711149B (zh) | 动态更新机制判定方法及应用全生命周期行为监控方法 | |
CN110896362B (zh) | 一种故障检测方法和装置 | |
CN106713215B (zh) | 一种信息处理方法、终端及服务器 | |
CN105843675B (zh) | 线程退出方法和装置 | |
CN105975320A (zh) | 一种第三方应用禁止安装的方法、装置以及终端 | |
CN105224453A (zh) | 系统兼容性的自动测试方法及装置 | |
CN112231697A (zh) | 第三方sdk行为的检测方法、装置、介质及电子设备 | |
CN112235300A (zh) | 云虚拟网络漏洞检测方法、系统、装置及电子设备 | |
CN110990221A (zh) | 基于内核LKM的Android平台恶意软件自动化检测方法与系统 | |
CN113127875A (zh) | 一种漏洞处理方法及相关设备 | |
CN115146309A (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 |