发明名称 一种启发式静态识别Android系统恶意代码的方法
摘要 本发明提出一种Android恶意软件检测方法。采用构建Andorid应用Apk软件的异构方法调用图,标定敏感函数,利用图的连通性对恶意代码进行定位。具体流程包括:对异构方法调用图进行图的连通性扫描,得到各个子图,对各个子图进行敏感函数打分,超过阈值的子图即为恶意代码模块。本发明可以启发式地发现未知恶意软件,为广大Android第三方市场和个人用户提供安全扫描和保护。
申请公布号 CN103440458A 申请公布日期 2013.12.11
申请号 CN201310443094.5 申请日期 2013.09.25
申请人 西安交通大学 发明人 陶敬;周文瑜;胡文君;赵双;马小博
分类号 G06F21/56(2013.01)I 主分类号 G06F21/56(2013.01)I
代理机构 北京科亿知识产权代理事务所(普通合伙) 11350 代理人 汤东凤
主权项 一种Android恶意代码检测方法,包括以下步骤:第一步,采集Android软件的恶意样本,进行手动分析,提取其中的敏感函数;第二步,提取所述恶意样本中经常使用的敏感接收器;第三步,对第一步和第二步提取的敏感函数和接收器进行打分,打分原则为高危操作或者敏感信息窃取方向的分值最高,危害程度越低,分值越低;第四步,对待测的apk文件进行反编译,得到程序内部各个类的smali格式源码,搜索其中每一个类的每一个方法,将搜索到的方法入口作为起点,将其对内部函数、java系统函数和Android系统函数的调用抽取出来,形成一条完整方法调用序列;通过对所述smali文件的搜索,将所有继承并实现敏感接收器的子类标注出来,将敏感接收器与其子类进行关联;所述完整方法调用序列和所述敏感接收器与其子类之间的关联关系构成异构方法调用序列;第五步,对所述异构方法调用序列根据方法所在的类进行聚合,形成全局方法调用图;第六步,对第五步生成的图进行连通性扫描,利用图的深度遍历算法,划分出独立子图;第七步,对第六步划分出来的子图进行降噪处理;第八步,对经降噪处理的子图进行白名单处理,通过对子图的包名检测,凡是在广告白名单中的,均标定为广告模块,使其不参与后续处理;第九步,对上一步处理过的子图,利用第三步中的分值结构进行敏感性打分,并计算每个独立子图的评分;第十步,上一步中评分超过阈值0.8的即为恶意代码子图模块,进行标定与记录。
地址 710049 陕西省西安市咸宁西路28号