题目:Deep Android Malware Detection

作者:Niall McLaughlin, Jesus Martinez del Rincon, BooJoong Kang

年份:2017

会议:CODASPY

2.解决的问题

之前的方法需要对程序进行分析然后提取具有识别能力的特征用于恶意软件的分类。在本文中应用卷积神经网络来对恶意软件进行分类,该方法是受到基于n-gram的恶意软件检测的启发,但不同于基于n-gram的恶意软件检测,对于n个操作数作为卷积神经网络的输入,卷积神经网络会自动的识别恶意软件的特征。

3.研究点

如果构造用于恶意软件分类的卷积神经网络;如何提取卷积神经网络的输入;

4.研究假设

5.关键算法

在介绍算法之前需要了解一下什么是n-gram

n-gram是计算机语言学和概率论范畴内的概念,是指给定的一段文本或语音中N个项目(item)的序列。项目(item)可以是音节、字母、单词。通常n-gram取自文本或语料库。举例来说:将"informationretrieal"视为一段文本,它的5-grams的item依次为:

infor,nform,forma,ormat,rmati,matio,ation,tionr,onret,nretr,retri,etrie,triev,rieva,ieval

提取卷积网络的输入

将.apk文件反编译为.smali文件,然后提取操作符。由于在Dalvik中的字节码中定义的操作符有218个,因此将每个操作符映射成一个操作数。为了说明,这里假设提取到的应用的操作数序列为{1,2,3,4,5,6,7,8},N的大小的为4,根据n-gram的定义,输入有{1,2,3,4},{2,3,4,5},{3,4,5,6},{4,5,6,7},{5,6,7,8}共5组

将每一个操作数表示成one-hot形式(one-hot是一个218维的向量,对应的操作数上置为1,其他置为0)。之所以将操作数表示成one-hot的形式是因为这样可以将one-hot向量映射成一个k维的嵌入空间,这样可以表示不同操作数之间的关系。

构造卷积神经网络

卷积网络的整体结构如下,包括一个Embedding层,两个卷积层,一个池化层,一个全连接层,以及最后的softmax分类层。

用one-hot表示的操作数序列矩阵M(N*218)通过Embedding Layer映射成矩阵P(N*K)。每个卷积层有m个过滤器,每个过滤器为s1*k,这意味着每个过滤器可以检测是s1个序列的操作数,每个过滤器会输出n*1大小的向量,将这些向量叠在一起就得到了矩阵A1(n*m)(注意这里和传统的卷积有所不同),通过第二层卷积以及池化层池,化层的公式如下(注意这里和传统卷积池化层公式有所不同,目的是为了得到一维向量)

得到一个一维向量。得到的一维向量再作为传统神经网络进行分类的训练。

6.数据

7.优点

通过简单的操作数序列可以卷积神经网络可以自动的学习一些比较复杂的特征用于恶意软件的分类。克服了传统的基于n-gram的算法中n不能太大的限制。

8.不足之处

9.可能的后续改进点以及创新点

是否可以其他的深度学习模型用于恶意软件的检测。

 
 
 

Deep Android Malware Detection小结的更多相关文章

  1. 【论文笔记】Malware Detection with Deep Neural Network Using Process Behavior

    [论文笔记]Malware Detection with Deep Neural Network Using Process Behavior 论文基本信息 会议: IEEE(2016 IEEE 40 ...

  2. 【论文笔记】DeepOrigin: End-to-End Deep Learning for Detection of New Malware Families

    DeepOrigin: End-to-End Deep Learning for Detection of New Malware Families 标签(空格分隔): 论文 论文基本信息 会议: I ...

  3. cdmc2016数据挖掘竞赛题目Android Malware Classification

    http://www.csmining.org/cdmc2016/ Data Mining Tasks Description Task 1: 2016 e-News categorisation F ...

  4. Android Camera 使用小结。两种方法:一是调用系统camera app,二是自己写camera程序。

    源文链接:http://www.cnblogs.com/franksunny/archive/2011/11/17/2252926.html Android Camera 使用小结 Android手机 ...

  5. 论文阅读计划2(Deep Joint Rain Detection and Removal from a Single Image)

    Deep Joint Rain Detection and Removal from a Single Image[1] 简介:多任务全卷积从单张图片中去除雨迹.本文在现有的模型上,开发了一种多任务深 ...

  6. Android Camera 使用小结

    Android手机关于Camera的使用,一是拍照,二是摄像,由于Android提供了强大的组件功能,为此对于在Android手机系统上进行Camera的开发,我们可以使用两类方法:一是借助Inten ...

  7. Android:Sqlitedatabase学习小结

    今天刚刚学习完Sqlite数据库的基础知识,随即把学到的东西记录下来,以便随后查阅,以下是自己对Sqlite数据库的小结:1.Sqlite简介       Sqlite是一款轻型的数据库,它包含在一个 ...

  8. android: Android 权限管理小结

    一. 概述 感谢郭神,自从Android6.0发布以来,在权限上做出了很大的变动,不再是之前的只要在manifest设置就可以任意获取权限,而是更加的注重用户的隐私和体验,不会再强迫用户因拒绝不该拥有 ...

  9. Android事件分发小结

      ******** ******** 第一部分: 介绍说明 ******** ********        个人感觉在做交互的时候, 对于Android的按键分发的理解还是比较重要的. 这些内容在 ...

随机推荐

  1. C#字段声明部分如何调用该类中的方法进行初始化?

    问题描述: 有时,功能需求,需要在初始化字段时,需要视不同情况赋予不同字段值. 解决办法: 将方法设为static即可. e.g. public string str = SetStr(); publ ...

  2. selenium+python之python多线程

    程序.进程及线程的区别 计算机程序是磁盘中可执行的二进制数据(或者其他类型)他们只有在被读取到内存中,被操作系统调用才开始他们的生命周期. 进程是程序的一次执行,每个进程都有自己的地址空间,内存,数据 ...

  3. HDU - 5457 Hold Your Hand (Trie + 最小割)

    Hold Your Hand Time Limit: 1500/1000 MS (Java/Others)    Memory Limit: 65535/102400 K (Java/Others)T ...

  4. POJ 4020 NEERC John's inversion 贪心+归并求逆序对

    题意:给你n张卡,每张卡上有蓝色和红色的两种数字,求一种排列使得对应颜色数字之间形成的逆序对总数最小 题解:贪心,先按蓝色排序,数字相同再按红色排,那么蓝色数字的逆序总数为0,考虑交换红色的数字消除逆 ...

  5. python入门:输出1-10的所有数

    #!/usr/bin/env python # -*- coding:utf-8 -*- #输出1-10的所有数 """ 变量kaishi的赋值为数字1,while 真, ...

  6. Livid : 在 26 岁时写给 18 岁的自己

    转载自: https://livid.v2ex.com/essays/2012/01/24/a-letter-from-26-to-18.html 在 26 岁时写给 18 岁的自己 Jan 24, ...

  7. CentOS 系统下Gitlab搭建与基本配置 以及代码备份迁移过程

    GitLab 是一个开源的版本管理系统,提供了类似于 GitHub 的源代码浏览,管理缺陷和注释等功能,你可以将代码免费托管到 GitLab.com,而且不限项目数量和成员数.最吸引人的一点是,可以在 ...

  8. 一个炫酷的flash网站模板

    这是一个炫酷的flash欧美网站模板,它包括首页,公司简介,留言等五个页面,界面转换非常的炫酷!他还有时间.全屏.背景音乐开关的功能!有兴趣的朋友可以看看!贴几张网站图片给大家看看! 下载后直接找到s ...

  9. Java 编辑html模板并生成pdf

    1.工具类 import com.hujiang.project.zhgd.Util; import com.itextpdf.text.BaseColor; import com.itextpdf. ...

  10. Beyond Compare 4 30天试用期后,破解方法

    Beyond Compare 4 30天试用期后,破解方法. 方法一:在安装目录下找到文件BCUnrar.dll,比如:D:\software\Beyond Compare 4,重命名该文件即可. 重 ...