应用文件的鉴定方法及装置与流程

文档序号:12887528阅读:136来源:国知局
应用文件的鉴定方法及装置与流程

本发明涉及计算机网络领域,具体而言,涉及一种应用文件的鉴定方法及装置。



背景技术:

在相关技术中,针对应用文件是否会存在安全隐患的问题,一般情况下,会在发现可疑的应用文件后,会将这些可疑的应用文件上传至安全中心,将上述可疑应用文件与由之前出现过的可疑应用文件特征进行简单的比对,具体地,也即是将可疑应用文件的特征与现有的可疑应用文件特征组成的特征样本库进行比对,对于一些在特征样本库中无法找到可以进行匹配可疑应用文件,就会进行人工分析,采用人工分析,就需要实时监控这些可疑的应用文件,从而会导致耗时长,在一定程度上也浪费了大量的人力,另外,采用人工分析可能会存在一些误差,会导致对应用文件的鉴定不完整的问题。

针对上述的问题,目前尚未提出有效的解决方案。



技术实现要素:

本发明实施例提供了一种应用文件的鉴定方法及装置,以至少解决相关技术中无法对移动端设备的应用文件进行有效完整鉴定的技术问题。

根据本发明实施例的一个方面,提供了一种应用文件的鉴定方法,包括:确定对应用文件进行鉴定的鉴定类型,其中,鉴定类型包括:动态鉴定和静态鉴定;根据确定的鉴定类型,对应用文件进行鉴定,获得鉴定结果。

可选地,根据确定的鉴定类型,对应用文件进行鉴定,获得鉴定结果包括:在确定的鉴定类型为静态鉴定的情况下,读取应用文件的属性信息;根据读取的属性信息,生成应用文件未被运行的场景下的静态鉴定报告。

可选地,根据读取的属性信息,生成应用文件未被运行的场景下的静态鉴定报告包括:对应用文件对应的应用进行反编译,生成应用的源代码,对源代码进行检查获得源代码检查结果;根据读取的属性信息和获得的源代码检查结果,生成应用文件未被运行的场景下的静态鉴定报告;和/或,对应用文件对应的应用所存在的漏洞进行检查,获得漏洞检查结果;根据读取的属性信息和获得的漏洞检查结果,生成应用文件未被运行的场景下的静态鉴定报告。

可选地,根据确定的鉴定类型,对应用文件进行鉴定,获得鉴定结果包括:在确定的鉴定类型为动态鉴定的情况下,获取应用文件被运行时的运行行为信息;根据获取的运行行为信息,生成应用文件被运行的场景下的动态鉴定报告。

可选地,根据获取的运行行为信息,生成应用文件被运行的场景下的动态鉴定报告包括以下至少之一:对应用文件所对应的应用被运行时申请的权限进行监控,获得权限列表,生成包括权限列表的动态鉴定报告;对应用文件所对应的应用被运行时对应用文件所进行的读写操作进行记录,获得读写记录,生成包括读写记录的动态鉴定报告;对应用文件所对应的应用被运行时对网络进行访问的访问操作进行记录,获得网络访问记录,生成包括网络访问记录的动态鉴定报告;对应用文件所对应的应用被运行时截取图片的截取情况进行记录,获得图片截取记录,生成包括图片截取记录的动态鉴定报告。

根据本发明实施例的另外一个方面,还提供了一种应用文件的鉴定装置,该应用文件的鉴定装置包括:确定单元,应用于移动端设备,用于确定对应用文件进行鉴定的鉴定类型,其中,鉴定类型包括:动态鉴定和静态鉴定;获取单元,用于根据确定的鉴定类型,对应用文件进行鉴定,获得鉴定结果。

可选地,获取单元包括:读取模块,用于在确定的鉴定类型为静态鉴定的情况下,读取应用文件的属性信息;第一生成模块,用于根据读取的属性信息,生成应用文件未被运行的场景下的静态鉴定报告。

可选地,第一生成模块,还用于对应用文件对应的应用进行反编译,生成应用的源代码,对源代码进行检查获得源代码检查结果;根据读取的属性信息和获得的源代码检查结果,生成应用文件未被运行的场景下的静态鉴定报告;和/或,第一生成模块,还用于对应用文件对应的应用所存在的漏洞进行检查,获得漏洞检查结果;第二生成子模块,用于根据读取的属性信息和获得的漏洞检查结果,生成应用文件未被运行的场景下的静态鉴定报告。

可选地,获取单元包括:获取模块,用于在确定的鉴定类型为动态鉴定的情况下,获取应用文件被运行时的运行行为信息;第二生成模块,用于根据获取的运行行为信息,生成应用文件被运行的场景下的动态鉴定报告。

可选地,第二生成模块包括以下至少之一:第三生成子模块,用于对应用文件所对应的应用被运行时申请的权限进行监控,获得权限列表,生成包括权限列表的动态鉴定报告;第四生成子模块,用于对应用文件所对应的应用被运行时对应用文件所进行的读写操作进行记录,获得读写记录,生成包括读写记录的动态鉴定报告;第五生成子模块,用于对应用文件所对应的应用被运行时对网络进行访问的访问操作进行记录,获得网络访问记录,生成包括网络访问记录的动态鉴定报告;第六生成子模块,用于对应用文件所对应的应用被运行时截取图片的截取情况进行记录,获得图片截取记录,生成包括图片截取记录的动态鉴定报告。

根据本发明实施例的另外一个方面,还提供了一种存储介质,存储介质包括存储的程序,其中,在程序运行时控制存储介质所在设备执行上述任意一项的应用文件的鉴定方法。

根据本发明实施例的另外一个方面,还提供了一种处理器,处理器用于运行程序,其中,程序运行时执行上述中任意一项的应用文件的鉴定方法。

在本发明实施例中,采用确定对应用文件进行鉴定的鉴定类型,其中,鉴定类型包括:动态鉴定和静态鉴定;然后根据确定的鉴定类型,对用于文件进行鉴定,获得鉴定结果,从而有效减少了相关技术中对在对应用文件进行鉴定的效率低的弊端,进而解决了相关技术中无法对移动端设备的应用文件进行有效完整鉴定的技术问题,提高了应用文件的鉴定效率,也提高了用户体验。

附图说明

此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:

图1是根据本发明实施例的应用文件鉴定方法的流程图;

图2是根据本发明实施例的应用文件的鉴定装置的示意图;

图3是根据本发明实施例的应用文件的鉴定装置中获取单元23的优选示意图一;

图4是根据本发明实施例的应用文件的鉴定装置中获取单元23的优选示意图二;以及

图5是根据本发明实施例的应用文件的鉴定装置中第二生成模块43的优选示意图。

具体实施方式

为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。

需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。

根据本发明实施例,提供了一种应用文件的鉴定的方法实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。

根据本发明实施例的一个方面,提供了一种应用文件的鉴定方法,该应用文件的鉴定方法应用于移动端设备,图1是根据本发明实施例的应用文件鉴定方法的流程图,如图1所示,该应用于移动端设备的应用文件鉴定方法包括如下步骤:

步骤s102,确定对应用文件进行鉴定的鉴定类型,其中,该鉴定类型包括:动态鉴定和静态鉴定。

步骤s104,根据确定的鉴定类型,对应用文件进行鉴定,获得鉴定结果。

通过上述步骤,采用确定对应用文件进行鉴定的鉴定类型,其中,鉴定类型包括:动态鉴定和静态鉴定;然后根据确定的鉴定类型,对用于文件进行鉴定,获得鉴定结果,从而有效解决了相关技术中无法对移动端设备的应用文件进行有效完整鉴定的技术问题,通过对应用文件进行分类,以及进行静态鉴定和动态鉴定,有效地提高了对应用文件进行鉴定的有效性,及完整性,也提高了用户体验。

需要说明的是,在应用文件处于未被运行的场景下时,对应的对应用文件进行鉴定的类型可以为静态鉴定的鉴定类型。因此,在根据确定的鉴定类型,对应用文件进行鉴定,获得鉴定结果时,可以采用多种实施方式,例如,可以包括:在确定的鉴定类型为静态鉴定的情况下,读取应用文件的属性信息;根据读取的属性信息,生成应用文件未被运行的场景下的静态鉴定报告。其中,读取的应用文件的属性的信息为应用文件未被运行时所可能包括的所有信息,可以包括:只读:表示该应用文件不能被修改;隐藏:表示该文件在系统中是隐藏的,在默认情况下,用户不能看见这些文件;系统:表示该文件是操作系统的一部分;存档:表示该文件在上次备份前已经修改过,一些备份软件在备份系统后,会把这些文件默认的设置为存档属性。这里的静态鉴定报告是在特定静态系统中对文件本身展开读取内部信息,形成静态鉴定报告。例如,在利用静态鉴定方法生成移动端安卓应用的静态鉴定报告,可以包括以下信息:⑴.报告头信息:①应用文件的md5算法取值,此值在一定范围内针对不同文件是唯一的取值;②文件的原始名称,例如,音乐、图片、视频以及影音等;③文件的上传时间;④文件的判定威胁等级,例如,威胁等级总共分为5星,5星为最高威胁等级,代表高威文件;⑵基本信息:需要说明的是,应用文件的基本信息可以包括多种,例如,可以包括以下至少之一:应用文件的文件大小,应用文件的应用名称,应用文件的文件包名,应用文件的创建日期,应用文件的md5值,应用文件的文件名称,应用文件的证书信息,应用文件的证书md5值,应用文件的sha-1,应用文件的版本信息,应用文件的鉴定结果,应用文件的病毒名称等。

另外,在选取的鉴定方法为静态鉴定时,根据读取的属性信息,生成应用文件未被运行的场景下的静态鉴定报告还可以包括一些比较特殊的信息,下面举例说明。例如,对应用文件对应的应用进行反编译,生成应用的源代码,对源代码进行检查获得源代码检查结果;根据读取的属性信息和获得的源代码检查结果,生成应用文件未被运行的场景下的静态鉴定报告。举例来说,可以对一些敏感行为对应的应用通过应用程序接口(applicationprocessinterface,简称为api)调用的方式进行反编译,其中,需要说明的是,对应敏感行为的api调用为隐式internet调用,可能导致数据泄露;还可以对一些activity劫持行为对应的应用通过api调用的方式进行反编译,其中,需要说明的是,对应activity劫持行为的api调用可能在响应用户行为的过程中,造成不可预估的影响;还例如,对应用文件对应的应用所存在的漏洞进行检查,获得漏洞检查结果;根据读取的属性信息和获得的漏洞检查结果,生成应用文件未被运行的场景下的静态鉴定报告。需要说明的是,在对应用文件对应的应用所存在的漏洞进行检查时,可以通过结构化查询语言(structuredquerylanguage,简称为sql)注入的方式来进行漏洞检查。需要注意的是,由于采用字符串连接方式构造sql语句,因此,导致在注入sql的漏洞位置存在sql注入点。在对应用文件对应的应用进行反编译和对应用文件对应的应用所存在的漏洞进行检查时,也可以是上述两种情况的结合,在此不做赘述。其中,反编译,一般也称反向编译,或者计算机软件还原工程,是指通过对他人软件的目标程序(例如可执行程序)进行“逆向分析、研究”工作,以推导出他人的软件产品所使用的思路、原理、结构、算法、处理过程、运行方法等设计要素,某些特定情况下可能推导出源代码。

在应用文件处于运行的状态时进行鉴定时,对应的鉴定类型应为动态鉴定,例如,根据确定的鉴定类型,对应用文件进行鉴定,获得鉴定结果可以包括:在确定的鉴定类型为动态鉴定的情况下,获取应用文件被运行时的运行行为信息;根据获取的运行行为信息,生成应用文件被运行的场景下的动态鉴定报告。其中,动态鉴定报告是将文件在后台系统中独立运行,将文件运行的行为日志记录下来,进而通过一系列分析,生成动态鉴定报告。同样在生成的动态鉴定报告中同样可以包括静态报告中所包括的应用文件基本信息,例如,应用文件的文件大小,应用文件的应用名称,应用文件的文件包名,应用文件的创建日期,应用文件的md5值,应用文件的文件名称,应用文件的证书信息,应用文件的证书md5值,应用文件的sha-1,应用文件的版本信息,应用文件的鉴定结果,应用文件的病毒名称等。当然也可以包括一些其它行为的监控结果,在记录监控结果时,可以包括对监控的一些行为的描述,例如,对sql注入行为的描述,对activity劫持的描述,对隐式internet操作行为的描述等。

具体地,根据获取的运行行为信息,生成应用文件被运行的场景下的动态鉴定报告可以包括多种,例如,可以包括以下至少之一:对应用文件所对应的应用被运行时申请的权限进行监控,获得权限列表,生成包括权限列表的动态鉴定报告,其中,该权限列表中所包括的权限可以多种,例如,可以包括以下至少之一:是否允许访问网络的权限,是否支持接入下载管理(access_download_manager)的权限,是否允许获取任务信息的权限,是否允许获取网络状态的权限,是否允许获取wifi状态的权限,是否允许获取精确位置的权限,是否允许显示系统窗口的权限,是否允许录音的权限,是否允许使用振动的权限,是否允许外部读取存储(read_external_storage)的权限,是否允许获取错略位置的权限,是否允许唤醒锁定的权限,是否允许访问定位额外命令的权限,是否允许写入外部存储的权限等;对应用文件所对应的应用被运行时对应用文件所进行的读写操作进行记录,获得读写记录,生成包括读写记录的动态鉴定报告,例如,记录读取操作的名称,读取文件的大小,以及读取文件的路径等;对应用文件所对应的应用被运行时对网络进行访问的访问操作进行记录,获得网络访问记录,生成包括网络访问记录的动态鉴定报告,例如,记录访问网络的网络地址,访问次数等;对应用文件所对应的应用被运行时截取图片的截取情况进行记录,获得图片截取记录,生成包括图片截取记录的动态鉴定报告,其中,截取图片可以包括运行开始时的图片,运行过程中的图片,运行结束后的图片等。例如,对应用文件所对应的应用被运行时申请的权限进行监控,获得权限列表包括,网络访问权限、获取任务权限、获取网络状态、唤醒锁定等权限。

本发明实施例还提供了一种应用文件的鉴定装置,需要说明的是,本发明实施例的应用文件的鉴定装置可以用于执行本发明实施例所提供的用于应用文件的鉴定方法。以下对本发明实施例提供的应用文件的鉴定装置进行介绍。

图2是根据本发明实施例的应用文件的鉴定装置的示意图,如图2所示,该应用文件鉴定装置包括:确定单元21以及获取单元23,下面对该应用文件的鉴定装置进行详细说明。

确定单元21,应用于移动端设备,用于确定对应用文件进行鉴定的鉴定类型,其中,鉴定类型包括:动态鉴定和静态鉴定。

获取单元23,与上述确定单元21连接,用于根据确定的鉴定类型,对应用文件进行鉴定,获得鉴定结果。

通过本发明实施例提供的应用文件的鉴定装置,采用确定单元21,应用于移动端设备,用于确定对应用文件进行鉴定的鉴定类型,其中,鉴定类型包括:动态鉴定和静态鉴定;获取单元23,用于根据确定的鉴定类型,对应用文件进行鉴定,获得鉴定结果。进而解决了相关技术中无法对移动端设备的应用文件进行有效完整鉴定的技术问题,通过对应用文件进行分类,以及进行静态鉴定和动态鉴定,有效地提高了对应用文件进行鉴定的有效性,及完整性,也提高了用户体验。

图3是根据本发明实施例的应用文件的鉴定装置中获取单元23的优选示意图一,如图3所示,获取单元23包括:读取模块31以及第一生成模块33,下面对该获取单元23进行详细说明。

读取模块31,用于在确定的鉴定类型为静态鉴定的情况下,读取应用文件的属性信息;第一生成模块33,与上述读取模块31连接,用于根据读取的属性信息,生成应用文件未被运行的场景下的静态鉴定报告。

可选地,第一生成模块33,还用于对应用文件对应的应用进行反编译,生成应用的源代码,对源代码进行检查获得源代码检查结果;根据读取的属性信息和获得的源代码检查结果,生成应用文件未被运行的场景下的静态鉴定报告;和/或,第一生成模块33,还用于对应用文件对应的应用所存在的漏洞进行检查,获得漏洞检查结果;第二生成子模块,用于根据读取的属性信息和获得的漏洞检查结果,生成应用文件未被运行的场景下的静态鉴定报告。

图4是根据本发明实施例的应用文件的鉴定装置中获取单元23的优选示意图二,如图4所示,获取单元23包括:获取模块41以及第二生成模块43。下面对该获取单元23进行详细说明。

获取模块41,用于在确定的鉴定类型为动态鉴定的情况下,获取应用文件被运行时的运行行为信息;第二生成模块43,与上述获取模块41连接,用于根据获取的运行行为信息,生成应用文件被运行的场景下的动态鉴定报告。

图5是根据本发明实施例的应用文件的鉴定装置中第二生成模块43的优选示意图,如图5所示,第二生成模块43包括以下至少之一:第三生成子模块51、第四生成子模块53、第五生成子模块55以及第六生成子模块57。下面对该第二生成模块43进行详细说明。

第三生成子模块51,用于对应用文件所对应的应用被运行时申请的权限进行监控,获得权限列表,生成包括权限列表的动态鉴定报告;第四生成子模块53,用于对应用文件所对应的应用被运行时对应用文件所进行的读写操作进行记录,获得读写记录,生成包括读写记录的动态鉴定报告;第五生成子模块55,用于对应用文件所对应的应用被运行时对网络进行访问的访问操作进行记录,获得网络访问记录,生成包括网络访问记录的动态鉴定报告;第六生成子模块57,用于对应用文件所对应的应用被运行时截取图片的截取情况进行记录,获得图片截取记录,生成包括图片截取记录的动态鉴定报告。

根据本发明实施例的另外一个方面,还提供了一种存储介质,存储介质包括存储的程序,其中,在程序运行时控制存储介质所在设备执行上述任意一项的应用文件的鉴定方法。

根据本发明实施例的另外一个方面,还提供了一种处理器,处理器用于运行程序,其中,程序运行时执行上述中任意一项的应用文件的鉴定方法。

上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。

在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。

在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1