恶意软件检测方法与流程

文档序号:12123299阅读:240来源:国知局

本发明涉及一种移动终端的安全防护,尤其涉及一种对移动端进行恶意软件检测的方法。



背景技术:

随着移动互联网的迅速发展,具有移动操作系统的智能手机的迅速发展,给人民带来方便的同时也暴露了很多安全的问题。

智能手机拥有独立的智能操作系统,相比于其他操作系统,随着基于l inux内核的安卓智能手机操作系统的市场份额越来越多,安卓手机已经成为当前恶意软件最重要的攻击目标,随着市场上针对智能终端的安全方案越来越多。

系统权限是安卓恶意软件检测的一个重要元素,好在随着智能系统的发展在智能安卓系统中能够对系统的资源的访问能够进行很好的防护,并且市场也取得了一定的成果。但是由于安卓采用的权限可采用自定义安全机制,保护应用程序的权限,并且相应开发者稂莠不齐,没有相应保护自定义安全机制,导致一定的应用程序需要申请权限可以来访问重要资源。并且针对一些应用程序申请比其所需更多的权限时将有可能引起特权提升攻击没有进行安全权限拦截。一些开发人员的不良习惯,应用程序申请过多权限的情况也经常发生,因此单纯使用系统权限检查机制,不足以作为恶意软件检测的唯一出路。

在中国专利文件:CN201510142665.0中,公开了一种批量安卓恶意软件检测方法,包括如下步骤:A、分别提取并计算应用程序的系统权限特征、程序控制流程图特征和系统调用特征的频率向量,对这些频率向量进行组合拼接成综合特征向量;B、使用数据挖掘中的分类算法对所述综合特征向量进行分类;C、计算电量记录对恶意软件检测和intent记录对恶意软件检测的贡献值;D、对分类结果数值与电量记录和intent记录对恶意软件检测的贡献值进行加权计算,若计算结果超过设定的阈值,则判定为恶意软件,否则判定为正常软件。该技术虽然可以将系统权限、系统调用、程序控制流程图等混合起来组成一个新的特征向量,并使用分类算法对恶意软件进行检测。该方案虽然有一定的检查作用,但是主要在智能终端领域对恶意软件进行检查,这就对智能终端的性能提出了要求,并且在现有的技术中既采用了提取静态特征,也采用触发随机事件提取动态特征二种方式,对资源终端来说提出了新的性能要求,相对于其他现有的安全检测方法实现过程也不是很简单,会加大研发调试的难度。

在中国专利文件CN201510609599.3,公开了一种检测移动终端中是否存在恶意软件的方法和移动终端:该方法包括:检测所述移动终端的缓存中是否存在记录上次收集信息的时间戳的文件;根据检测结果收集所述移动终端中已安装软件的信息;以及将所收集的信息发送至服务器进行检测,其中所述服务器预设有非恶意软件的信息,以用于与所收集的信息进行比较。根据该方法可将所有通过认证或检测的非恶意软件的信息预设在服务器中,通过收集移动终端中安装的软件的信息,并发送至服务器进行比较,可确定移动终端中所安装的软件是否都是非恶意软件。该技术中,移动终端增加监测单元,收集单元,发送单元。在收集单元中又分为比较子单元,收集子单元。这样虽然能达到一定收集效果,但是这些是在终端中进行,会加重系统开销。

中国专利文件CN201110392745.3,公开了一种移动智能终端恶意软件分析系统:一移动智能终端客户端程序,用以搜集软件运行时的行为信息,将该信息发送到后台服务器;一软件行为信息分析后台服务器,采用相关算法对软件行为信息进行分析,判断软件是否有恶意行为,并将分析结果返回移动智能终端;一客户端与后台服务器通信协议,用以实现二者之间的数据通信;以及,一分布式运行环境,用以提供软件行为分析的大量数据。恶意软件行为分析系统能够有效的对新出现的恶意软件进行检测,并减小移动智能终端在恶意软件检测上的系统资源开销,但是该方案同时对服务性能提出更高的要求,相应成本也会更高。而且在对大批量用户行为特征进行监督学习是需要一个学习过程,是需要时间累积的,因此这种方式对于当前病毒新变种很多的情况下,不能够及时进行反馈。

中国专利文件CN201510540664.1,公开了一种移动终端的云病毒检测方法:一种移动终端的云病毒检测方法,涉及移动云计算。利用云端安全服务器的计算资源来检测移动终端的病毒,以减少移动终端的能量消耗,加快检测速度,并提高检测精度。移动终端将所产生的跟踪日志文件分为若干模块,并根据当前无线传输的带宽和云端服务器的检测速度,使用Q学习算法设计跟踪日志文件模块的云端服务器卸载比率,即通过无线网络传输部分跟踪日志文件到云端服务器,进行云端病毒检测。适用于手机和平板电脑等移动终端,提高其病毒检测的速度和精度,减少移动终端的能量和存储等消耗。该方案会由于当前传输的带宽,和云端服务器的检测速度的影响,无法控制被检查终端的发射功率和无线信道带宽,因此该技术方案也有一定的限制。

综上,急需一种可解决上述问题的恶意软件检测方法。



技术实现要素:

本发明的目的是提供一种恶意软件检测方法,使用唯一的识别码在移动终端和远程服务端之间建立唯一链接,使用远程服务端与移动终端双方配合联动对恶意软件进行检测,检测结果准确全面,且可及时将检测结果在远程服务端进行登记,且对移动终端的要求低,有效减轻了移动终端恶意行为分析的资源消耗,使用远程远程服务端对恶意软件进行静态检测,检测速度快。

为了实现上有目的,本发明公开了一种恶意软件检测方法,用于对移动终端上安装的第三方软件进行恶意检测,包括以下步骤:(1)对每一所述移动终端设置一唯一的识别码,所述移动终端初始化结束后向所述远程服务端发送所述识别码并依据所述识别码在所述移动终端与远程服务端之间建立连接通道;(2)所述远程服务端获取所述移动终端中所述第三方软件的应用程序,并对所述第三方软件进行静态分析并将分析结果通过所述识别码输送至所述移动终端;(3)所述移动终端判断所述静态分析的分析结果是否为恶意信息,若是则生成预设的处理命令以对所述第三方软件进行处理,若否则在本地对所述第三方软件进行动态分析,将所述动态分析的结果上传所述远程服务端进行登记并依据动态分析的结果生成相应的处理命令以对所述第三方软件进行处理。

与现有技术相比,本发明通过识别码建立移动终端和远程服务端之间的唯一链接,通过唯一识别标示每一台移动终端,远程服务端通过下载模式获取移动终端的第三方软件的应用程序,并对应用层进行静态分析检测恶意应用,分析速度快,且大大减轻了移动终端的恶意行为分析的资源消耗,并在如果远程远程服务端不能检测出第三方软件恶意行为时,通过建立的链路将其分析结果通知告知终端,终端启动动态分析应用程序的行为,使用远程服务端与移动终端双方配合联动的机制对恶意软件进行检测,检测结果准确全面,且可及时将检测结果在远程服务端进行登记。

较佳地,所述步骤(2)具体包括:所述移动终端对所述第三软件进行静态扫描以获得第三方软件的程序特征文件,并将所述程序特征文件上传至所述远程服务端,所述远程服务端依据所述程序特征文件获取所述第三方软件的程序文件以对所述第三方软件进行静态分析并通过所述识别码将分析结果输送至所述移动终端。

具体地,所述第三方软件的程序特征文件包括第三方软件程序包、第三方软件程序名以及第三方软件版本号,所述远程服务端依据所述程序特征文件获取所述第三方软件的程序文件的方法包括:所述远程服务端依据所述第三方软件的程序特征文件在云端下载所述第三方软件的程序文件以对所述第三方软件进行静态分析。该方案有效节省了移动终端的传输流量。

具体地,所述第三方软件的程序特征文件还包括第三方软件程序包、第三方软件程序名、第三方软件版本号以及第三方软件的程序文件,所述第三方软件的程序文件包括Manifest文件、dex文件、二进制文件、资源文件、软件权限以及敏感API。该方案可使得远程服务端实际检测第三方软件内容。

具体地,所述程序特征文件还包括代表所述第三方软件的程序特征文件是否上传成功的标志位,所述远程服务端依据所述标志位判断所述第三方软件的应用程序的获取是否成功,若是则对所述第三方软件进行静态分析,若否则通知所述移动终端进行自处理并将自处理的结果上传至远程服务端进行登记,所述移动终端的自处理包括本地静态扫描分析、数据库下载,以及数据存储。

较佳地,所述远程服务端对所述第三方软件进行静态静态分析的方法为:对所述第三方软件的应用程序进行逆向扫描分析。

较佳地,所述步骤(2)中,所述远程服务端在所述分析结果为非恶意时,还将此次静态分析搜集到的搜集信息输送至移动终端,所述移动终端还依据所述搜集信息和本地用户隐私进行自处理并将自处理的结果上传至远程服务端进行登记,所述移动终端的自处理包括本地静态扫描分析、数据库下载,以及数据存储。该方案使得移动终端可针对自身的隐私设定和软件的权限设置比对来确定第三方软件是否有着非法请求等恶意行为,提高检测的准确性。

较佳地,所述移动终端在分析结果为恶意时对所述第三方软件的恶意应用处理方法为:将所述第三方软件依据预先设置的恶意应用处理命令进行处理,并将恶意应用处理结果通知用户。

具体地,当所述恶意应用处理结果为处理失败时,将恶意应用处理结果上传远程服务端,所述远程服务端远程处理所述移动终端的第三方软件。该方案使得当移动终端处理失败时,远程的远程服务端可以启动暂停终端相应服务等手段从远程服务端对第三方软件进行处理。

附图说明

图1是本发明所述恶意软件检测方法的流程图。

具体实施方式

为详细说明本发明的技术内容、构造特征、所实现目的及效果,以下结合实施方式并配合附图详予说明。

参考图1,本发明公开了一种恶意软件检测方法100,用于对移动终端上安装的第三方软件进行恶意检测,包括以下步骤:(1)对每一所述移动终端设置一唯一的识别码,所述移动终端初始化结束后向所述远程服务端发送所述识别码并依据所述识别码在所述移动终端与远程服务端之间建立连接通道;(2)所述远程服务端获取所述移动终端中所述第三方软件的应用程序,(3)对所述第三方软件进行静态分析并将分析结果通过所述识别码输送至所述移动终端;(4)所述移动终端判断所述静态分析的分析结果是否为恶意信息,若是(5)则生成预设的处理命令以对所述第三方软件进行处理,若否则(6)在本地对所述第三方软件进行动态分析,(8)将所述动态分析的结果上传所述远程服务端进行登记并(7)依据动态分析的结果生成相应的处理命令以对所述第三方软件进行处理。其中,本实施例中,所述远程服务端对所述第三方软件进行静态静态分析的方法为:对所述第三方软件的应用程序进行逆向扫描分析。

较佳者,在一个优选实施例中,所述步骤(2)具体包括:所述移动终端对所述第三软件进行静态扫描以获得第三方软件的程序特征文件,并将所述程序特征文件上传至所述远程服务端,所述远程服务端依据所述程序特征文件获取所述第三方软件的程序文件以对所述第三方软件进行静态分析并通过所述识别码将分析结果输送至所述移动终端。其中,所述第三方软件的程序特征文件包括第三方软件程序包、第三方软件程序名以及第三方软件版本号,所述远程服务端依据所述程序特征文件获取所述第三方软件的程序文件的方法包括:所述远程服务端依据所述第三方软件的程序特征文件在云端下载所述第三方软件的程序文件以对所述第三方软件进行静态分析。该方案有效节省了移动终端的传输流量。

较佳者,在另一个优选实施例中,所述第三方软件的程序特征文件还包括第三方软件程序包、第三方软件程序名、第三方软件版本号以及第三方软件的程序文件,所述第三方软件的程序文件包括Manifest文件、dex文件、二进制文件、资源文件、软件权限以及敏感API。该方案可使得远程服务端实际检测第三方软件内容。

为了防止由于移动终端上传失败造成检测失误,所述程序特征文件还包括代表所述第三方软件的程序特征文件是否上传成功的标志位,所述远程服务端依据所述标志位判断所述第三方软件的应用程序的获取是否成功,若是则对所述第三方软件进行静态分析,若否则通知所述移动终端进行自处理并将自处理的结果上传至远程服务端进行登记,所述移动终端的自处理包括本地静态扫描分析、数据库下载,以及数据存储。

较佳者,所述步骤(2)中,所述远程服务端在所述分析结果为非恶意时,还将此次静态分析搜集到的搜集信息输送至移动终端,所述移动终端还依据所述搜集信息和本地用户隐私进行自处理并将自处理的结果上传至远程服务端进行登记,所述移动终端的自处理包括本地静态扫描分析、数据库下载,以及数据存储。

较佳者,所述移动终端在分析结果为恶意时对所述第三方软件的恶意应用处理方法为:将所述第三方软件依据预先设置的恶意应用处理命令进行处理,并将恶意应用处理结果通知用户。

更佳者,当所述恶意应用处理结果为处理失败时,所述远程服务端远程处理所述移动终端的第三方软件。该方案使得当移动终端处理失败时,远程的远程服务端可以启动暂停移动终端相应服务等手段从远程服务端对第三方软件进行处理。

以上所揭露的仅为本发明的优选实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明申请专利范围所作的等同变化,仍属本发明所涵盖的范围。

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