[发明专利]对Android重打包恶意软件的恶意代码的检测、切除和恢复的方法有效
申请号: | 201410261034.6 | 申请日: | 2014-06-12 |
公开(公告)号: | CN104091121B | 公开(公告)日: | 2017-07-18 |
发明(设计)人: | 谷大武;杨文博;李勇;张媛媛;李卷孺 | 申请(专利权)人: | 上海交通大学 |
主分类号: | G06F21/56 | 分类号: | G06F21/56 |
代理公司: | 上海交达专利事务所31201 | 代理人: | 王毓理,王锡麟 |
地址: | 200240 *** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | android 打包 恶意 软件 恶意代码 检测 切除 恢复 方法 | ||
技术领域
本发明涉及的是一种移动通信设备领域的方法,具体是一种对Android重打包恶意软件的恶意代码的检测、切除和恢复的方法,针对的是Android平台通过对正常程序重打包,注入恶意代码的恶意软件。
背景技术
在Android平台上,应用程序使用java语言编写,使得应用程序的逆向和破解变得简单。有许多工具例如apktool等可以用来帮助反汇编Android应用程序的可执行代码,解码资源文件。由于Android允许自签发的证书签名应用程序并允许安装非官方市场的应用,因此一旦Android应用程序被反汇编和解码后,就可以修改或加入代码以及资源文件,重新签名打包成新的应用程序被用户安装执行。而恶意程序为了更加广泛的传播以及欺骗用户安装,通常使用批量重打包正常的应用程序,并植入拥有恶意行为的代码片段,放入各类市场诱使用户下载。目前绝大多数的Android恶意程序都通过这种方式传播。目前已经有针对Android恶意程序的检测技术,主要是通过应用程序的特征值进行检测,如代码特征,字符串特征,API调用等。另外还有通过特征值匹配和相似性检测进行对恶意程序家族的分类。由于恶意代码片段是被重打包植入的,本身是个相对独立的模块,为了保证原来程序功能的完整,重打包过程通常不会对原程序做大规模的修改,这些都使得对被植入的恶意代码的检测切除和恢复原程序成为可能。但是目前在Android领域,针对重打包植入恶意代码的恶意程序,尚没有一种能准确检测出被植入的恶意代码完整部分,并切除的方案和技术。
经过对现有技术的检索发现,中国专利文献号CN103440459A公开(公告)日2013.12.11,公开了一种Android恶意软件检测方法,旨在解决现有Android恶意代码检测技术无法细粒度构建Android程序行为特征的问题。首先对现有Android恶意代码进行基于权限的统计分析,提取使用率较高的权限作为敏感权限,继而以使用这些权限的API作为入口点,构建调用这些API的函数链,进行基于函数调用的Android恶意代码检测。但该技术仅能够判断被检测程序中是否含有恶意代码的函数调用特征,但无法准确检测出整个程序中具有恶意行为功能的完整恶意代码模块。另外在使用敏感权限对应API的函数调用链作为特征,对于不依赖于权限和函数,只有指令特征的恶意行为,例如恶意程序自己实现的加解密功能等行为,无法构建有效的特征进行检测。
中国专利文献号CN102819697A公开(公告)日2012.12.12,公开了一种基于线程反编 译的多平台恶意代码检测方法包括:通过特征提取获取恶意指令序列;依次检测系统中的线程信息,识别线程起始数据的指令集,并根据不同指令集对每个线程起始数据进行反编译得到线程的执行指令序列;将所述线程的执行指令序列与所述恶意指令序列进行完全匹配,当匹配成功则该所述线程为恶意线程。但该技术需要对指令序列进行完全匹配,因此如果恶意程序在不影响功能的情况下对指令进行微小变换则很容易逃避检测,Android平台上同一家族的恶意程序通常有很多变种,该方案很难检测出变种的恶意程序。另外,该技术仅能检测以线程为单位的恶意线程,无法根据功能性完整检测程序中执行恶意行为的代码片段和模块。
综上所述,现阶段尚缺少一种能够检测Android平台的重打包恶意程序,一般如:利用Android程序易于反编译的特点,对正常和流行的程序解包后,加入后台执行,用户不可见的窃取用户隐私、执行恶意扣费、或进行欺诈和欺骗行为的恶意代码功能模块,再重新打包放入市场诱使用户下载的恶意程序。此类恶意程序的特点是通常具有两个相对独立的功能模块:具有原程序的正常功能模块,以及后台执行恶意行为的功能模块。
发明内容
本发明针对现有技术存在的上述不足,提出一种对Android重打包恶意软件的恶意代码的检测、切除和恢复的方法,主要针对当前Android平台日益严重的恶意程序使用的重打包植入恶意代码这一最主要传播特征,检测和切除那些正常程序中植入的恶意代码部分。
本发明是通过以下技术方案实现的,本发明通过对已知恶意程序的恶意入口点类建立由模糊哈希值构成的特征库,用于与反汇编后的待检测程序的入口点类进行匹配;然后依次切除被重打包加入的完整的恶意代码片段以及恶意代码的资源文件,最后找出重打包过程中对原程序实施修改的代码片段,恢复其原有功能。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海交通大学,未经上海交通大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410261034.6/2.html,转载请声明来源钻瓜专利网。