本发明专利技术公开了一种对Android ART运行时代码进行恶意代码检测的方法及系统,首先,对oat文件进行格式解析,提取oatheader,并获取oat文件的数据结构信息;针对所述oat文件,提取出oatdata数据段和oatexec数据段;基于所述oatheader和所述数据结构信息,从oatdata数据段中提取dex代码数据段,从oatexec数据段中提取thumb2指令代码数据段;对所述dex代码数据段和所述thumb2指令代码数据段分别进行恶意代码检测,并输出检测结果。从而解决目前对于oat代码数据无法进行恶意代码有效检测的问题。
【技术实现步骤摘要】
【专利摘要】本专利技术公开了一种对Android?ART运行时代码进行恶意代码检测的方法及系统,首先,对oat文件进行格式解析,提取oatheader,并获取oat文件的数据结构信息;针对所述oat文件,提取出oatdata数据段和oatexec数据段;基于所述oatheader和所述数据结构信息,从oatdata数据段中提取dex代码数据段,从oatexec数据段中提取thumb2指令代码数据段;对所述dex代码数据段和所述thumb2指令代码数据段分别进行恶意代码检测,并输出检测结果。从而解决目前对于oat代码数据无法进行恶意代码有效检测的问题。【专利说明】—种对Andro i d ART运行时代码进行恶意代码检测的方法及系统
本专利技术涉及移动终端恶意代码检测
,尤其涉及一种对Android ART运行时代码进行恶意代码检测的方法及系统。
技术介绍
随着移动互联网的快速发展,智能移动终端操作系统平台也在快速的发展和不断的优化,目前Android系统已经从早期的1.6版本,逐步发展到目前最新的4.4的公开版本。在Android 4.4的公开版本中,其引入了最新设计的运行时环境ART,并引入了一种新的程序代码执行格式和形态,被命名为oat文件。其为基于ELF文件格式的自定义文件格式。ART的出现,形成了一种全新的Android系统上的运行机制和代码数据存储机制,也同时形成了 一种全新的恶意代码数据形态。目前常见的Android恶意代码检测方法,主要是针对Android上的Apk文件,dex文件,odex文件,常见的普通ELF文件进行检测来实现恶意代码检测。而随着Android ART的逐步推广,可能出现oat文件形态的恶意代码,目前的检测方法均无法进行有效的检测。同时若采用文件片段hash或是文件完整的hash的方法来对oat进行检测,则很难实现高效的启发式的检出能力,无法有效的控制规则的集合和质量。
技术实现思路
针对上述技术问题,本专利技术提供了一种对Android ART运行时代码进行恶意代码检测的方法及系统,该专利技术通过对oat文件进行格式解析,提取所需的数据段内容,利用恶意代码检测方法对其进行检测,并输出检测结果,该专利技术解决了目前的恶意代码检测方法对于oat无法检测的问题。本专利技术采用如下方法来实现:一种对Android ART运行时代码进行恶意代码检测的方法,包括:对oat文件进行格式解析,提取oat header,并获取oat文件的数据结构信息; 针对所述oat文件,提取出oatdata数据段和oatexec数据段; 基于所述oat header和所述数据结构信息,从oatdata数据段中提取dex代码数据段,从oatexec数据段中提取thumb2指令代码数据段; 对所述dex代码数据段和所述thumb2指令代码数据段分别进行恶意代码检测,并输出检测结果。进一步地,所述针对所述oat文件,提取出oatdata数据段和oatexec数据段为:针对所述oat文件,提取出oatdata数据段、oatexec数据段和oatlastword数据段。进一步地,所述对所述dex代码数据段和所述thumb2指令代码数据段分别进行恶意代码检测为:对所述dex代码数据段、所述thumb2指令代码数据段和oatlastword数据段分别进行恶意代码检测。进一步地,对所述dex代码数据段和所述thumb2指令代码数据段分别进行恶意代码检测,输出检测结果包括:当其中之一检出恶意代码,则认为所述oat文件存在恶意代码;或者当两者都检出恶意代码,则认为所述oat文件存在恶意代码;或者当两者的检测结果满足设定条件时,则认为所述oat文件存在恶意代码。其中,所述thumb2指令代码并不绝对,可以随着指令格式的变化,而获取其他指令格式的代码。本专利技术采用如下系统来实现:一种对Android ART运行时代码进行恶意代码检测的系统,包括: 格式解析模块,用于对oat文件进行格式解析,提取oat header,并获取oat文件的数据结构信息; 第一数据提取模块,用于针对所述oat文件,提取出oatdata数据段和oatexec数据段; 第二数据提取模块,用于基于所述oat header和所述数据结构信息,从oatdata数据段中提取dex代码数据段,从oatexec数据段中提取thumb2指令代码数据段; 检测模块,对所述dex代码数据段和所述thumb2指令代码数据段进行恶意代码检测,并输出检测结果。其中,使用的恶意代码检测方法可以是现有的任何适用的检测方法。进一步地,所述第一数据提取模块,用于针对所述oat文件,提取出oatdata数据段和oatexec数据段之外,还包括:提取出oatlastword数据段。进一步地,所述检测模块,对所述dex代码数据段和所述thumb2指令代码数据段进行恶意代码检测,并输出检测结果,还包括:对所述oatlastword数据段进行恶意代码检测。进一步地,对所述dex代码数据段和所述thumb2指令代码数据段分别进行恶意代码检测,输出检测结果包括:当其中之一检出恶意代码,则认为所述oat文件存在恶意代码;或者当两者都检出恶意代码,则认为所述oat文件存在恶意代码;或者当两者的检测结果满足设定条件时,则认为所述oat文件存在恶意代码。综上所述,本专利技术提供了一种对Android ART运行时代码进行恶意代码检测的方法及系统,本专利技术基于对oat文件的格式解析,获取oat header和文件的数据结构信息,并利用所述oat header和数据结构信息,提取oatdata数据段中的dex代码数据段,提取oatexec数据段中的thumb2指令代码数据段,并利用现有的恶意代码检测方法对所述dex代码数据段和所述thumb2指令代码数据段进行检测,并输出检测结果。该专利技术针对oat的文件结构的格式特点和原有的Android恶意代码检测技术,仓Il造性的解决了 Android ART运行时代码oat的恶意代码检测的方法,解决了当前并未有效针对oat进行恶意代码检测方法的问题。【专利附图】【附图说明】为了更清楚地说明本专利技术的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本专利技术提供的对Android ART运行时代码进行恶意代码检测的方法流程图; 图2为本专利技术提供的对Android ART运行时代码进行恶意代码检测的系统结构图。【具体实施方式】本专利技术给出了一种对Android ART运行时代码进行恶意代码检测的方法及系统,为了使本
的人员更好地理解本专利技术实施例中的技术方案,并使本专利技术的上述目的、特征和优点能够更加明显易懂,下面结合附图对本专利技术中技术方案作进一步详细的说明: 本专利技术首先提供了一种对Android ART运行时代码进行恶意代码检测的方法,如图1所示,包括: SlOl对oat文件进行格式解析,提取oat header,并获取oat文件的数据结构信息; S102针对所述oat文件,提取出oat本文档来自技高网...
【技术保护点】
一种对Android ART运行时代码进行恶意代码检测的方法,其特征在于,包括:对oat文件进行格式解析,提取oat header,并获取oat文件的数据结构信息;针对所述oat文件,提取出oatdata数据段和oatexec数据段;基于所述oat header和所述数据结构信息,从oatdata数据段中提取dex代码数据段,从oatexec数据段中提取thumb2指令代码数据段;对所述dex代码数据段和所述thumb2指令代码数据段分别进行恶意代码检测,并输出检测结果。
【技术特征摘要】
【专利技术属性】
技术研发人员:潘宣辰,肖新光,
申请(专利权)人:武汉安天信息技术有限责任公司,
类型:发明
国别省市:湖北;42
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。