CN109002710B - 一种检测方法、装置及计算机可读存储介质 - Google Patents

一种检测方法、装置及计算机可读存储介质 Download PDF

Info

Publication number
CN109002710B
CN109002710B CN201710421957.7A CN201710421957A CN109002710B CN 109002710 B CN109002710 B CN 109002710B CN 201710421957 A CN201710421957 A CN 201710421957A CN 109002710 B CN109002710 B CN 109002710B
Authority
CN
China
Prior art keywords
file
application
time window
policy
downloading
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
CN201710421957.7A
Other languages
English (en)
Other versions
CN109002710A (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.)
China Mobile Communications Group Co Ltd
China Mobile Communications Ltd Research Institute
Original Assignee
China Mobile Communications Group Co Ltd
China Mobile Communications Ltd Research Institute
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 China Mobile Communications Group Co Ltd, China Mobile Communications Ltd Research Institute filed Critical China Mobile Communications Group Co Ltd
Priority to CN201710421957.7A priority Critical patent/CN109002710B/zh
Publication of CN109002710A publication Critical patent/CN109002710A/zh
Application granted granted Critical
Publication of CN109002710B publication Critical patent/CN109002710B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • G06F21/562Static detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/03Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
    • G06F2221/033Test or assess software

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Virology (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Storage Device Security (AREA)

Abstract

本发明公开了一种检测方法,包括:根据策略库指定的特征提取策略,下载特定时间窗口对应的第一应用的文件,并从下载的文件中提取特征信息;将提取的特征信息与特征信息库中的信息进行匹配,得到匹配结果;利用匹配结果检测所述第一应用是否为恶意应用软件。本发明同时还公开了一种检测装置及计算机可读存储介质。

Description

一种检测方法、装置及计算机可读存储介质
技术领域
本发明涉及通信领域的安全技术,尤其涉及一种检测方法、装置及计算机可读存储介质。
背景技术
随着移动终端互联网的迅速发展,移动应用的数量和种类得到了空前的提高,用户安装移动应用已十分普及,同时移动终端上相应的恶意代码威胁也逐渐增多,所以智能终端所面临的安全问题日益突出,尤其是移动恶意软件使广大用户的利益遭受损失。目前用户通过移动智能终端进行支付、转账越来越普遍,同时在移动智能终端上存储大量的敏感信息,如用户银行账号、用户密码、保密文件等敏感信息,用户一旦安装或被植入恶意软件,用户就面临着敏感信息被窃取、账户资金被转移等安全风险,从而导致用户利益受损失,所以用户面临着被远程控制、恶意扣费、隐私被窃取等安全威胁。
目前针对移动智能终端侧恶意软件的查杀,主要采用完全下载应用程序(APP),并进行特征信息提取,判断所提取的恶意特征信息是否存在于预先构建的恶意特征信息库中,依据判断结果,确定APP是否为恶意软件,从而进行恶意软件删除。
但是,上述方式需要完整下载应用,才能进行查杀,如此,会大大增加成本。
发明内容
为解决现有存在的技术问题,本发明实施例提供一种检测方法、装置及计算机可读存储介质。
本发明实施例的技术方案是这样实现的:
本发明实施例提供了一种检测方法,包括:
根据策略库指定的特征提取策略,下载特定时间窗口对应的第一应用的文件,并从下载的文件中提取特征信息;
将提取的特征信息与特征信息库中的信息进行匹配,得到匹配结果;
利用匹配结果检测所述第一应用是否为恶意应用软件。
上述方案中,所述根据策略库指定的特征提取策略,下载特定时间窗口对应的第一应用的文件之前,所述方法还包括:
针对所述第一应用对应的每个时间窗口,利用文件头标识,判断时间窗口对应的数据是否是文件数据,当时间窗口对应的数据是文件数据时,确定对应的时间窗口为一个候选时间窗口,得到至少一个候选时间窗口;
相应地,所述根据策略库指定的特征提取策略,下载特定时间窗口对应的第一应用的文件,包括:
从所述至少一个候选时间窗口中确定时间窗口对应的文件包含所述策略库指定的策略文件的至少一个特定时间窗口;
针对确定的每个特定时间窗口,下载对应的第一应用的文件。
上述方案中,所述从下载的文件中提取特征信息,包括:
对下载的文件中的文件数据进行还原处理;
从还原处理后的文件数据中提取特征信息。
上述方案中,所述对下载的文件中的文件数据进行还原处理,包括:
利用下载的所有文件数据形成第一部分文件;
利用下载的所有文件数据的相关信息,构造对应的核心目录及目录结束标识,形成第二部分文件;
将所述第一部分文件和第二部分文件进行组合,得到第一文件;
将所述第一文件进行解压处理。
上述方案中,所述从下载的文件中提取特征信息,包括:
根据所述策略库中针对每个文件的特征提取策略,从对应的文件中提取特征信息。
上述方案中,所述根据策略库指定的特征提取策略,下载特定时间窗口对应的第一应用的文件之前,所述方法还包括:
利用所述第一应用的文件头标识,确定需要检测所述第一应用是否为恶意应用软件。
上述方案中,所述方法还包括:
依据应用的文件组成,创建所述策略库。
本发明实施例还提供了一种检测装置,包括:
下载及提取单元,用于根据策略库指定的特征提取策略,下载特定时间窗口对应的第一应用的文件,并从下载的文件中提取特征信息;
检测单元,用于将提取的特征信息与特征信息库中的信息进行匹配,得到匹配结果;以及利用匹配结果检测所述第一应用是否为恶意应用软件。
上述方案中,所述下载及提取单元,还用于:
针对所述第一应用对应的每个时间窗口,利用文件头标识,判断时间窗口对应的数据是否是文件数据,当时间窗口对应的数据是文件数据时,确定对应的时间窗口为一个候选时间窗口,得到至少一个候选时间窗口;
从所述至少一个候选时间窗口中确定时间窗口对应的文件包含所述策略库指定的策略文件的至少一个特定时间窗口;
针对确定的每个特定时间窗口,下载对应的第一应用的文件。
上述方案中,所述下载及提取单元,具体用于:对下载的文件中的文件数据进行还原处理;从还原处理后的文件数据中提取特征信息。
上述方案中,所述下载及提取单元,还用于:
利用所述第一应用的文件头标识,确定需要检测所述第一应用是否为恶意应用软件。
上述方案中,所述装置还包括:
创建单元,用于依据应用的文件组成,创建所述策略库。
本发明实施例又提供了一种检测装置,包括:处理器和用于存储能够在处理器上运行的计算机程序的存储器,
其中,所述处理器用于运行所述计算机程序时,执行上述方法的步骤。
本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现上述方法的步骤。
本发明实施例提供的检测方法、装置及计算机可读存储介质,根据策略库指定的特征提取策略,下载特定时间窗口对应的第一应用的文件,并从下载的文件中提取特征信息;将提取的特征信息与特征信息库中的信息进行匹配,得到匹配结果;利用匹配结果检测所述第一应用是否为恶意应用软件,采用基于时间窗口的检测技术,只需要下载少量数据就可提取应用恶意特征信息,不需要完整下载应用,用较少的资源即可进行恶意性检测,如此,大大降低了成本。
附图说明
在附图(其不一定是按比例绘制的)中,相似的附图标记可在不同的视图中描述相似的部件。附图以示例而非限制的方式大体示出了本文中所讨论的各个实施例。
图1为本发明实施例检测的方法流程示意图;
图2为本发明具体实施例恶意软件检测的方法流程示意图;
图3为本发明具体实施例文件字节流格式示意图;
图4为本发明具体实施例恶意软件检测框架流程示意图;
图5本发明实施例检测装置结构示意图;
图6为本发明实施例检测装置硬件结构示意图。
具体实施方式
下面结合附图及实施例对本发明再作进一步详细的描述。
发明人在实现本发明的过程中,发现目前移动应用恶意软件检测的主要方式有两种:
(1)下载完整样本文件后,在不需要对样本解包的情况下,计算样本消息摘要算法第五版(MD5)值、安全哈希算法(SHA1)等样本特征值,判断所计算得到的样本特征值是否存在于预先构建的恶意特征信息库中,依据判断结果,确定是否为恶意软件。这种方式可以在不解析应用样本的前提下,直接计算样本MD5、SHA1等特征值,与已预先构建的特征库进行比对的方式实现,实现简单方便。但是,前提是必须下载完整的应用样本,同时只能简单计算MD5等特征值,特征比对较为单一,难以取得较好的检测效果。
(2)下载完整样本文件后,对样本进行解包、反汇编源代码,然后对生成的代码文件进行解析,提取文件特征、签名证书特征、代码结构特征、恶意行为特征等样本特征信息,判断所提取的样本特征信息是否存在于预先构建的恶意特征信息库中,依据判断结果,确定是否为恶意软件。这种方式中,需要对已下载的应用样本进行解包并生成源代码,通过提取源代码文件中的特征信息,已预先构建的特征库进行比对的方式实现。然而,目前应用样本文件大小越来远大,有些应用文件大小能够达到几百兆,甚至几千兆。对于这么大的应用样本进行解包,还原源代码进行特征提取,需要较长的时间,检测效率较低,同时仍需下载完整的应用样本,用户体验较差。
基于此,在本发明的各种实施例中:根据策略库指定的特征提取策略,下载特定时间窗口对应的第一应用的文件,并从下载的文件中提取特征信息;将提取的特征信息与特征信息库中的信息进行匹配,得到匹配结果;利用匹配结果检测所述第一应用是否为恶意应用软件。
本发明实施例中,采用基于时间窗口的检测技术,只需要下载少量数据就可提取应用恶意特征信息,不需要完整下载应用,用较少的资源即可进行恶意性检测,如此,大大降低了成本。
本发明实施例提供了一种检测方法,可以应用在终端,比如智能手机、笔记本、平板电脑(Pad)等。
如图1所示,本发明实施例提供的检测方法包括:
步骤101:根据策略库指定的特征提取策略,下载特定时间窗口对应的第一应用的文件,并从下载的文件中提取特征信息;
这里,实际应用时,需要先创建所述策略库,在创建时,可以依据应用的文件组成,创建所述策略库。
举个例子来说,一些应用(比如移动应用(应用在移动终端上的第三方应用))主要由签名证书文件、资源文件、支持库、配置文件、执行程序等文件组成,所以可以根据这些文件,来创建所述策略库。创建时,可以根据需要选择所有的文件来创建所述策略库,也可以根据需要选择部分文件来创建所述策略库,本发明实施例对此不作限定。
所述策略库包含指定的文件名以及对应的特征提取策略。其中,实际应用时,根据需要,所述策略库可以包含多个文件及对应的特征提取策略。
实际应用时,终端上可能还安装有很多应用,并不是所有的应用都需要检测,只需要对部分应用进行检测。
基于此,在一实施例中,执行步骤101之前,该方法还可以包括:
利用所述第一应用的文件头标识,确定需要检测所述第一应用是否为恶意应用软件。
其中,所述文件头标识能够表征对应的应用的类型是否是移动应用,当利用所述第一应用的文件头标识确定所述第一应用是移动应用时,才需要检测是否为恶意应用软件,当利用所述第一应用的文件头标识确定所述第一应用不是移动应用时,不需要检测是否为恶意应用软件,也就不需要执行步骤101~103。
实际应用时,一般是从文件数据中提取恶意性检测所需的特征信息,所以在执行步骤101之前,可以先判断一下哪些时间窗口对应的数据是文件数据,然后再根据策略库指定的特征提取策略,从这些时间窗口中确定哪些时间窗口是恶意性检测所需的文件数据对应的时间窗口。
基于此,在一实施例中,执行本步骤之前,该方法还可以包括:
针对所述第一应用对应的每个时间窗口,利用文件头标识,判断时间窗口对应的数据是否是文件数据,当时间窗口对应的数据是文件数据时,确定对应的时间窗口为一个候选时间窗口,得到至少一个候选时间窗口;
相应地,所述根据策略库指定的特征提取策略,下载特定时间窗口对应的第一应用的文件,包括:
从所述至少一个候选时间窗口中确定时间窗口对应的文件包含所述策略库指定的策略文件的至少一个特定时间窗口;
针对确定的每个特定时间窗口,下载对应的第一应用的文件。
其中,所述从下载的文件中提取特征信息,包括:
根据所述策略库中针对每个文件的特征提取策略,从对应的文件中提取特征信息。
实际应用时,下载的文件数据是经过压缩编码处理的文件,所以需要对文件数据进行还原,从还原后的文件数据中提取特征信息。
基于此,在一实施例中,所述从下载的文件中提取特征信息,包括:
对下载的文件中的文件数据进行还原处理;
从还原处理后的文件数据中提取特征信息。
具体地,根据所述策略库中每个文件的特征提取策略,从还原处理后的文件数据中提取特征信息。
其中,所述对下载的文件中的文件数据进行还原处理,包括:
利用下载的所有文件数据形成第一部分文件;
利用下载的所有文件数据的相关信息,构造对应的核心目录及目录结束标识,形成第二部分文件;
将所述第一部分文件和第二部分文件进行组合,得到第一文件;
将所述第一文件进行解压处理,从而得到还原后的文件数据。
需要说明的是:实际应用时,数据下载时可以采用多个时间窗口并行处理的方式进行上述的操作。
步骤102:将提取的特征信息与特征信息库中的信息进行匹配,得到匹配结果;
这里,实际应用时,提取的特征信息可以包含以下信息至少之一:
应用包名、组件特征、数字证书、应用MD5特征、Dex文件MD5。
当然,根据需要提取的特征信息还可以包含其它特征信息,本发明实施例对此不作限定。
步骤103:利用匹配结果检测所述第一应用是否为恶意应用软件。
其中,当所述匹配结果表征提取的特征信息与特征信息库中的信息匹配成功时,确定所述第一应用为恶意应用软件;当所述匹配结果表征提取的特征信息与特征信息库中的信息匹配失败时,确定所述第一应用不为恶意应用软件。
本发明实施例提供的检测方法,根据策略库指定的特征提取策略,下载特定时间窗口对应的第一应用的文件,并从下载的文件中提取特征信息;将提取的特征信息与特征信息库中的信息进行匹配,得到匹配结果;利用匹配结果检测所述第一应用是否为恶意应用软件,采用基于时间窗口的检测技术,只需要下载少量数据就可提取应用恶意特征信息,不需要完整下载应用,用较少的资源即可进行恶意性检测,如此,大大降低了成本。
另外,数据下载时可以采用多个时间窗口并行处理,如此,能够有效地提升下载效率。
除此以外,利用所述第一应用的文件头标识,确定需要检测所述第一应用是否为恶意应用软件时,才执行检测操作,如此,大大节省了检测资源。
依据应用的文件组成,创建所述策略库,创建时可以根据需要确定多个文件和对应的特征提取策略,从而获得多个文件数据,利用多个文件数据提取的特征信息进行组合检测,如此,能够有效提升恶意软件检测的准确率。
下面结合一个具体实施例对本发明再作进一步详细的描述。
在本发明具体实施例中,以安卓(Andriod)应用为例来说明。
本发明具体实施例恶意软件检测的方法,如图2所示,包括以下步骤:
步骤201:创建策略库;
这里,移动应用主要由签名证书文件、资源文件、支持库、配置文件、执行程序等文件组成。所以可以根据这些文件来创建策略库。创建策略库的目的是依据所述策略库下载指定的文件。
其中,创建的策略库包括需要提取特征的文件名及该文件对应的特征提取策略。可包括多个文件及对应的特征提取策略,可任意组合。一个完整Android应用文件目录结构如下:
META-INF(签名证书目录)
CERT.RSA
CERT.SF
MANIFEST.MF
Libs(so库目录)
Res(存放资源文件的目录)
AndroidManifest.xml(程序全局配置文件)
classes.dex(dalvik字节码文件)
resources.arsc(编译后的二进制资源文件)
根据Android应用的这些文件,可以创建策略库,创建的策略库可以如表1所示。
文件名 特征提取策略
CERT.RSA 数字证书特征
Classes.dex 文件MD5特征
表1
步骤202:当请求下载应用时,首先开始下载窗口1对应的字节流,提取字节流首4字节,即文件头标识,如果值为“50 4B 03 04”,则确认下载的应用为Android应用,即确定下载的应用为移动应用,执行步骤203,否则执行步骤207;
这里,对一个Android应用,下载文件数据流由多个下载时间窗口组成,下载时间窗口对应具体的文件1、文件2、…、文件n、核心目录、目录结束标识,文件进行了压缩编码。
其中,文件字节流格式可以是:[文件头标识+文件数据]{1,n}+核心目录+目录结束标识,如图3所示。
需要说明的是:图3所示的文件字节流的文件顺序仅是一个实例,实际应用时,文件顺序不尽相同。
当文件头标识的值为“50 4B 03 04”时,说明下载的应用是移动应用,需要检测是否是恶意应用,当文件头标识的值不是“50 4B 03 04”时,说明下载的应用不是移动应用,不需要检测是否是恶意应用,放弃检测,直接下载应用即可。
步骤203:利用文件头标识,找到对应的数据是文件数据的时间窗口,针对这些时间窗口的每个时间窗口,在对应的偏移地址处获取对应的文件名,当获取的文件名为所述策略库中指定的文件名时,下载该时间窗口对应的文件数据;
也就是说,当时间窗口对应的数据是文件数据时,确定对应的时间窗口为一个候选时间窗口,得到至少一个候选时间窗口;
然后从所述至少一个候选时间窗口中确定时间窗口对应的文件包含所述策略库指定的策略文件(即文件名)的至少一个特定时间窗口;
针对确定的每个特定时间窗口,下载对应的文件数据。
举个例子来说,假设策略库指定的策略文件是Classes.dex,首先按字节提取应用下载数据,查找字节“50 4B 03 04”,找到时确定窗口数据是文件数据,然后顺序下载数据,在偏移46字节处获取到对应的文件名。如果文件名为策略库指定的文件Classes.dex,则继续进行文件数据下载,如果不是指定的策略文件,则不继续下载文件数据,再去判断下一个时间窗口对应的文件名是否是策略库指定的文件Classes.dex,直到找到策略库中指定的文件Classes.dex,并继续下载文件数据,从而提取文件数据。
当策略库指定的策略文件有多个时,对于每个时间窗口,都去执行上述操作,并在对应的偏移地址处获取对应的文件名,当获取的文件名是策略库指定的策略文件中的一个时,继续下载文件数,当获取的文件名不是策略库指定的策略文件中的一个时,则不继续下载文件数据。
提取的文件数据长度为:该文件头标识“50 4B 03 04”至下一个文件标识“504B03 04”的长度,如果是最后一个时间窗口对应的文件时,则文件数据长度为该文件头标识“50 4B 03 04”至核心目录文件标识“50 4B 01 02”的长度。
其中,数据下载时可通过多个时间窗口并行的方式进行文件头标识的查找和数据下载,可有效提升下载效率。
步骤204:对下载的文件数据进行还原处理;
具体地,提取下载的所有的文件数据,形成PART1文件(即第一文件);
计算提取的文件数量、大小和偏移地址等相关信息,即计算所有文件数据的相关信息,并构造核心目录及目录结束标识,形成PART2文件(即第二文件);
将PART1、PART2进行组合形成还原文件,然后进行解压处理,从而还原出所有策略库指定的文件数据。
其中,文件数量为需要还原的文件数量;文件大小为文件压缩后的数据长度;偏移地址为文件相对于文件头位置(偏移地址为0)的偏移量。
针对还原处理,举个例子来说,计算提取的文件数量、大小和偏移地址等相关信息,可以将这些信息按照zip文件格式,文件数据流按照16进制顺序写入文件,还原为zip文件;然后对zip文件进行解压,从而还原出所有策略库指定的文件数据。
步骤205:从还原处理后的文件数据中提取特征信息;
具体地,针对已还原的文件数据,依据文件数据对应的特征提取策略进行恶意特征信息的提取。
也就是说,根据所述策略库中每个文件的特征提取策略,从还原处理后的文件数据中提取特征信息。
其中,所提取的特征信息包括但不限于以下特征:应用包名、组件特征、数字证书、应用MD5特征、Dex文件MD5等特征信息。
步骤206:判断所提取的特征信息是否存在于预先构建的恶意特征信息库中,如果存在则确认为恶意软件,如果不存在则确认不是恶意软件;
也就是说,将提取的特征信息与特征信息库中的信息进行匹配,匹配成功时,确定应用为恶意应用软件;当匹配失败时,确定应用不为恶意应用软件。
步骤207:放弃检测,直接下载应用。
综上所述,本发明实施例提供的方案,如图4所示,实际上是下载部分时间窗口对应的文件数据,然后对这些文件数据进行还原,并基于特征提取策略进行特征提取,再基于提取的特征检测应用是否为恶意软件。
因此,本发明实施例提供的方案,可以理解为是一种基于时间窗口的恶意软件检测方法,该检测方法在不用完全下载样本的前提下,提取应用样本恶意特征信息,并进行检测,下载少量数据就可提取应用恶意特征信息,即用较低的成本和较少的资源提取应用特征,并进行恶意性检测,大大降低了成本,且可大大提升检测效率和用户体验。
另外,策略库可灵活配置,从而可针对性地提取不同的恶意特征信息,并进行组合检测,可有效提升恶意软件检测准确率,有效提升恶意软件检测效率。
为实现本发明实施例的方法,本发明实施例还提供了一种检测装置,设置在终端,比如智能手机、笔记本、Pad等。
如图5所示,本发明实施例提供的检测装置包括:
下载及提取单元51,用于根据策略库指定的特征提取策略,下载特定时间窗口对应的第一应用的文件,并从下载的文件中提取特征信息;
检测单元52,用于将提取的特征信息与特征信息库中的信息进行匹配,得到匹配结果;以及利用匹配结果检测所述第一应用是否为恶意应用软件。
这里,实际应用时,需要先创建所述策略库,在创建时,可以依据应用的文件组成,创建所述策略库。
举个例子来说,一些应用(比如移动应用(应用在移动终端上的第三方应用))主要由签名证书文件、资源文件、支持库、配置文件、执行程序等文件组成,所以可以根据这些文件,来创建所述策略库。创建时,可以根据需要选择所有的文件来创建所述策略库,也可以根据需要选择部分文件来创建所述策略库,本发明实施例对此不作限定。
所述策略库包含指定的文件名以及对应的特征提取策略。其中,实际应用时,根据需要,所述策略库可以包含多个文件及对应的特征提取策略。
基于此,在一实施例中,该装置还可以包括:
创建单元,用于依据应用的文件组成,创建所述策略库。
实际应用时,终端上可能还安装有很多应用,并不是所有的应用都需要检测,只需要对部分应用进行检测。
基于此,在一实施例中,所述下载及提取单元51,还用于:
利用所述第一应用的文件头标识,确定需要检测所述第一应用是否为恶意应用软件。
其中,所述文件头标识能够表征对应的应用的类型是否是移动应用,当利用所述第一应用的文件头标识确定所述第一应用是移动应用时,才需要检测是否为恶意应用软件,当利用所述第一应用的文件头标识确定所述第一应用不是移动应用时,不需要检测是否为恶意应用软件。
实际应用时,一般是从文件数据中提取恶意性检测所需的特征信息,所以下载文件并提取特征信息之前,可以先判断一下哪些时间窗口对应的数据是文件数据,然后再根据策略库指定的特征提取策略,从这些时间窗口中确定哪些时间窗口是恶意性检测所需的文件数据对应的时间窗口。
基于此,在一实施例中,所述下载及提取单元51,还用于:
针对所述第一应用对应的每个时间窗口,利用文件头标识,判断时间窗口对应的数据是否是文件数据,当时间窗口对应的数据是文件数据时,确定对应的时间窗口为一个候选时间窗口,得到至少一个候选时间窗口;
从所述至少一个候选时间窗口中确定时间窗口对应的文件包含所述策略库指定的策略文件的至少一个特定时间窗口;
针对确定的每个特定时间窗口,下载对应的第一应用的文件。
其中,所述从下载的文件中提取特征信息,包括:
所述下载及提取单元51根据所述策略库中针对每个文件的特征提取策略,从对应的文件中提取特征信息。
实际应用时,下载的文件数据是经过压缩编码处理的文件,所以需要对文件数据进行还原,从还原后的文件数据中提取特征信息。
基于此,在一实施例中,所述下载及提取单元51,具体用于:对下载的文件中的文件数据进行还原处理;从还原处理后的文件数据中提取特征信息。
具体地,所述下载及提取单元51根据所述策略库中每个文件的特征提取策略,从还原处理后的文件数据中提取特征信息。
其中,所述对下载的文件中的文件数据进行还原处理,包括:
所述下载及提取单元51利用下载的所有文件数据形成第一部分文件;
所述下载及提取单元51利用下载的所有文件数据的相关信息,构造对应的核心目录及目录结束标识,形成第二部分文件;
所述下载及提取单元51将所述第一部分文件和第二部分文件进行组合,得到第一文件;
所述下载及提取单元51将所述第一文件进行解压处理,从而得到还原后的文件数据。
需要说明的是:实际应用时,数据下载时可以采用多个时间窗口并行处理的方式进行上述的操作。
实际应用时,提取的特征信息可以包含以下信息至少之一:
应用包名、组件特征、数字证书、应用MD5特征、Dex文件MD5。
当然,根据需要提取的特征信息还可以包含其它特征信息,本发明实施例对此不作限定。
当所述匹配结果表征提取的特征信息与特征信息库中的信息匹配成功时,所述检测单元52确定所述第一应用为恶意应用软件;当所述匹配结果表征提取的特征信息与特征信息库中的信息匹配失败时,所述检测单元52确定所述第一应用不为恶意应用软件。
需要说明的是:上述实施例提供的检测装置在进行恶意应用软件时,仅以上述各程序模块的划分进行举例说明,实际应用中,可以根据需要而将上述处理分配由不同的程序模块完成,即将装置的内部结构划分成不同的程序模块,以完成以上描述的全部或者部分处理。
实际应用时,所述下载及提取单元51、检测单元52及创建单元可由检测装置中的处理器实现。当然,实际应用时,所述检测装置还可以包括存储器,处理器需要读取存储器的信息,并结合硬件来实现其功能。
对应上述程序模块的硬件实现,本发明实施例提供的检测装置,如图6所示,该检测装置60包括:处理器61和用于存储能够在处理器上运行的计算机程序的存储器62,
其中,所述处理器61用于运行所述计算机程序时,执行:
根据策略库指定的特征提取策略,下载特定时间窗口对应的第一应用的文件,并从下载的文件中提取特征信息;
将提取的特征信息与特征信息库中的信息进行匹配,得到匹配结果;
利用匹配结果检测所述第一应用是否为恶意应用软件。
其中,在一实施例中,所述处理器61用于运行所述计算机程序时,还执行:
根据策略库指定的特征提取策略,下载特定时间窗口对应的第一应用的文件之前,针对所述第一应用对应的每个时间窗口,利用文件头标识,判断时间窗口对应的数据是否是文件数据,当时间窗口对应的数据是文件数据时,确定对应的时间窗口为一个候选时间窗口,得到至少一个候选时间窗口;
从所述至少一个候选时间窗口中确定时间窗口对应的文件包含所述策略库指定的策略文件的至少一个特定时间窗口;
针对确定的每个特定时间窗口,下载对应的第一应用的文件。
在一实施例中,所述处理器61用于运行所述计算机程序时,执行:
对下载的文件中的文件数据进行还原处理;
从还原处理后的文件数据中提取特征信息。
在一实施例中,所述处理器61用于运行所述计算机程序时,执行:
利用下载的所有文件数据形成第一部分文件;
利用下载的所有文件数据的相关信息,构造对应的核心目录及目录结束标识,形成第二部分文件;
将所述第一部分文件和第二部分文件进行组合,得到第一文件;
将所述第一文件进行解压处理。
在一实施例中,所述处理器61用于运行所述计算机程序时,执行:
根据所述策略库中针对每个文件的特征提取策略,从对应的文件中提取特征信息。
在一实施例中,所述处理器61用于运行所述计算机程序时,还执行:
根据策略库指定的特征提取策略,下载特定时间窗口对应的第一应用的文件之前,利用所述第一应用的文件头标识,确定需要检测所述第一应用是否为恶意应用软件。
在一实施例中,所述处理器61用于运行所述计算机程序时,还执行:
依据应用的文件组成,创建所述策略库。
当然,实际应用时,如图6所示,该装置60还可以包括:至少一个处理器61、至少一个网络接口64和用户接口63。检测装置60中的各个组件通过总线系统65耦合在一起。可理解,总线系统65用于实现这些组件之间的连接通信。总线系统65除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图6中将各种总线都标为总线系统65。
其中,用户接口63可以包括显示器、键盘、鼠标、轨迹球、点击轮、按键、按钮、触感板或者触摸屏等。
网络接口64用于检测装置60与其他设备之间有线或无线方式的通信。
可以理解,存储器62可以是易失性存储器或非易失性存储器,也可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(ROM,Read Only Memory)、可编程只读存储器(PROM,Programmable Read-Only Memory)、可擦除可编程只读存储器(EPROM,Erasable Programmable Read-Only Memory)、电可擦除可编程只读存储器(EEPROM,Electrically Erasable Programmable Read-Only Memory)、磁性随机存取存储器(FRAM,ferromagnetic random access memory)、快闪存储器(Flash Memory)、磁表面存储器、光盘、或只读光盘(CD-ROM,Compact Disc Read-Only Memory);磁表面存储器可以是磁盘存储器或磁带存储器。易失性存储器可以是随机存取存储器(RAM,Random AccessMemory),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(SRAM,Static Random Access Memory)、同步静态随机存取存储器(SSRAM,Synchronous Static Random Access Memory)、动态随机存取存储器(DRAM,Dynamic Random Access Memory)、同步动态随机存取存储器(SDRAM,SynchronousDynamic Random Access Memory)、双倍数据速率同步动态随机存取存储器(DDRSDRAM,Double Data Rate Synchronous Dynamic Random Access Memory)、增强型同步动态随机存取存储器(ESDRAM,Enhanced Synchronous Dynamic Random Access Memory)、同步连接动态随机存取存储器(SLDRAM,SyncLink Dynamic Random Access Memory)、直接内存总线随机存取存储器(DRRAM,Direct Rambus Random Access Memory)。本发明实施例描述的存储器62旨在包括但不限于这些和任意其它适合类型的存储器。
本发明实施例中的存储器62用于存储各种类型的数据以支持检测装置60的操作。这些数据的示例包括:用于在检测装置60上操作的任何计算机程序,如操作系统621和应用程序622;联系人数据;电话簿数据;消息;图片;视频等。其中,操作系统621包含各种系统程序,例如框架层、核心库层、驱动层等,用于实现各种基础业务以及处理基于硬件的任务。应用程序622可以包含各种应用程序,例如媒体播放器(Media Player)、浏览器(Browser)等,用于实现各种应用业务。实现本发明实施例方法的程序可以包含在应用程序622中。
上述本发明实施例揭示的方法可以应用于处理器61中,或者由处理器61实现。处理器61可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器61中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器61可以是通用处理器、数字信号处理器(DSP,Digital Signal Processor),或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。处理器61可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者任何常规的处理器等。结合本发明实施例所公开的方法的步骤,可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于存储介质中,该存储介质位于存储器62,处理器61读取存储器62中的信息,结合其硬件完成前述方法的步骤。
在示例性实施例中,检测装置60可以被一个或多个应用专用集成电路(ASIC,Application Specific Integrated Circuit)、DSP、可编程逻辑器件(PLD,ProgrammableLogic Device)、复杂可编程逻辑器件(CPLD,Complex Programmable Logic Device)、现场可编程门阵列(FPGA,Field-Programmable Gate Array)、通用处理器、控制器、微控制器(MCU,Micro Controller Unit)、微处理器(Microprocessor)、或其他电子元件实现,用于执行前述方法。
在示例性实施例中,本发明实施例还提供了一种计算机可读存储介质,例如包括计算机程序的存储器62,上述计算机程序可由检测装置60的处理器61执行,以完成前述方法所述步骤。计算机可读存储介质可以是FRAM、ROM、PROM、EPROM、EEPROM、Flash Memory、磁表面存储器、光盘、或CD-ROM等存储器;也可以是包括上述存储器之一或任意组合的各种设备,如移动电话、计算机、平板设备、个人数字助理等。
具体地,本发明实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器运行时,执行:
根据策略库指定的特征提取策略,下载特定时间窗口对应的第一应用的文件,并从下载的文件中提取特征信息;
将提取的特征信息与特征信息库中的信息进行匹配,得到匹配结果;
利用匹配结果检测所述第一应用是否为恶意应用软件。
其中,在一实施例中,所述计算机程序被处理器运行时,还执行:
根据策略库指定的特征提取策略,下载特定时间窗口对应的第一应用的文件之前,针对所述第一应用对应的每个时间窗口,利用文件头标识,判断时间窗口对应的数据是否是文件数据,当时间窗口对应的数据是文件数据时,确定对应的时间窗口为一个候选时间窗口,得到至少一个候选时间窗口;
从所述至少一个候选时间窗口中确定时间窗口对应的文件包含所述策略库指定的策略文件的至少一个特定时间窗口;
针对确定的每个特定时间窗口,下载对应的第一应用的文件。
在一实施例中,所述计算机程序被处理器运行时,执行:
对下载的文件中的文件数据进行还原处理;
从还原处理后的文件数据中提取特征信息。
在一实施例中,所述计算机程序被处理器运行时,执行:
利用下载的所有文件数据形成第一部分文件;
利用下载的所有文件数据的相关信息,构造对应的核心目录及目录结束标识,形成第二部分文件;
将所述第一部分文件和第二部分文件进行组合,得到第一文件;
将所述第一文件进行解压处理。
在一实施例中,所述计算机程序被处理器运行时,执行:
根据所述策略库中针对每个文件的特征提取策略,从对应的文件中提取特征信息。
在一实施例中,所述计算机程序被处理器运行时,还执行:
根据策略库指定的特征提取策略,下载特定时间窗口对应的第一应用的文件之前,利用所述第一应用的文件头标识,确定需要检测所述第一应用是否为恶意应用软件。
在一实施例中,所述计算机程序被处理器运行时,还执行:
依据应用的文件组成,创建所述策略库。
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。

Claims (9)

1.一种检测方法,其特征在于,所述方法包括:
根据策略库指定的特征提取策略,下载特定时间窗口对应的第一应用的文件,其中,所述第一应用由多个时间窗口的文件组成,多个时间窗口的文件进行了压缩编码;构造对应的核心目录及目录结束标识,并利用下载的特定时间窗口对应的文件,以及构造的核心目录及目录结束标识,形成还原文件;对所述还原文件进行解压缩处理,并从解压缩处理后的文件中提取特征信息;所述策略库包含签名证书文件、资源文件、支持库、配置文件、执行程序;下载的文件为所述策略库中的文件;
将提取的特征信息与特征信息库中的信息进行匹配,得到匹配结果;
利用匹配结果检测所述第一应用是否为恶意应用软件;
所述根据策略库指定的特征提取策略,下载特定时间窗口对应的第一应用的文件之前,所述方法还包括:
针对所述第一应用对应的每个时间窗口,利用文件头标识,判断时间窗口对应的数据是否是文件数据,当时间窗口对应的数据是文件数据时,确定对应的时间窗口为一个候选时间窗口,得到至少一个候选时间窗口;
相应地,所述根据策略库指定的特征提取策略,下载特定时间窗口对应的第一应用的文件,包括:
从所述至少一个候选时间窗口中确定时间窗口对应的文件包含所述策略库指定的策略文件的至少一个特定时间窗口;
针对确定的每个特定时间窗口,下载对应的第一应用的文件。
2.根据权利要求1所述的方法,其特征在于,所述从解压缩处理后的文件中提取特征信息,包括:
根据所述策略库中针对每个文件的特征提取策略,从对应的文件中提取特征信息。
3.根据权利要求1或2所述的方法,其特征在于,所述根据策略库指定的特征提取策略,下载特定时间窗口对应的第一应用的文件之前,所述方法还包括:
利用所述第一应用的文件头标识,确定需要检测所述第一应用是否为恶意应用软件。
4.根据权利要求1或2所述的方法,其特征在于,所述方法还包括:
依据应用的文件组成,创建所述策略库。
5.一种检测装置,其特征在于,所述装置包括:
下载及提取单元,用于根据策略库指定的特征提取策略,下载特定时间窗口对应的第一应用的文件,其中,所述第一应用由多个时间窗口的文件组成,多个时间窗口的文件进行了压缩编码;构造对应的核心目录及目录结束标识,并利用下载的特定时间窗口对应的文件,以及构造的核心目录及目录结束标识,形成还原文件;对所述还原文件进行解压缩处理,并从解压缩处理后的文件中提取特征信息;所述策略库包含签名证书文件、资源文件、支持库、配置文件、执行程序;下载的文件为所述策略库中的文件;
检测单元,用于将提取的特征信息与特征信息库中的信息进行匹配,得到匹配结果;以及利用匹配结果检测所述第一应用是否为恶意应用软件;
所述下载及提取单元,还用于:
针对所述第一应用对应的每个时间窗口,利用文件头标识,判断时间窗口对应的数据是否是文件数据,当时间窗口对应的数据是文件数据时,确定对应的时间窗口为一个候选时间窗口,得到至少一个候选时间窗口;
从所述至少一个候选时间窗口中确定时间窗口对应的文件包含所述策略库指定的策略文件的至少一个特定时间窗口;
针对确定的每个特定时间窗口,下载对应的第一应用的文件。
6.根据权利要求5所述的装置,其特征在于,所述下载及提取单元,还用于:
利用所述第一应用的文件头标识,确定需要检测所述第一应用是否为恶意应用软件。
7.根据权利要求5所述的装置,其特征在于,所述装置还包括:
创建单元,用于依据应用的文件组成,创建所述策略库。
8.一种检测装置,其特征在于,包括:处理器和用于存储能够在处理器上运行的计算机程序的存储器,
其中,所述处理器用于运行所述计算机程序时,执行权利要求1至4任一项所述方法的步骤。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至4任一项所述方法的步骤。
CN201710421957.7A 2017-06-07 2017-06-07 一种检测方法、装置及计算机可读存储介质 Active CN109002710B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710421957.7A CN109002710B (zh) 2017-06-07 2017-06-07 一种检测方法、装置及计算机可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710421957.7A CN109002710B (zh) 2017-06-07 2017-06-07 一种检测方法、装置及计算机可读存储介质

Publications (2)

Publication Number Publication Date
CN109002710A CN109002710A (zh) 2018-12-14
CN109002710B true CN109002710B (zh) 2021-06-22

Family

ID=64573273

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710421957.7A Active CN109002710B (zh) 2017-06-07 2017-06-07 一种检测方法、装置及计算机可读存储介质

Country Status (1)

Country Link
CN (1) CN109002710B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112152832B (zh) * 2019-06-28 2023-01-13 中国移动通信有限公司研究院 管理对象的处理方法、装置、相关设备及存储介质
CN113127418A (zh) * 2019-12-30 2021-07-16 Oppo广东移动通信有限公司 文件检测方法、装置、终端及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100620313B1 (ko) * 2005-06-15 2006-09-06 (주)이월리서치 마이크로소프트 실행파일의 구조적 특성을 이용한 악성프로그램 검출 시스템 및 방법
CN103106365A (zh) * 2013-01-25 2013-05-15 北京工业大学 一种移动终端上的恶意应用软件的检测方法
KR20160073801A (ko) * 2014-12-17 2016-06-27 고려대학교 산학협력단 문서에 포함된 악성 공격 코드 탐지 시스템 및 방법
KR20160099159A (ko) * 2015-02-11 2016-08-22 한국전자통신연구원 악성 코드를 탐지하기 위한 전자 시스템 및 방법
CN106529291A (zh) * 2016-10-19 2017-03-22 北京海杭通讯科技有限公司 恶意软件检测方法

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100942795B1 (ko) * 2007-11-21 2010-02-18 한국전자통신연구원 악성프로그램 탐지장치 및 그 방법
EP3042285B1 (en) * 2013-09-04 2018-11-21 Hewlett-Packard Development Company, L.P. Header section download of package
CN105320883B (zh) * 2015-11-11 2018-05-15 北京奇虎科技有限公司 文件安全加载实现方法及装置
CN106778229B (zh) * 2016-11-29 2020-02-14 北京瑞星网安技术股份有限公司 一种基于vpn的恶意应用下载拦截方法及系统

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100620313B1 (ko) * 2005-06-15 2006-09-06 (주)이월리서치 마이크로소프트 실행파일의 구조적 특성을 이용한 악성프로그램 검출 시스템 및 방법
CN103106365A (zh) * 2013-01-25 2013-05-15 北京工业大学 一种移动终端上的恶意应用软件的检测方法
KR20160073801A (ko) * 2014-12-17 2016-06-27 고려대학교 산학협력단 문서에 포함된 악성 공격 코드 탐지 시스템 및 방법
KR20160099159A (ko) * 2015-02-11 2016-08-22 한국전자통신연구원 악성 코드를 탐지하기 위한 전자 시스템 및 방법
CN106529291A (zh) * 2016-10-19 2017-03-22 北京海杭通讯科技有限公司 恶意软件检测方法

Also Published As

Publication number Publication date
CN109002710A (zh) 2018-12-14

Similar Documents

Publication Publication Date Title
TWI712956B (zh) 行動終端應用程式的更新方法和裝置
CN106462430B (zh) 应用升级包获取方法及装置
US20130238574A1 (en) Cloud system and file compression and transmission method in a cloud system
CN108228224B (zh) 一种嵌入式系统差分升级的方法及装置
CN103123588A (zh) 一种获取差分升级补丁的方法及系统
WO2017206897A1 (zh) 识别文件的方法及相关设备
CN105138376A (zh) 混合模式应用、其网页资源升级方法、移动终端以及系统
CN111008034B (zh) 一种补丁生成方法及装置
CN109002710B (zh) 一种检测方法、装置及计算机可读存储介质
CN116522368A (zh) 一种物联网设备固件解密解析方法、电子设备、介质
CN112667246A (zh) 应用功能扩展的方法、装置及电子设备
Park et al. New flash memory acquisition methods based on firmware update protocols for LG Android smartphones
US20210349855A1 (en) Method of data structuring for difference between old and new data and device thereof
CN109934016B (zh) 应用的签名校验方法、装置及电子设备
WO2020233044A1 (zh) 一种插件校验方法、设备、服务器及计算机可读存储介质
CN110505289B (zh) 文件下载方法及装置、计算机可读介质、无线通信设备
CN112698842A (zh) 获取应用程序的额外信息的方法及装置
CN115357897A (zh) 一种开源软件识别方法及装置
CN111291001A (zh) 计算机文件的读取方法、装置、计算机系统及存储介质
CN112579364B (zh) 一种基于qnx6fs文件系统的删除文件深度恢复方法和装置
CN115080114A (zh) 应用程序的移植处理方法、装置和介质
CN113901010A (zh) 一种安卓应用程序包压缩方法及装置
CN114489698A (zh) 应用程序安装方法和装置
CN108519884B (zh) 一种应用程序安装包更新方法、融合方法及相关装置
CN111447298A (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