@author : Dlive

0x01 DroidBox简介

DroidBox是一款,可以获得以下信息

1.APK包hash值

2.网络通信数据

3.文件读写操作

4.网络通信,文件读写,SMS中的信息泄露

5.权限漏洞

6.调用Android API进行的加密操作

7.Broadcast receiver组件信息

8.SMS短信与电话信息

9.DexClassLoader加载信息

0x02 Droidbox安装运行

本机现有环境:

1. Ubuntu 14.04 amd64

安装环境:

1. Oracle JDK 1.7(apktools需要jdk1.7的环境)

2. Android SDK

3. Apktool

4.DroidBox

0x03 JDK安装

从Oracle官网下载JDK安装包 jdk-7u79-linux-x64.tar.gz

http://www.oracle.com/technetwork/java/javase/downloads/java-archive-downloads-javase7-521261.html

将安装包解压到/home/android/java 目录下

在 /etc/profile中配置环境变量如下

运行. /etc/profile使环境变量生效

0x04 Android SDK安装

下载Android SDK压缩包 android-sdk_r22.6.2-linux.tgz

将压缩包解压到/home/android/sdk 目录下

但是这个SDK压缩包里并不是完整的SDK,其中不含常用工具platform-tools

运行 . tools/android sdk 命令 ,选择你想要安装的API版本和platform-tools

设置好代理即可下载:(不设置的话国内会很慢。。。你懂的)

在 /etc/profile中配置环境变量如下


0x04 Apktool安装

按照官网的说明下载安装即可,这个就不多说了

http://ibotpeaches.github.io/Apktool/install/

配置一下环境变量


0x05 DroidBox安装

下载一大堆的依赖包

apt-get install python-dev python-numpy python-scipy python-matplotlib ipython ipython-notebook python-pandas python-sympy python-nose

下载最新版的DroidBox https://github.com/pjlantz/droidbox/releases

这里我下载的时候最新版为:DroidBox411RC.tar.gz (for android 4.1.1)

创建android虚拟机:

android list target #查看可获取的安卓虚拟机

android list avd #查看已创建的安卓虚拟机

android create avd -n <avd name> -t <android id> #创建一个虚拟机,名字自定义

(启动虚拟机的命令:emulator @droidbox_android4.1.2)

这里我创建的是API16 Android 4.1.2的虚拟机(arm内核 –abi armabi-v7a)

启动虚拟机:./startemu.sh droidbox_android4.1.2

安装要分析APK: adb install 1.apk

开始分析:./droidbox.sh 1.apk

可以设置分析时间:./droidbox.sh 1.apk 10 (10表示10s)

0x00 参考资料

1. DroidBox-Android APP动态分析工具&APIMonitor   -- 碳基体

http://danqingdani.blog.163.com/blog/static/18609419520121125104952911

2. DroidBox环境搭建

http://blog.csdn.net/ccc7560673/article/details/8004039

3. Linux上创建安卓模拟器

http://blog.csdn.net/ruanjianxiong/article/details/7620570

4. Flappy Bird恶意程序详细分析 – 乌云知识库

http://drops.wooyun.org/tips/1314

Droidbox恶意软件动态分析环境搭建的更多相关文章

  1. Android 程序分析环境搭建-动态分析环境搭建

    静态查看过app 的代码,但是有些app 非常复杂,页面好多,你根本找不到从何处下手.还有app 通过静态分析,发现有被加固(后续会讲如何砸壳),根本找不到,还有即便你搜索app界面上的文字,你也搜索 ...

  2. .NET Core系列 : 1、.NET Core 环境搭建和命令行CLI入门

    2016年6月27日.NET Core & ASP.NET Core 1.0在Redhat峰会上正式发布,社区里涌现了很多文章,我也计划写个系列文章,原因是.NET Core的入门门槛相当高, ...

  3. Azure Service Fabric 开发环境搭建

    微服务体系结构是一种将服务器应用程序构建为一组小型服务的方法,每个服务都按自己的进程运行,并通过 HTTP 和 WebSocket 等协议相互通信.每个微服务都在特定的界定上下文(每服务)中实现特定的 ...

  4. rnandroid环境搭建

    react-native 环境搭建具体步骤这个大家已经玩烂了,这个主要是记录下来自己做win7系统遇到的坑 1.com.android.ddmlib.installexception 遇到这个问题,在 ...

  5. python开发环境搭建

    虽然网上有很多python开发环境搭建的文章,不过重复造轮子还是要的,记录一下过程,方便自己以后配置,也方便正在学习中的同事配置他们的环境. 1.准备好安装包 1)上python官网下载python运 ...

  6. springMVC初探--环境搭建和第一个HelloWorld简单项目

    注:此篇为学习springMVC时,做的笔记整理. MVC框架要做哪些事情? a,将url映射到java类,或者java类的方法上 b,封装用户提交的数据 c,处理请求->调用相关的业务处理—& ...

  7. 【定有惊喜】android程序员如何做自己的API接口?php与android的良好交互(附环境搭建),让前端数据动起来~

    一.写在前面 web开发有前端和后端之分,其实android还是有前端和后端之分.android开发就相当于手机app的前端,一般都是php+android或者jsp+android开发.androi ...

  8. Nexus(一)环境搭建

    昨天,成功搭建了自己的 Maven 环境(详见:Maven(一)环境搭建),今天就来研究和探讨下 Nexus 的搭建! 使用背景: 安装环境:Windows 10 -64位 JDK版本:1.7 Mav ...

  9. 「译」JUnit 5 系列:环境搭建

    原文地址:http://blog.codefx.org/libraries/junit-5-setup/ 原文日期:15, Feb, 2016 译文首发:Linesh 的博客:环境搭建 我的 Gith ...

随机推荐

  1. Redis作为消息队列服务场景应用案例

    NoSQL初探之人人都爱Redis:(3)使用Redis作为消息队列服务场景应用案例   一.消息队列场景简介 “消息”是在两台计算机间传送的数据单位.消息可以非常简单,例如只包含文本字符串:也可以更 ...

  2. SQLite剖析之编程接口详解

    前言 使用过程根据函数大致分为如下几个过程: sqlite3_open() sqlite3_prepare() sqlite3_step() sqlite3_column() sqlite3_fina ...

  3. Git和Github简单教程

    原文链接:Git和Github简单教程 网络上关于Git和GitHub的教程不少,但是这些教程有的命令太少不够用,有的命令太多,使得初期学习的时候需要额外花不少时间在一些当前用不到的命令上. 这篇文章 ...

  4. jQuery1.9之后使用on()绑定 动态生成元素的 事件无效

    来自互联网: 需要绑定a的父级元素(此元素必须为静态元素,不是后来动态生成的),然后设定on()方法的selector参数才行: $('p').on('mouseenter', 'a', functi ...

  5. jsonp 跨域请求

    背景: JavaScript是一种在Web开发中经常使用的前端动态脚本技术.在JavaScript中,有一个很重要的安全性限制,被称为"Same-Origin Policy"(同源 ...

  6. Bioinformatics Glossary

    原文:http://homepages.ulb.ac.be/~dgonze/TEACHING/bioinfo_glossary.html Affine gap costs: A scoring sys ...

  7. git版本控制?

    git是一个分布式的版本控制系统,版本控制系统,类似于保险箱,而我们的代码就是资产:通过对代码的有效管理可以更好的提高我们的生产效率:maven是主要是一个项目构建工具,解决的是我们个人在开发过程中的 ...

  8. Kafka实战-Flume到Kafka

    1.概述 前面给大家介绍了整个Kafka项目的开发流程,今天给大家分享Kafka如何获取数据源,即Kafka生产数据.下面是今天要分享的目录: 数据来源 Flume到Kafka 数据源加载 预览 下面 ...

  9. Mac OSX定位命令路径的方法

    可以使用which命令来定位一个命令. http://www.cyberciti.biz/faq/how-do-i-find-the-path-to-a-command-file/

  10. webpack-dev-server

    webpack-dev-server是一个小型的node.js Express服务器,它使用webpack-dev-middleware中间件来为通过webpack打包生成的资源文件提供Web服务.它 ...