论文研究-行为特征值序列匹配检测Android恶意应用.pdf

所需积分/C币:9 2019-09-07 11:51:08 845KB .PDF
收藏 收藏
举报

针对Android恶意代码的混淆、隐藏、加密情况以及现有方法的检测能力不足问题,提出了一种基于恶意应用行为特征值序列的动态检测方法。首先利用远程注入技术将动态检测的模块注入到Android系统的Zygote进程中,执行内联挂钩来监测应用中的重要函数。然后,通过函数监听得到Android应用的重要行为;进而,按照行为的特征将其量化为特征值,再按照时间顺序将行为特征值排为序列,得到行为特征值序列。通过利用支持向量机来训练5 560个恶意样本,得到恶意应用家族的行为特征值序列;最后利用此序列与被检测应用的序列进行相似度比较,判断应用是否为恶意应用。在恶意应用动态检测方面的正确率可达到95.1%,以及
张震,等:行为特征值序列匹配检测 恶意应用 用内联挂钩技术修改重写内存中任意一处的指令,并且得到应用访问的服务器的地址以及访问端凵。通过 跳转到自定义的函数当中。此方法与系统平台可执行监听()系列函数和监听()系列函数,前者可以 文件的汇编指令集密不叮分,本实验使川的动态检测模得到 应用向目标主机发送的数据;而后者可以 块只针对指令、 和 的指令的内得到 应用从H标主机处接收的数据 联挂钩流程如图所示。首先是获得系统谢用的S,文件访间行为是应用打开访间文件的 入口地址,将入口地址处的指令修改为跳转到执行监听行为,由于 系统中,用户存在着很多其他的隐私 并记录应用行为的函数,执行完毕之后恢复到正常的函文件,例如通讯录数据,照片数据。或者是将隐藏的恶 数逻辑当中。 意代码释放出来,或是打开恶意代码文件。因此,监听 应用的文件访问行为的主要函数有 原指令 原指令圆转进行动念监听 的函数 ()等函数例如通过)函数的参数 可以得知 应用加载模块的名称。通过截取文件 修改 被处 恢复环境并执 跳转到动态检 访问函数的参数,可以得到打开的文件的路径,从而得 函数指令 指令 跳<行原指冬 应用访问了的文件名称。 图 实现原理流程图 S3,运行可执行文件行为,指 文件运行可 执行文件的行为。例如可能会利用命令来进行 对于层的的挂钧由于层的代码是静默安装广告软件甚至是恶意软件或者利用可执行文 基于( )的,四此并不能直件执行一些其他的窃取系统信息或者是提升用户权限 接找到函数入口地址来进行内联挂钩。而提供了 种反射的方法,可以使得在原生()层调川 的命令。对丁此类的行为的访问的监听()函数, 层的函数。而且还提供了方法将层的方法转 ()函数会创建一个子进程执行运行文件,因此可 为函数,当层的函数成功转为 函数以截获参数来得知 应川执行命令。同理,截获 后,即和 层的系统调用一样可以使用内联挂钩来 )数以及是()系列函数中的参数,也可以 对其进行挂钩,从而实行监听。 得到 应用执行的命令 4,调用敏感行为 系统提供了 基于行为的恶意应用检测 来获得于机信息,这些信息涉及用广隐私,因此对于此 检测模块动态监听的行为 类行为也需要动态监听。例如 ()此函数是 出于 系统中的 缴量庞大,若监听用得设备,而 ()函数则可 应用的所有会极大地降低检测效率。囚 以获取手机的位置信息,又或者是 ()函 进行监听。并将这些数可以利用于机设备发送信息。虽然这些 的行为按照行为特征分为类,并用个集合表数据都非常敏感,但是部分良性应用的功能也会利用这 示。如表所示,第一类特征是网络访问行为,第类些敏感信息,有可能会造成错误地将良性应用判断为恶 是文件访问行为,第三类是运行可执行文件的行为,第意应用。因此需要分析函数调用顺序甚至结合集合S1 四类则是访问层敏感的行为。 的网络访问行为来监听这些敏感数据的去向。 表行为特征集的分类以及监听内容 行为特征值序列 本文实验会从来自等人收集的个恶意 集合符号 行为名称 监听内容 访问的地址,端口号, 应用样本屮将以上S1~S4共种特征集屮进行行为监 网络访问行为 发送的数据,接收的数括 听和收集,并且将收集的行为进行编号。编号的方式为 X1X2X3。编号的第一个数X1是指行为特征集合所属 文件访问行为 打开的文件的文件名, 打开模式 类型。编号的第二个数字ⅹ2则是特征行为集合中所调 运行可执行文件行为执行的文件名,执行参数 用的函数。而编号最后的数字X3就是函数中的参数 调用敏感行为被调用的敏感函数的名称 值。从表屮苄个例子,当监测到 调用时的参数 应用调用了 函数访问了一个黑名单上的地址以及其端 网络访问行为。网终访问行为是 应用口,则编号为。编号中的第一个数字所代表的 最普遍的行为,恶意应用会利用互联网下载恶意软件,是该行为是来自集合S1的,而第二个数字则代表了应 下载广告软件并静默安装,并且将用户的隐私数据上传用是从集合S1调用了被监听的(函数,而最后 到收集数据的主机当中。囚此,动态监听 应用 个数字代表了调用 ()函数所要访问的地 的网络访问行为,通过获得调用时的参数,可以址是来自黑名单的。 计算机工程与应用 表行为编号列表的部分展示 o,ifi=O orj=0 行为特征所 事-1]+1,if>0andb,≠l 监听的函数名 属集合 监听的参数 编号 max(di j-1lci-1il, if i, j>0 and b: *d 黑名单中的地址 序列c是输出的b序列和d序列的最人公共子序列,可 臼名单中的地址 以通过动态规划的方式求出最长公共子序列的值。 不在黑名单和白名单 中的地址 利用提高检测正确率 发送内容有敏感信息 通过公式()和公式(),可以计算出每个家族的特 )发送的内容没敏感 征行为序刎。以这个序列为标准,和之后输入的 信息 应用的序列进行匹配,若与恶意家族标准序列中的其中 个相同,则判输入的 应用为此家族的恶意应 打开了敏感文件 打开了正常文件 0 用。但是,这种方法需要解决两个重要的问题 问题假若序列符合两种或以上的恶意家族序列, 则需要继续从其他的行为中判断出其究竞属于哪一种 而要构造由行为编号组成的数字序列、则需要训练恶意应用家族。 集来构造行为的编号以及每个恶意应用家族特定的恶 问題假若某种行为可以用功能相似的行为所替 意行为的数字序列。首先要将行为集合量化为编号集代,则会使得序列匹对失败,降低成功率 合,假设每个行为的判断为,而s是来自个用于 为解决以上两个问题,本实骑使用了支持向 数据训练的恶意样本,构成的恶意样本行为集合S=量机。利用支持向量机来对训练集上的学习进行 ,3,…,2表示当前所有行为的集合。而s行为对优化。能够自动创造一个基准线来将某个家族的 应的编号为x,而集合X是由x组成的集合{x1,x2,…,相似的恶意行为、恶意应用让行划分将其归类到同 x}。然后从集合X中的所有编号中组成一个数字序个序列当中。这样就能够有效解决问题的行为相似 的难以判断的情况。不仅如此,还有非一致性特征行为 A是由样本中的应用中的所有的行为的编号组成的基淮线由于存在某些行为是恶意家族中个别 的序列。当动念检测模块中枪测到应用的行为s时,则应用中没有存在的行为但是能够标识家族的特点行 判断s是否存属于集合S当中,如果s属于集合S,则 为,也需要划分基准线,如表 将S中的s所对应的x1加入到序列A当中;若§不属 此类基准的划分就是按照该行为的编号出现的次 数,倘若次数超过了划分的基准线,入到家族的特 于集合S,则将行为s以sn+1并入到集合Sn当中,同时 将所对应的xn1加入到X集合当中,A序列加入行为在行为序列当中 检测流程小结 编号x+1。所有被监听到的行为的编号组成序列A 总休来说,检测流程可以归纳为两点。分别是应用 1, 行为监听与行为特征值序列匹配检测 最长公共子序列特征行为 在行为监听流程中,将动态检测模块远程注入到 假设训练集上一共有n个恶意应用家族分类,每个 进程当中,然后利用 将监听收集应 家族的被检测的样本组成集合y,{y1,y2…,m}。假设用的行为。这样,就可以在 系统不允许跨进程 第i个家族集合y的数量y所拥有的数量为m:个,访问的条件下进行动态检测模块的注入并执行。同时 即恶意应用对应的行为特征序列为an(<i<n,1≤ 也可以在进程的任意一处进行修改,其有 j≤m),即计算第i个家屮的所有的m个应用的所有良好的扩展性,便增添或者是减少需要监听的 行为特征序列的最长公共子序列。这里使用了迭代的 通过上述的动态检测模块监听到了 应用程 思想,如公式()所示 序的行为,利用特征序列匹配来检测应用。利用每个家 族的行为特征值序列与样本应用的序列进行匹配,其最 I=22/=n 1f(a,a),1<i≤m ()长公共子序列达到國值则判断样本是否为恶意应用软 件。从行为特征值序列中找出恶意行为,能够将应用抽 a表示某个家族的特征行为序列,m是样本中该家族的象的行为以数字序列的方式表达,从而能够得到应用行 总数。而44≤≤m)则是家族中第个应用的行为特为的内容以及行为的时序,极大地提高了检测效率以及 征数列。而函数∫则是求两个数字序列的最长公共子准确率。这里利用是来优化家族的行为特征值向 序列。假设输入的数列是b序列与d序列,/函数的内量以及判断的阈值,能够有效地区分相似性和可替代行 容如公式()所示 为提高检测的准确率。 张震,等:行为特征值序列匹配检测 恶意应用 表恶意家族的行为特征值列表 恶意应用家族 行为特征值序列 实验结果分析 C 应用都添加了代码保护壳,代码混淆等对抗 实验样本 反编译的措施。因此直接反编译文件中的文 为了得到本文的训练集,这里使用了“等人的件不能得到应用真正的代码。但是木文实验的方 收集的 个恶意软件集合。而对于本实验的方法进法却没有收到代码保护壳的丝毫影响。 行验证,从 网站,以及国内的应用宝、豌豆 表是通过训练集得到的每个家族的行为特征值 荚、百度于机助于、于机助于等应用市场中获得 序列。通过每个家族的特征值来对输入的 应用 个样本。其中有个恶意样本以及个良性样本。进行动态检测,得到输入的 应用额度行为特征 这个个样本已经在 网站上进行检测值序列,再与这些家族额度特征值序刎进行比较 过,确定是个恶意样本以及个良性样本 由于输入的应用的序列可能与训练出来的恶意应 度量指标 用的家族的行为特征值序刎有一定的偏差值。这个偏 差值最大限度则设置为國值。通过阈值的调整来优化 本实验使用了召回率准确率、正确率这种检测 实验的动态检测的效果。这里使用阈值的是从 指标进行检测并且使用了正确分类的恶意软件数量选取精度为,如图所示。 (),正确分类良性应用的数量(),错误分类恶意应 用数量(),错误分类良性应用的数量()。出此个 一召回率-一准确率正确率 变量来计算种检测指标。 ()召回率( )。恶意应用软件被正确地 检测的数量在所有的恶意软件中的比例:R1an=TP/ (P-FN)。 ()准确率( )。良性应用被正确检 國值 测的数量在所有良性软件中的比例: rprecision=TN 图不同阈值下的动态检测的召回率、准确率、正确率 (IN+FN) ()正确率( 被正确檢测的软件的数量 由图中的数据得到,当阈值为时的正确率是 在所有软件的数量中的比例:Rmy=(TP+T/(TP+ 最高的。此时的正确率为 与本文 所提方法使用均是来自的同一个训练集。而 TN+FP+FN 对于从应用市场等收集的个样本的正 实验结果 确率最高只能够达到左右 虽然与本 本实验的环境是 ,内仔文使用的是同一个训练集,用其对本文收集的 是,系统是 。在此基础上创建个样本进行检测,成功率最高只能达到因此,本 虚拟机,内存为,为 系统。文所使用的方法最高的正确率比 的正确率 本文所使用名为 的 程序,随机模拟出高左右,而比 的正确率高左右。表明 用户在 系统上的各种操作,并且模拟 本文方法检测恶意应用的止确率更高。而 的各种消息,来模拟动态测试应用软件。 正确率最高能够达到,而本实验的正确率只能高 本文的实验结果和静态分析工具 左右,因此从正确率上与 相比并不能体 相比较。这两个对于个的样本检测的准确现出优势。但是, 与本实验都是将动态检测的 率虽然高。但是对于从应用下载的个应用的检测代码注入到被检测应用的进程当中去检测,注入动态检 的准确率却非常低。成功率几乎为,原因是因为现在测代码需要占据定的内存 计算机工程与应用 表动心检测模块注入所占空间大小的比较 动态检测方法平均额外占用空间大小 本文方法 这里使用的检测方法利用查看动态模块的文件 的大小以及是利用 系统的命令 ”查看增加的实际内存占用。发现实际增 加的内存占用和要加载的动态枪测模块的文件相● 似,平均值大概就是 远远少于 和 方法所消耗的内涠,与占用内存最少的 相比,比其占用的 将近少了一半以上由 此可知,在正确率相近的情况下,本文使用的方法占用 更少的系统资源,更加轾量级。 结束语 本文通过以时间为顺序的 应用行为构成 个行为特征值序列。以动态检测的行为时间顺序的序 列作为判断恶意应用以及恶意家族分类的重要依据。 以数字序列作为描述恶意家族的特征,检测正确率更 高;再结合支持向量机的优化,更有效地将动态检测的 行为量化作为特征值进行恶意应用检测。而且实验用 的动态检测模块适用范围更霓广,占用系统资源也更 少,属于高效轻量级的检测方法。 木文的正确率最高值只有 与主流的恶意检 测软件的正确率相比较是要低的,因此本方法还拥有提 尹锡训 内核源码剖析崔范松,译北京 升的空间。提升的空间主要有支持向量机的参数优化, 人民邮电出版社 得到更加符合恶意应用行为特征值序列,使得实验的正 罗文塽,曹天杰基于非用户操作序列的恶意软件检测方 确率能够进步地提高。并且还能够再对动态检测的 法计算机应用, 时机进行优化,本实验只有对,进行挂钩;假若能够 动态检测更加底层的函数,则能够更加准确地捕 获到应用的行为。 侯勤,曹天杰基于网络行为分析的 恶意软件 动态检测江苏徐州:中国矿业大学, 参考文献: 安全 全攻防 杈威指南诸葛建伟,杨坤,肖梓航,泽北京:人民邮 电出版社 吴文刚,张志文信息安全等级保护服务器脚 本测评方法现代工业经济和信息化,,():

...展开详情
试读 6P 论文研究-行为特征值序列匹配检测Android恶意应用.pdf
立即下载 低至0.43元/次 身份认证VIP会员低至7折
抢沙发
一个资源只可评论一次,评论内容不能少于5个字
weixin_38743481 欢迎大家使用并留下宝贵意见
2019-09-07
  • 至尊王者

    成功上传501个资源即可获取
关注 私信 TA的资源
上传资源赚积分or赚钱
最新推荐
论文研究-行为特征值序列匹配检测Android恶意应用.pdf 9积分/C币 立即下载
1/6
论文研究-行为特征值序列匹配检测Android恶意应用.pdf第1页
论文研究-行为特征值序列匹配检测Android恶意应用.pdf第2页

试读结束, 可继续阅读

9积分/C币 立即下载 >