检测智能终端中恶意代码的方法及装置制造方法及图纸

技术编号:10190414 阅读:127 留言:0更新日期:2014-07-09 10:32
本发明专利技术公开了一种检测智能终端中恶意代码的方法及装置。其中的方法包括:从智能终端操作系统的应用程序层,获取应用程序的虚拟机执行文件;对虚拟机执行文件进行反编译,得到反编译的函数信息结构;解析反编译的函数信息结构,得到具有对应关系的虚拟机指令序列和虚拟机助记符序列;分析确定虚拟机助记符序列的函数功能,根据具有函数功能的虚拟机助记符序列对应的虚拟机指令序列确定目标特征;利用预先设置的恶意代码特征库,对目标特征进行匹配,如果匹配成功,则确定所述应用程序的虚拟机执行文件包含恶意代码。应用本发明专利技术方案,可对被篡改的应用程序或者对恶意软件进行查杀,保护智能终端的安全。

【技术实现步骤摘要】
【专利摘要】本专利技术公开了一种检测智能终端中恶意代码的方法及装置。其中的方法包括:从智能终端操作系统的应用程序层,获取应用程序的虚拟机执行文件;对虚拟机执行文件进行反编译,得到反编译的函数信息结构;解析反编译的函数信息结构,得到具有对应关系的虚拟机指令序列和虚拟机助记符序列;分析确定虚拟机助记符序列的函数功能,根据具有函数功能的虚拟机助记符序列对应的虚拟机指令序列确定目标特征;利用预先设置的恶意代码特征库,对目标特征进行匹配,如果匹配成功,则确定所述应用程序的虚拟机执行文件包含恶意代码。应用本专利技术方案,可对被篡改的应用程序或者对恶意软件进行查杀,保护智能终端的安全。【专利说明】检测智能终端中恶意代码的方法及装置
本专利技术涉及智能终端安全
,具体涉及一种检测智能终端中恶意代码的方法及装置。
技术介绍
随着科技发展,智能终端具有越来越多的功能。例如,人们的手机从传统的GSM、TDMA数字手机转向了拥有能够处理多媒体资源、提供网页浏览、电话会议、电子商务等多种信息服务的智能手机。然而,品种日益繁多的手机恶意代码攻击以及形势日益严峻的个人数据安全问题也随之而来,越来越多的手机病毒让智能手机用户饱受其苦。
技术实现思路
鉴于上述问题,提出了本专利技术以便提供一种克服上述问题或者至少部分地解决上述问题的检测智能终端中恶意代码的方法及装置。依据本专利技术的一个方面,提供一种检测智能终端中恶意代码的方法,包括:从智能终端操作系统的应用程序层,获取应用程序的虚拟机执行文件;对所述虚拟机执行文件进行反编译,得到反编译的函数信息结构;解析所述反编译的函数信息结构,得到具有对应关系的虚拟机指令序列和虚拟机助记符序列;分析确定所述虚拟机助记符序列的函数功能,根据具有所述函数功能的所述虚拟机助记符序列对应的虚拟机指令序列确定目标特征;利用预先设置的恶意代码特征库,对所述目标特征进行匹配,如果匹配成功,则确定所述应用程序的虚拟机执行文件包含恶意代码。优选地,分析确定所述虚拟机助记符序列的函数功能包括:从所述虚拟机助记符序列中提取得到函数调用序列;通过分析按照顺序执行的多个函数调用序列的指令,确定所述虚拟机助记符序列的函数功能。优选地,所述多个函数调用序列按照顺序执行的指令包括:解密字符串、创建消息签名实例、获取字符串子针、哈希加密。优选地,所述根据具有所述函数功能的所述虚拟机助记符序列对应的虚拟机指令序列确定目标特征包括:将具有所述函数功能的所述虚拟机助记符序列对应的虚拟机指令序列作为所述目标特征,或者,将具有所述函数功能的所述虚拟机助记符序列对应的虚拟机指令序列的子集作为所述目标特征。优选地,所述利用预先设置的恶意代码特征库,对所述目标特征进行匹配包括:利用预先设置的恶意代码特征库,对所述目标特征进行函数相似度匹配,和/或,对所述函数调用序列进行函数特征模糊匹配。优选地,对所述虚拟机执行文件进行样本特征查杀、基于虚拟机查杀、启发式查杀,和/或,相似样本聚类。优选地,所述对所述虚拟机执行文件进行反编译,得到反编译的函数信息结构包括:根据虚拟机执行文件格式对虚拟机执行文件进行解析,得到每个类的函数信息结构体;根据所述函数信息结构体中的字段,确定所述虚拟机执行文件的函数的位置及大小,得到所述反编译的函数信息结构。优选地,所述根据函数信息结构体中的字段,确定所述虚拟机执行文件的函数的位置及大小包括:解析所述函数信息结构体,得到指示虚拟机执行文件的函数位置的字节码数组字段以及指示虚拟机执行文件的函数大小的列表长度字段;根据所述字节码数组字段以及所述列表长度字段,确定所述虚拟机执行文件的函数的位置及大小。优选地,所述对所述虚拟机执行文件进行反编译,得到反编译的函数信息结构包括:利用虚拟机执行文件反编译工具,将所述虚拟机执行文件反编译为虚拟机字节码。优选地,所述从智能终端操作系统的应用程序层,获取应用程序的虚拟机执行文件包括:从智能终端操作系统的应用程序层,查找到所述应用程序的安装包;解析所述安装包,得到所述应用程序的虚拟机执行文件。优选地,所述操作系统是指安卓系统。依据本专利技术的另一个方面,提供一种检测智能终端中恶意代码的装置,包括:文件获取单元,用于从智能终端操作系统的应用程序层,获取应用程序的虚拟机执行文件;反编译单元,用于对所述虚拟机执行文件进行反编译,得到反编译的函数信息结构;解析单元,用于通过解析所述反编译的函数信息结构,具有对应关系的虚拟机指令序列和虚拟机助记符序列;目标特征确定单元,用于分析确定所述虚拟机助记符序列的函数功能,根据具有所述函数功能的所述虚拟机助记符序列对应的虚拟机指令序列确定目标特征;检测单元,用于利用预先设置的恶意代码特征库,对所述目标特征进行匹配,如果匹配成功,则确定所述应用程序的虚拟机执行文件包含恶意代码。优选地,还包括:提取单元,用于从所述虚拟机助记符序列中提取得到函数调用序列;所述目标特征确定单元,还用于通过分析按照顺序执行的多个函数调用序列的指令,确定所述虚拟机助记符序列的函数功能。优选地,所述目标特征确定单元确定的多个函数调用序列按照顺序执行的指令包括:解密字符串、创建消息签名实例、获取字符串子针、哈希加密。优选地,所述目标特征确定单元具体用于,将具有所述函数功能的所述虚拟机助记符序列对应的虚拟机指令序列作为所述目标特征,或者,将具有所述函数功能的所述虚拟机助记符序列对应的虚拟机指令序列的子集作为所述目标特征。优选地,所述检测单元具体用于,利用预先设置的恶意代码特征库,对所述目标特征进行函数相似度匹配,和/或,对所述目标特征进行函数特征模糊匹配。优选地,所述检测单元对所述虚拟机执行文件进行样本特征查杀、基于虚拟机查杀、启发式查杀,和/或,相似样本聚类。优选地,所述反编译单元具体用于,根据虚拟机执行文件格式对虚拟机执行文件进行解析,得到每个类的函数信息结构体;根据所述函数信息结构体中的字段,确定所述虚拟机执行文件的函数的位置及大小,得到所述反编译的函数信息结构。优选地,所述反编译单元,解析所述函数信息结构体,得到指示虚拟机执行文件的函数位置的字节码数组字段以及指示虚拟机执行文件的函数大小的列表长度字段;根据所述字节码数组字段以及所述列表长度字段,确定所述虚拟机执行文件的函数的位置及大小。优选地,所述对反编译单元具体用于,利用虚拟机执行文件反编译工具,将所述虚拟机执行文件反编译为虚拟机字节码。优选地,所述获取单元具体用于,从智能终端操作系统的应用程序层,查找到所述应用程序的安装包;解析所述安装包,得到所述应用程序的虚拟机执行文件。优选地,所述操作系统是指安卓系统。可见,本专利技术实施例通过对dex文件的格式分析和反编译,可以分析确定函数的功能,并且可以确定具有一定功能的函数作为目标特征,然后与恶意代码特征库进行匹配,从而确定dex文件是否包含恶意代码。应用本专利技术方案,通过应用程序的dex文件,可分析确定该应用程序是否包含恶意代码,由此可以对被篡改的应用程序或者对恶意软件进行查杀,保护智能终端的安全。上述说明仅是本专利技术技术方案的概述,为了能够更清楚了解本专利技术的技术手段,而可依照说明书的内容予以实施,并且为了让本专利技术的上述和其它目的、特征和优点能够更明显易懂,以下特举本专利技术的【具体实施方式】本文档来自技高网...

【技术保护点】
一种检测智能终端中恶意代码的方法,其特征在于,包括: 从智能终端操作系统的应用程序层,获取应用程序的虚拟机执行文件; 对所述虚拟机执行文件进行反编译,得到反编译的函数信息结构; 解析所述反编译的函数信息结构,得到具有对应关系的虚拟机指令序列和虚拟机助记符序列; 分析确定所述虚拟机助记符序列的函数功能,根据具有所述函数功能的所述虚拟机助记符序列对应的虚拟机指令序列确定目标特征; 利用预先设置的恶意代码特征库,对所述目标特征进行匹配,如果匹配成功,则确定所述应用程序的虚拟机执行文件包含恶意代码。

【技术特征摘要】

【专利技术属性】
技术研发人员:杨康陈卓唐海
申请(专利权)人:北京奇虎科技有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1