移动信息系统

PDF
移动信息系统/2016年/文章
特殊的问题

移动安全技术的进步

把这个特殊的问题

研究文章|开放获取

体积 2016年 |文章的ID 6707524 | https://doi.org/10.1155/2016/6707524

驾车Jae-wook张成泽,康金姆, 面向功能的移动恶意软件分析急救”,移动信息系统, 卷。2016年, 文章的ID6707524, 11 页面, 2016年 https://doi.org/10.1155/2016/6707524

面向功能的移动恶意软件分析急救

学术编辑器:Seung杨
收到了 2015年11月03
接受 2016年2月02
发表 2016年3月01

文摘

最近,高度精心制作的移动恶意软件出现了移动设备管理非常有价值和敏感信息。目前,它是不可能检测和防止恶意软件因为新的恶意软件的数量继续增加指数;恶意软件检测方法需要改进,以迅速和有效地应对恶意软件。快速反应,揭示了恶意软件的主要目的或功能是非常重要的;然而,只有一些近期作品试图发现恶意软件的主要目的。我们的方法是设计用来帮助与高效和有效的事件响应或对策发展通过分析主要功能的恶意行为。在本文中,我们提出一个新颖的方法,面向功能的恶意软件分析方法分析的基础上可疑的API调用模式。相反提取API调用模式的恶意软件在每个家庭,我们专注于提取这种模式对于某些恶意的功能。我们建议的方法转储内存部分应用程序分配和提取可疑API从字节码序列与预定义的可疑API列表进行比较。通过API调用匹配模式与我们的数据库功能,我们的方法确定是否恶意。 The experiment results demonstrate that our method performs well in detecting malware with high accuracy.

1。介绍

随着移动设备变得广为传播,高度精心制作的移动恶意软件已经成为移动计算环境中最危险的威胁。根据McAfee的报告(1),移动恶意软件的总量继续稳步攀升,因为它打破了600万年第四季度和2014年的第三季度增长了14%。此外,据报道大约080万新的恶意软件的家庭和变异出现在同一季度。杀毒(AV)供应商分析日常大量的恶意软件样本,和防止他们广泛传播;换句话说,罪犯和后卫已经发动一场没完没了的战斗。

尽管AV厂商的努力,检测和防止恶意软件变得困难,因为恶意软件会随时间而变化。特别是,嵌入防病毒的恶意软件样本数量分析方法,如Android封隔器(例如,APK保护(2]和Bangcle [3])、动态加载敏捷加密,稳步增加(4]。Android包装工启用加密一个原始敏捷字节码,解密敏捷在运行时字节码记忆部分,然后执行敏捷通过字节码DexClassLoader。在这种情况下,是不可能检测和防止恶意软件和它的变体,特别是恶意软件嵌入antianalysis技术。

如图1基于他们的目的或对象,我们分类的恶意软件分析方法分为三种类型:autopsy-oriented方法,实用的方法,和symptom-oriented方法。autopsy-oriented方法旨在代表如何恶意软件进行恶意行为,由传统的静态和动态分析。静态分析的目的是检查二进制代码,以确定其特征没有执行它。静态分析方法在之前的许多作品未能解析有意义的足迹从恶意软件样本,这些antianalysis嵌入技术5- - - - - -9];的恶意软件嵌入antianalysis技术导致恶意软件分析问题。另一方面,动态分析旨在提供方法提取恶意软件的独特的行为模式。动态分析地址模糊、包装、和加密方法,因为所有的方法消除恶意应用程序的执行期间(10- - - - - -13]。然而,只有在执行动态分析执行应用程序的一部分,和恶意行为应该在分析期间执行;恶意软件分析师可能认为恶意软件进行恶意行为分析期间。之前的大部分作品呈现传统autopsy-oriented方法。然而,autopsy-oriented估算方法有限制的恶意软件的破坏性力量或影响对我们的生活,因为它是只专注于恶意软件样本分类分为最相似的组。

另一方面,面向功能的方法创建一个特性数据库的特定功能。这种方法允许高效和有效的事件响应或对策发展通过分析功能相关的恶意行为。此外,面向功能的方法随着时间的推移已经演变成为symptom-oriented方法。symptom-oriented方法,称为行为分析或基于声誉分析,允许恶意软件分析师利用威胁情报收集的安全社区。这种方法可以防止计算机犯罪的广泛传播,尽管尚不存在相关的签名。当所有静态分析和动态分析方法失败时,行为观察可能是有用的估计一个给定的应用程序的恶意。

Tam et al。14]手动检查各种恶意软件样本库蔓延和Android恶意软件等基因组计划。他们恶意行为分为六组根据行为模式:打电话,发短信,网络访问,获取个人信息,修改文件系统,以及执行外部应用程序。我们还手动检查恶意软件样本和提取的API调用模式对某些恶意功能;因为有些行为模式不是发现在我们的数据集,我们离开他们。一些近期作品关注的事实,恶意软件在不同类别可以有共同的API调用序列主要目的或功能是相同的15]。这些方法帮助检测恶意软件的核心行为功能有效地通过分析恶意软件样本。因为现代的恶意软件复杂功能,传统的相似性matching-based恶意软件分类可以错过了恶意软件的目的如果这样的恶意软件的重要功能组成部分,比它小得多的非关键功能。我们定义的关键功能是恶意软件攻击的主要目标,而我们的非关键功能定义额外的恶意行为隐藏的关键功能。例如,恶意软件作者可以重用已知恶意代码和小块的代码插入导致故意分析师失去焦点。此外,一个自动化分析工具只是基于相似性匹配报告,给定的恶意软件类似于已知的恶意软件。因此,在这种情况下,恶意软件的关键功能(例如,删除MBR)不可能很快发现。没有确定恶意软件作者的意图,AV供应商可以失败分析重大恶意的足迹或行为模式;他们只专注于恶意软件检测或分类提取碎屑签名(部分3)。如果不包括非关键功能故意,AV供应商仅限于捕获恶意功能有力地和他们容易失败偶尔来检测恶意软件。

为了克服传统autopsy-oriented方法的缺点,我们提出了面向功能的更有效的方法来确定一个给定的恶意软件想要做什么。为此,恶意软件分析人员需要知道恶意软件作者想获得和他们如何触发恶意行为。这些恶意软件作者的意图可以提供恶意软件分析师的重要线索识别恶意软件,和恶意软件分析人员可以确定他们的恶意软件作者的攻击模式,利用这些模式作为检测规则。为了实现最终目标,我们引入一个混合防病毒系统,结合静态分析和动态分析,着重于提取恶意功能相关的恶意软件作者的意图。我们的方法不是一个详尽的搜索解析有意义的足迹,但主要快速筛查。

尽管恶意软件嵌入各种antianalysis方法,解密ndroid平台(或解包)内存上的所有恶意软件部分。我们的系统捕获的时刻odex字节码是加载到内存中部分(16恶意软件分析),利用工件。特别是,我们建议的系统运行恶意应用程序在一个模拟器,转储有意义的挥发性记忆部分(odex字节码),目标应用程序分配和提取可疑的apiodex字节码(即为了克服挑战的问题。,解决恶意软件嵌入antianalysis方法)。而不是恶意软件提取所有API调用模式的每个家庭,因为大多数之前所做的工作,我们专注于提取API调用模式对某些恶意的功能。与预定义的可疑比较这些API列表中检测规则集,我们的系统能够有效的和有效的检测恶意软件。

为此,这项工作的贡献如下。首先,作为急救,我们的系统可以快速响应许多种类的恶意软件样本通过分析功能相关的恶意行为。其次,我们提出一个混合的恶意软件检测方法加上内存采集方法来提高检测精度。最后,最近的一次真实的恶意软件的数据集,我们实证研究结果建议的方法生成是否优越。

本文的其余部分组织如下。节2综述了相关工作。节3,我们将讨论autopsy-oriented方法的局限性。节4,我们提出我们的方法和实验。节5,我们将讨论我们的方法的局限性,我们得出的结论部分6

之前的大部分作品分为两大类:静态和动态分析。主要介绍传统autopsy-oriented方法。在静态分析中,通过逆向工程代码模式的恶意软件样本用于签名的恶意软件检测。另一方面,动态分析的目的是提取独特的行为模式的恶意软件样本基于其行为。Enck et al。10提出了麒麟安全服务,一个轻量级的防病毒系统,以减少恶意软件在安装时。麒麟检查请求的权限清单文件和决定是否恶意活动是通过比较它们与预定义的规则执行。皮尔斯et al。12)提出了一个隐私信息antileakage系统、AdDroid权限相关广告区别于其他权限。然而,AdDroid仅限于对大多数恶意软件,不通过广告传播。彭et al。6]提出了概率模型来表示风险评分,从简单朴素贝叶斯先进的混合模型。他们提出的系统计算风险评分为每个应用程序基于请求的权限清单文件和决定是否恶意活动被处决。王等人。7提出DroidRisk,权限的定量风险评估模型。通过量化风险水平的每个应用程序,他们提出了一个可靠的风险指标,可以生成警告潜在的恶意活动。然而,应用程序开发人员倾向于声明一个不必要的请求的权限清单文件,尽管应用程序不需要它们;因此,这些方法容易高误报。最近,这些方法还考虑申请使用每个API方法在现实中通过分析一个API调用图。然而,这些检测方法并不像良性高效的良性的分类应用程序,因为相关的规则集仅仅专注于检测恶意软件。Zhang et al。13]提出VetDroid,动态分析方法提取敏感给定应用程序的行为。通过利用API-related权限表,VetDroid完全确定所有可能的API-related许可使用。然而,他们的方法并不是有效的鉴别良性的应用程序,因为相关的规则只专注于检测恶意软件,造成大的假警报。Arp et al。5DREBIN提议,考虑权限和敏感的api功能。DREBIN提取特征从一个清单文件和字节码,然后自动识别恶意软件。杨et al。8提出DroidMiner,自动从行为图挖掘恶意行为。DroidMiner考虑API和多个之间的依赖关系的频率敏感的API函数。Zhang et al。9)提出了恶意软件分类基于加权DroidSIFT上下文API依赖图。防止恶意软件的传播,DroidSIFT利用图相似度度量的恶意软件检测。周et al。17、许可]提出DroidRanger heuristic-based方法。吴et al。18]提出DroidMat,基于功能的恶意软件检测方法。DroidMat选择请求的权限、意图和API调用特征作为特征向量和每个应用程序的恶意行为。DroidMat使用 神经网络和 ——分类器来确定给定应用程序是否是恶意。郑et al。19DroidAnalytics]介绍了一个基于签名的分析系统,自动收集恶意软件,生成签名恶意应用程序,并确定恶意逻辑操作码的水平。此外,DroidAnalytics容易发现重新打包应用程序通过估计相似性得分。Deshotels et al。20.DroidLegacy提议,一个自动化的方法,提取每一个恶意软件签名。DroidLegacy确定重新包装恶意软件通过构造签名使用API调用。DroidLegacy分区APK为松散耦合的模块,而每个模块的API调用,每个家庭的签名。API调用调用每个恶意模块为恶意软件分析变成了一个签名。李等人。21)提出了一个恶意软件检测方法利用签名条目或完全匹配二进制模式估计相似性得分。检测恶意软件变种,他们使用签名条目类/方法名,字符串,在敏捷字节码方法主体。然而,这些方法在解析限制从一个应用程序,该应用程序有意义的代码模式嵌入防病毒分析技术(如包装、动态加载和字节码加密)。

之前的作品(autopsy-oriented方法)只需要整体分析时间的恶意软件检测到最类似的团体通过比较一个恶意软件样本各组恶意软件的签名。这些签名不代表恶意功能,当绕过恶意软件组织的签名,恶意软件恶意软件作者很容易达到的目标。为了防止丢失重要线索识别恶意软件时,在本文中,我们提出了面向功能的方法基于恶意软件攻击模式,代表了恶意软件攻击者的意图。在下一节中,我们首先研究上述局限性的传统的恶意软件分析,然后检查该方法。

3所示。案例研究:Autopsy-Oriented方法的局限性

许多先前的API调用序列分析工作分类恶意软件基于AV厂商生产的文本描述。然而,这样的文字描述往往不能捕获所有的恶意行为。最近,我们发现短信诈骗(SMS钓鱼)和类型的复杂的恶意软件的恶意应用程序进行了深入分析。如图2(一个),恶意软件Fakeinst进行更新攻击:它伪装自己是最受欢迎的聊天应用程序(KaKaoTalk)在韩国。Fakeinst副本并将相同的短信发送给接受者接触中发现的提供者。此外,Fakeinst捕获传入短信和窃取敏感信息,如调用历史和联系信息,将这些信息发送到远程服务器。如图2 (b),恶意软件SMSSend进行更新攻击:它掩盖了自己作为一个在韩国知名银行应用程序。类似于Fakeinst,SMSSend捕获传入的短信和窃取敏感信息将该信息发送到远程服务器。同样也复制和发送SMS消息收件人联系供应商。

然而,传统的恶意软件分析(autopsy-oriented)方法在解释破坏力有限制或对恶意软件对我们生活的影响,因为它关注的是是否可疑的恶意应用程序通过利用已知签名;传统的恶意软件分析并不能解释所有的恶意行为模式。f - secure只表明产生的文本描述FakeinstSMSSend似乎是应用程序的安装程序,但这样的恶意软件的情况下向收费号码发送SMS消息(22]。f - secure的描述不能捕获所有的恶意行为的恶意软件,因为它只解释了断断续续的和广泛的恶意行为。排除一些短信功能,AV供应商恶意软件样本会导致混乱。鉴于AV供应商不专注于捕捉有力地恶意功能,他们容易偶尔失败之机,绕过他们的签名来检测恶意软件。在上述例子中,恶意软件作者可能逃避AV供应商通过隐藏发送一些短信的功能。通过分析核心行为功能的恶意软件样本,恶意软件分析人员可以有效的检测恶意软件。在这个案例研究中,我们只提到f - secure [23)的情况下,但这是一个常见的错误的移动AV供应商。

4所示。材料和方法

4.1。环境设置

我们完成所有实验(VMWare虚拟化环境 ;http://www.vmware.com/)。如图3,我们的系统包含一个分析器和存储库。分析器和存储库安装在服务器上,运行一个Ubuntu 12.04 LTS(64位)操作系统。我们实现了分析器使用Python编程语言(如脚本)的Android模拟器上运行Android 4.1.2(16)水平。分析仪由提取工艺的恶意软件检测挥发性内存采集和分析过程。分析仪恢复初始状态当一个新应用程序的模拟器进入队列。

4.2。数据集的准备

如表所示1,我们选择906个13恶意软件组成的恶意软件样本家庭提供的韩国网络安全机构(KISA) 2014年3月至12月。这些恶意软件样本是最新的短信诈骗和间谍程序报告的国防部和移动电信公司在韩国。sanitize良性的样本,我们受欢迎的免费下载应用程序使用谷歌玩的高排名,2015年3月,排除了由至少一个诊断的样本在VirusTotal AV供应商;1776年良性样本用于实验。根据SHA256重复良性样本被排除在外,和重复的恶意软件样本根据SHA256和包名称被排除在外。我们的整个数据集的访问http://ocslab.hksecurity.net/sapimmds


类别 家庭 数量的样品 家庭 数量的样品

恶意软件(906) Smforw 130年 没有一个 43
FakeBank 141年 Gidix 40
FakeKRBank 123年 Recal 25
WroBa 117年 SmsSend 25
Fakeinst 88年 TelMan 21
SmsSpy 79年 Helir 12
MisoSMS 52 Fakeguard 10

良性的 1776年

4.3。API分类

应用程序编程接口(API)是一组功能提供方便地控制的主要行动在一个给定的平台上,例如,Android平台。例如,我们可以很容易地实现“发送短信”功能通过调用一些api,比如sendTextMessage()或sendMultimediaMessage ()。搜索引擎优化等。24]分析了各种恶意软件和良性的样本和研究api请求的每个数据集的分布,清单可疑的api。

尽管各种恶意行为似乎相似,恶意软件中的api基于恶意软件作者有所不同。要解决这个问题,我们更新了可疑API通过检查的所有API列表列出的工作类似于那些可疑的API (24]。这些api是参与收集私人或系统信息,发送和删除短信,记录声音,和访问内容提供者和web服务。可疑的api,我们定义的细节列在附录中。

4.4。可疑的API调用已知的恶意行为模式

为了提取可疑API调用模式,我们回顾了之前的工作(25]。由于这种分析,我们发现大多数恶意软件劫持敏感信息没有受害人的同意;偶尔,恶意软件控制对手的C&C通过短信服务器。此外,我们发现恶意软件导致受害者订阅额外服务没有他/她的注意通过删除短信确认消息。为了实现其目标,恶意软件请求收到短信和电话的最高优先级abortBroadcast ()隐藏的通知短信。类似于一些短信,短信诈骗从远程服务器应用程序接收短信C&C劫持并发送敏感信息(如联系人、短信内容、通话记录,在韩国金融交易和证书)。在这种情况下,短信诈骗应用程序隐藏恶意行为完成后收到短信。因此,我们得出结论,恶意软件具有明显的恶意行为模式和特点,以及恶意行为是影响调用API调用模式。使用一个特性数据库的API调用模式,我们可以找出更有效的应用程序是否是恶意。为此,我们分析恶意行为和API调用模式之间的关系。表2列出了样品我们发现的可疑的API调用模式,和下面的描述解释导致恶意行为可疑的API调用模式。(1)隐藏短信通知:高优先级,恶意软件先后调用api相关的SMS消息处理,然后这些恶意软件调用abortBroadcast ()取消SMS-related行动的广播。这种恶意行为模式是必不可少的进行其他恶意行为没有受害人的同意。(2)隐藏的快捷方式图标:因为恶意软件隐藏它的快捷方式图标,用户无法知道安装恶意软件。这种恶意行为模式是必不可少的进行其他恶意行为没有受害者的意识。(3)短信劫持:当给定的URI来管理短信和api查询这样的URI,恶意软件可以访问短信内容提供者。此外,当考虑到传输数据的api来访问外部存储器和api,恶意软件可以访问存储为了拯救受害者的短信和发送到远程服务器。这种类型的恶意行为总是需要一些api与远程服务器进行通信。的功能隐藏短信或快捷方式图标对于这种恶意行为是必要的。(4)联系人劫持:当考虑到URI来管理联系内容和URI的查询api,恶意软件可以访问联系人提供者。此外,当考虑到api来传输数据,恶意软件可以联系内容传输到远程服务器和设备的标识符信息。这种恶意行为总是需要一些api与远程服务器进行通信。的功能隐藏短信或快捷方式图标对于这种恶意行为是必要的。(5)书签或位置信息为金融交易绑架和劫持证书:类似于短信劫持,恶意软件将这些信息传输到一个远程服务器。金融交易劫持证书的情况下,考虑到独特的字符串“npki”代表一个给定的文件夹名金融证书在韩国,恶意软件可以压缩文件夹到外部存储器的zip归档文件,然后发送这些信息到远程服务器。这种恶意行为总是需要一些api与远程服务器进行通信。隐藏短信或快捷方式图标的功能是必要的这种恶意行为。


类别 可疑的API调用模式 额外的信息

隐藏短信通知 {getOriginatingAddress ()
getMessageBody ()
getDisplayMessageBody ()}
abortBroadcast ()
android.provider。
电话。短信收到了高优先级

隐藏的快捷方式 setComponent
EnabledSetting ()
abortBroadcast ()

短信劫持 {查询() parse ()}
getExternalStorageDirectory ()
getExternalStorageState ()
传输api
内容:/ / sms
{隐藏短信通知 隐藏快捷}

联系内容劫持 getContentResolver ()
查询()
getLine1Number ()
传输api
{Phone.CONTENT_URI
Contacts.CONTENT_URI}
{隐藏短信通知 隐藏快捷}

书签劫持 getContentResolver ()
传输api
BOOKMARKS_URI
{隐藏短信通知 隐藏快捷}

位置信息内容劫持 getLastKnownLocation ()
传输api
{隐藏短信通知 隐藏快捷}

为金融交易劫持证书 {getExternalStorageDirectory ()
getExternalStorageState ()}
FileOutputStream
ZipOutputStream.close ()
传输api
/ npki
{隐藏短信通知 隐藏快捷}

AQuery.ajax的api()或HttpClient()或DefaultHttpClient()或URLConnection()或HttpURLConnection类()。
一个 A和B B表示,恶意软件调用函数先后(其他API调用无法执行A和B之间)。
一个 A和B, B表示,恶意软件调用功能,但不一定先后(其他API调用可执行A和B之间)。
一个 B表示,恶意软件调用函数A或B。
4.5。API调用模式匹配

为了比较应用程序的API调用模式与特性为可疑的API调用模式数据库,我们采用了最长公共子序列(LCS)算法(26使用动态编程)。LCS算法发现两个字符串的最长公共子序列,在子序列的序列保持相同的相对顺序,虽然不一定是连续的。自从发现LCS问题是计算机科学中最著名的一个问题,数据比较的基础上,LCS是杠杆在恶意软件分析领域15,27]。例如,序列“abcd”和“abbdccccbd LCS的abcd。“如果LCS的结果是功能数据库中发现可疑的API调用模式,我们确定应用程序进行恶意行为。

4.6。总体流程

在提取过程中,我们的方法把有意义的挥发性记忆部分分配给定的应用程序在Android模拟器,如图3。为了转储内存部分,我们修改Strazzere原生开发工具包的代码(https://github.com/strazzere/android-unpacker),允许开箱精心包装方法没有根据广东发展银行。我们增强这个工具来转储的挥发性记忆部分应用程序嵌入动态加载方法和字节码加密。内存收购然后按照以下顺序进行。首先,我们的系统检索应用程序的进程ID (PID)和一个克隆的进程ID (CID),根据包的名称。接下来,我们的方法检索的内存边界CID使用/运行proc/CID/地图通过检查包装和动态加载方法是否采纳。如果应用程序采用包装和动态加载方法,odex拆封后字节码分配在内存部分和动态加载完成。最后,我们的方法高度这一过程PTRACE和复制内存部分”是谁的签名戴伊“从/proc/CID/mem。在提取过程中,我们的方法把有意义的挥发性记忆部分分配给定的应用程序在Android模拟器,如图3

在分析过程中,我们的方法提取包名作为标识符,组件名称和intent-specific信息AndroidManifestxmlapk文件并拆卸odex字节码进smali代码。在升序排序解析组件之后,我们的方法搜索smali组件名称相同的文件和文件夹。在应用程序中嵌入动态加载方法,我们的方法检索smali文件,因为我们相信,动态加载代码可以隐藏的恶意代码。动态加载方法提供了灵活的内存分配和扩展了在运行时动态功能。应用程序开发人员利用动态加载代码的知识产权保护。然而,当使用恶意软件,恶意软件分析师很难分析恶意软件嵌入动态加载代码;恶意软件的数量的家庭采用antianalysis技术已经迅速增加(4]。此外,我们的方法提取可疑apismali文件并创建一个可疑的API与预定义的序列通过比较可疑API列表。我们的方法确定是否恶意目标应用程序通过检查预定义的恶意功能或可疑API功能数据库记录序列的应用程序。完成分析后,这个过程将结果存储到存储库中。

4.7。精度检验

我们证明我们的方法提供了一种有效的检测恶意应用程序和指标识别恶意应用程序为恶意软件。我们证明我们的方法提供了一个有效的区分度规的恶意软件样本这些良性的样本。表3是一种混淆矩阵,给出了检测算法的性能。因此,八良性样本检测恶意软件(假阳性),和147年的恶意软件样本,对应于16.23%的恶意软件样本发现是良性的(假阴性)。总结、精密(精度= true积极/(真阳性+假阳性)),回忆(回忆= true积极/(真阳性+假阴性)),精度(精度=(真阳性+真阴性)/(真阳性+假阳性+假阴性+真阴性)),以及 分数( 分数= 2 TP / (2 TP + FP + FN) TP真阳性,TN是真的负,FP是假阳性,假阴性和FN)是0.990,0.838,0.942,和0.907,分别。这意味着我们建议的恶意软件检测方法是非常可靠的。此外,该方法允许恶意软件检测所有装恶意软件样本,如表所示4


类别 实际的类
恶意软件 良性的

估计类
恶意软件 759年 8
良性的 147年 1768年


包装方法 数量的样品 检测到 错过了

APK保护 6 6 0
Bangcle 4 4 0
没有一个 896年 749年 147年
906年 759年 147年

我们使用的APK保护专业版。

我们表明,我们的方法提供了一个有效的指标确定零日恶意软件。我们定义了一个零日恶意软件应用程序与恶意行为未被发现的AV供应商。我们利用十KISA提供的恶意软件样本,然后检查不同的扫描结果AV供应商,如f - secure,停住,TrendMicro,赛门铁克,卡巴斯基,McAfee, ClamAV, Sophos, nProtect。我们的实验结果显示,我们的方法可以检测所有零日恶意软件样本。

比较不同的方法。我们所知,最近的方法在文献中我们的方法是吴et al。18),郑et al。19),Deshotels et al。20.),和李等人的工作21]。吴等人的方法(18)杰出的恶意软件从良性的应用,准确率达到97.87%。郑等人的方法(19]2494检测到恶意软件样本和342零日恶意软件样本。Deshotels et al .的方法(20.)检测到恶意软件有94%的准确度和精度约95% /召回。李等人的方法(21的精度和召回率超过97%。出于完整性的考虑我们的方法,我们需要比较我们和这些方法。然而,他们不是可被公众使用。此外,这些方法需要更多的改进解决包装等防病毒分析技术,动态加载和字节码加密。与这些相比,我们的方法可以分析恶意软件嵌入防病毒分析技术。因此,我们希望能发现更多的恶意软件嵌入这些技术。

5。局限性和未来的工作

我们的原型还没有实现对恶意软件分类模块。这样的分类,一个序列相似性比较可疑API允许计算通过序列比对算法,如Needleman-Wunsch和均为算法。为了比较可疑的API序列彼此,我们将API方法转换为ASCII代码。转换后的字母,例如,ASCII代码序列,代表每个应用程序的行为模式。此外,我们建议的方法提取odex字节码通过挥发性记忆收购过程和使用静态分析来捕获恶意行为的足迹。类似于其他动态分析方法,我们有一个限制,当给定的恶意软件是由更复杂的包装方法混淆。在这种情况下,我们的方法未能附加PTRACE为了把有意义的字节码在内存部分,从而产生更有意义的分析。然而,这个缺点在动态分析中很常见。为了克服这些限制,我们将研究deobfuscation方法来提高我们的系统在未来的工作。

6。结论

大多数恶意软件检测系统重点分析基于签名或相似性匹配的恶意软件的家庭,他们不适合快速分析旨在发现这样的恶意软件的主要目的。对恶意软件的快速反应,我们采用了基于可疑API调用的面向功能的方法模式。我们建议的方法转储有意义的波动部分目标应用程序分配内存并提取可疑的apiodex与自定义字节码通过比较可疑的API列表。通过API调用匹配模式与我们的数据库功能,我们的方法可以检测给定移动恶意软件实现的功能。我们的实验表明,该方法表现良好和高精度检测恶意软件。我们相信,我们的方法可以用于应对不断变化的恶意软件。

附录

见表5


类别 方法

获取系统信息 TelephonyManager getDeviceId ()
getLine1Number ()
getNetworkOperator ()
getSimOperatorName ()
getSimSerialNumber ()
getSubscriberId ()
getCallState ()
UUID toString ()
WifiInfo getMacAddress ()
WifiManager getConnectionInfo ()
getWifiState ()

获取个人信息 LocationManager getLastKnownLocation ()
requestLocationUpdates ()
ContentResolver query()、删除()
Audio.Media getContentUriForPath ()
Images.Media getContentUri ()
Video.Media getContentUri ()
- - - - - - getContentResolver ()
Uri parse ()

发送或接收短信 SmsManager getDefault ()
sendTextMessage ()
createFromPdu ()
getDisplayMessageBody ()
getMessageBody ()
getOriginatingAddress ()
getUserData ()
gsm.SmsManager sendTextMessage ()
createFromPdu ()
getDisplayMessageBody ()

调用 telephony.ITelephony endCall ()

重新编码 AudioRecord startRecording ()
MediaRecorder 开始(),停止()

数据传输 HttpURLConnection getOutputStream ()
URLConnection getInputStream ()
getOutputStream ()
ssl.HttpsURLConnection getOutputStream ()
client.HttpClient execute ()

数据传输 client.DefaultHttpClient execute ()
JSONObject put ()
AQuery ajax ()

设备策略管理 DevicePolicyManager lockNow isAdminActive (), ()
DeviceAdminReceiver - - - - - -

动态加载 AssetManager getAssets ()
DexClassLoader loadClass ()
SecureClassLoader - - - - - -
URLClassLoader - - - - - -
运行时 exec (), getRuntime ()
VMRuntime getRuntime ()
系统 load (), loadLibrary ()

加密 crypto.Cipher doFinal ()
getInstance ()
crypto.KeyGenerator generateKey ()
SecretKeySpec - - - - - -

反射 getDeclaredMethod ()
reflect.AccessibleObject 种setAccessible ()

PendingIntent getBroadcast ()
- - - - - - abortBroadcast
FileOutputStream - - - - - -
ZipOutputStream close ()
PackageManager setComponentEnabledSetting ()
环境 getExternalStorageDirectory ()
getExternalStorageState ()
字符串 equalsIgnoreCase(),将()
ActivityManager restartPackage ()
AudioManager setVibrateSetting ()
setRingerMode ()
上下文 getSystemService ()

利益冲突

作者宣称没有利益冲突有关的出版。

确认

这项工作也支持的ICT MSIP / IITP研发项目。(14-912-06-002,基于脚本的网络攻击防护技术的发展。此外,本研究还支持韩国大学授予。

引用

  1. McAfee,”迈克菲实验室威胁报告,”2015年2月,http://www.mcafee.com/us/resources/reports/rp -季度威胁——第四季度- 2014. - pdf视图:谷歌学术搜索
  2. Apkprotect,http://www.apkprotect.com/
  3. Bangcle,http://www.bangcle.com/
  4. r . Yu,“Android封隔器所面临的挑战,构建解决方案,“https://www.virusbtn.com/pdf/conference_slides/2014/Yu-VB2014.pdf视图:谷歌学术搜索
  5. d . Arp m . Spreitzenbarth m .大h .吹牛的人,和k . Rieck”DREBIN: android恶意软件的有效和可辩解的检测在口袋里,”《21年度网络和分布式系统安全座谈会(nds的14),2014年1 - 15页。视图:谷歌学术搜索
  6. c . h . Peng盖茨,b . Sarma et al .,“使用概率生成模型的风险排名Android应用程序,”诉讼的ACM计算机和通信安全会议(CCS的12)罗利,页241 - 252年,数控,美国,2012年10月。视图:出版商的网站|谷歌学术搜索
  7. j . y . Wang郑、c .太阳和s . Mukkamala”量化安全风险评估的android权限和应用程序,”数据和应用程序的安全性和隐私第二十七课堂讲稿,在计算机科学中,页226 - 241,施普林格,2013年。视图:谷歌学术搜索
  8. c·杨,z, g .顾诉Yegneswaran和p·波勒斯,“DroidMiner:自动采矿和细粒度的恶意行为表征android应用程序,”电脑Security-ESORICS 2014: 19日欧洲研讨会研究在计算机安全学中,波兰弗罗茨瓦夫,2014年9月7 - 11。程序,我卷,8712在计算机科学的课堂讲稿施普林格,页163 - 182年,柏林,德国,2014年。视图:出版商的网站|谷歌学术搜索
  9. m·张y段、h .阴和z赵,“Semantics-aware Android恶意软件分类使用加权上下文API依赖图,”21 ACM的程序计算机和通信安全会议上(CCS的14)ACM,页1105 - 1116年,斯科茨代尔,亚利桑那州,美国,2014年11月。视图:出版商的网站|谷歌学术搜索
  10. w . Enck、m . Ongtang和p•麦克丹尼尔“轻量级的移动电话应用程序认证”学报》第16届ACM计算机和通信安全会议(CCS ' 09)ACM,页235 - 245年,2009年11月。视图:出版商的网站|谷歌学术搜索
  11. J.-W。张成泽,j . Yun j .哇,和h k金,“Andro-profiler:基于行为分析的移动恶意软件,反恶意软件系统”诉讼的同伴第23届国际会议上发表万维网的同伴(WWW的同伴的14),第738 - 737页,2014年。视图:谷歌学术搜索
  12. a . p .认为,p .皮尔斯g . Nunez d·瓦格纳,“AdDroid:特权分离在Android应用程序和广告商,”第七届ACM学报》研讨会信息,计算机和通信安全(ASIACCS 12),页71 - 72年,汉城,韩国,2012年5月。视图:出版商的网站|谷歌学术搜索
  13. 张y、m .杨许b . et al .,“审查不可取行为与许可使用Android应用程序分析,”诉讼的ACM SIGSAC计算机与通信安全会议上(CCS的13)ACM,页611 - 622年,柏林,德国,2013年11月。视图:出版商的网站|谷歌学术搜索
  14. k . Tam s . j .汗,a . Fattori和l . Cavallaro”CopperDroid:自动重建Android恶意软件的行为,”《22日年度网络和分布式系统安全座谈会(nds的15)2015年2月,圣地亚哥,加利福尼亚州,美国。视图:谷歌学术搜索
  15. y Ki、e·金和h·k·金,”一个新颖的方法来检测恶意软件基于API调用序列分析,“国际期刊的分布式传感器网络ID 659101条,卷。2015年,9页,2015。视图:出版商的网站|谷歌学术搜索
  16. j . d . Kim夸克,j .着你“DWroidDump: android应用程序的可执行代码提取恶意软件分析,“国际期刊的分布式传感器网络ID 379682条,卷。2015年,9页,2015。视图:出版商的网站|谷歌学术搜索
  17. 周w . y, z . Wang, x江,“嘿,你,我的离开市场:检测恶意程序在官方和替代安卓市场,”学报第19届网络和分布式系统安全座谈会(nds的12)2012年2月,圣地亚哥,加利福尼亚州,美国。视图:谷歌学术搜索
  18. D.-J。吴,学术界。毛,T.-E。魏,小时。李,K.-P。吴,“DroidMat: android恶意软件检测通过清单和API调用跟踪,”学报》第七届亚洲联席会议信息安全(亚洲青12),页62 - 69,东京,日本,2012年8月。视图:出版商的网站|谷歌学术搜索
  19. m .郑、m .太阳和j . c . s .他“Droid分析:基于签名的分析系统收集、提取、分析和关联android恶意软件”第12届IEEE国际研讨会论文集在信任、安全和隐私在计算和通信(TrustCom 13)IEEE,页163 - 171年,墨尔本,澳大利亚,2013年7月。视图:出版商的网站|谷歌学术搜索
  20. l . Deshotels诉Notani, a . Lakhotia”DroidLegacy: Android恶意软件自动化家族分类”学报ACM SIGPLAN程序保护和逆向工程车间(PPREW 14)2014年1月,ACM,。视图:出版商的网站|谷歌学术搜索
  21. j·李,李,和h·李,“筛选使用恶意软件的家庭智能手机应用程序签名,”电脑与安全,2015年。视图:出版商的网站|谷歌学术搜索
  22. f - secure,”威胁报告H1 2014。”https://www.f-secure.com/documents/996508/1030743/Threat_Report_H1_2014.pdf视图:谷歌学术搜索
  23. f - secure,“f - secure, 25年的世界上最好的保护,”2013年,http://www.fsecure.com/en/web/labs_global/视图:谷歌学术搜索
  24. 工程学系。Seo, a·古普塔a . m . Sallam e . Bertino k .严,“检测移动恶意软件通过静态分析国土安全,”网络和计算机应用》杂志上,38卷,不。1,利润率达到,2014页。视图:出版商的网站|谷歌学术搜索
  25. J.-W。张成泽,h·康j .哇,a . Mohaisen和h k金,“Andro-AutoPsy:反恶意软件系统基于相似性匹配的恶意软件和恶意软件creator-centric信息,“数字调查,14卷,17-35,2015页。视图:出版商的网站|谷歌学术搜索
  26. l . Bergroth h . Hakonen, t·沙拉、“最长公共子序列算法的一项调查,”第七届国际研讨会字符串的程序处理和信息检索(尖顶' 00)IEEE,页39-48,加盟西班牙,2000年。视图:出版商的网站|谷歌学术搜索
  27. Androguard”,逆向工程,恶意软件和Goodware Android应用程序的分析,“2014年,https://code.google.com/p/androguard/视图:谷歌学术搜索

版权©2016 Jae-wook张成泽和金Huy康。这是一个开放的分布式下文章知识共享归属许可,它允许无限制的使用、分配和复制在任何媒介,提供最初的工作是正确引用。


更多相关文章

PDF 下载引用 引用
下载其他格式更多的
订单打印副本订单
的观点1789年
下载1222年
引用

相关文章

文章奖:2020年杰出的研究贡献,选择由我们的首席编辑。获奖的文章阅读