The invention provides a static detection system and method of SmalI based on interlingua, wherein the preprocessing module used for preliminary screening analysis simple and fast to the mobile application software, determine the current mobile application software is sensitive to possible behavior, and determine the need for subsequent static analysis program behavior; the rule base module as a rule the pretreatment module in sensitive behavior analysis; the sensitive behavior detection module for the preprocessing module to judge the existence of sensitive behavior of mobile application software detailed behavior detection; the result generation module of mobile application software for basic information and sensitive information report and output. The SmalI based detection system can be used to analyze the behavior of the information in the Android software, and then detect the sensitive behavior in the application software.
【技术实现步骤摘要】
本专利技术涉及到移动应用软件的分析
,特别是一种基于smali中间语言的静态检测系统及方法。
技术介绍
一般情况下,移动应用软件静态分析技术是反编译到源代码,因为Android代码本身的问题,并不能完全匹配Java语法并且在反编译到源代码的过程中会有信息缺失或反编译失败,无法进行完整的信息分析,因此设计并实现了一种基于smali中间语言的静态检测系统,对比基于源代码的静态检测系统有较好的检测精确度和较低的误报率,并在检测效率上有极大的提高。目前,国内外对应用软件的静态检测技术做了大量的研究,对Android应用软件的静态检测技术主要分为基于特征的检测技术和基于行为的检测技术两大类,基于特征的检测技术是根据由已知类别的恶意软件类别中提取的通用特征码进行检测;而基于行为的检测方法则是将应用软件反编译到源代码或中间代码。基于特征代码的检测技术,是将恶意软件中的代码或自身信息等进行提取处理为特征码,再通过检测文件中是否存在特征码来判断其是否为恶意软件。这种检测技术是现状病毒检测最常用及核心的技术之一。Thomas等人将Android应用程序反编译到源代码,再对源代码中的模型特征进行匹配检测。吴俊昌等人将Android移动应用使用的权限作为特征,进而设计了一种基于权限特征的静态检测方法。Desnos等人从应用程序中提取方法特征再进行距离压缩和相似度比较来对应用软件的相似度和恶意软件进行检测。童正飞将从动态链接表中提出的Android程序调用关系作为特征,对恶意软件进行分类检测。然而基于特征的检测技术只能通过特征代码进行检测,无法对未知病毒或已知病毒的变种进行 ...
【技术保护点】
一种基于smali中间语言的静态检测系统,其特征在于,包括预处理模块、规则库模块、敏感行为检测模块、结果生成模块,所述预处理模块用于对移动应用软件做简单快速的初步筛选分析,判断当前移动应用软件是否存在可能的敏感行为,并判断是否需要进行后续静态行为分析程序;所述规则库模块为所述预处理模块在进行敏感行为分析时依赖的规则;所述敏感行为检测模块是对所述预处理模块判断出的存在敏感行为的移动应用软件进行详细的行为检测;所述结果生成模块用于将移动应用软件的基本信息和敏感信息生成报告并输出。
【技术特征摘要】
1.一种基于smali中间语言的静态检测系统,其特征在于,包括预处理模块、规则库模块、敏感行为检测模块、结果生成模块,所述预处理模块用于对移动应用软件做简单快速的初步筛选分析,判断当前移动应用软件是否存在可能的敏感行为,并判断是否需要进行后续静态行为分析程序;所述规则库模块为所述预处理模块在进行敏感行为分析时依赖的规则;所述敏感行为检测模块是对所述预处理模块判断出的存在敏感行为的移动应用软件进行详细的行为检测;所述结果生成模块用于将移动应用软件的基本信息和敏感信息生成报告并输出。2.如权利要求1所述的基于smali中间语言的静态检测系统,其特征在于,所述规则库模块包括一类规则:敏感行为API、二类规则:参数规则以及三类规则:用户行为规则,所述参数规则为确定所述敏感行为API的参数是否为符合条件的类型,所述用户行为规则用于确定命中的符合条件的敏感行为API是后台行为还是用户行为。3.如权利要求2所述的基于smali中间语言的静态检测系统,其特征在于,所述预处理模块用于实现快速从资源文件和dex文件中获取当前应用软件中所有使用的字符串,即获取常量池中的数据;对于从资源文件的分解,可以使用SAXBuilder对xml文件进行解析,按照格式获取AndroidManifest.xml中的信息;从dex文件中获取常量表则通过文件格式,进行编码对dex文件中的字符串列表进行提取,在通过dex文件格式获取字符串偏移地址后,第一个字节即为当前字符串的大小,当前字符串长度大于预设阈值时,表明该字符串为无意义字符,将该字符串从常量池中剔除;在获取了整个应用软件的常量池后,需要进行常量对比,对比的对象为一类规则和常量池中的数据,如果两者有重合的则表明当前应用软件中可能存在敏感行为需要进行进一步的行为检测,若没有则表明当前软件中不含有敏感行为。4.如权利要求3所述的基于smali中间语言的静态检测系统,其特征在于,所述敏感行为检测模块通过三类规则在控制流和数据流中进行回溯比对确定敏感行为:首先是一类规则的触发行为,其次在数据流中对二类规则中的参数进行比对触发,最后进行三类规则的行为定性,若连续触发一类、二类规则同时三类规则定性为非用户行为即为后台行为则...
【专利技术属性】
技术研发人员:王鑫,
申请(专利权)人:合肥国信车联网研究院有限公司,
类型:发明
国别省市:安徽;34
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。