首页
社区
课程
招聘
[原创]Android沙盒开发之动态分析介绍
发表于: 2013-6-7 21:44 22393

[原创]Android沙盒开发之动态分析介绍

2013-6-7 21:44
22393
标 题: 【原创】Android沙盒开发之动态分析介绍
作 者: 蟑螂一号
时 间: 2013-06-07,20:54:38
链 接: http://bbs.pediy.com/newthread.php?do=newthread&f=131
   
   随着Andriod用户的增多,针对android系统的恶意软件越来越多。因此,分析android应用变得越来越重要。目前,分析android apk的工具有静态分析工具和动态分析工具。静态分析主要就是反编译apk,分析反编译之后的代码。动态分析主要就是让程序运行起来,获取程序运行过程中产生的api调用,从而获取其行为信息。本文主要研究动态分析,因此以下主要从动态分析入手。
   动态分析可以分析程序的很多行为,包括:
   1.程序启动的Activity、Service、BroadcastReceiver组件。
   2.程序root权限获取。
   3.程序文件操作,打开、读写、关闭文件。
   4.程序数据库操作。
   5.程序短信发送、录音、定位、获取手机IMEI/IMSI/电话号码、拨打电话、电话状态监听、终止短信接收、改变电话状态(挂断、接听)。
   6.程序通讯录、通话记录、短信数据库获取。
   7.程序访问网络URL、IP地址和端口号、网络抓包。
   8.程序开机自启动、接收短信行为、电话。
   9.动态权限获取。
   10.程序ptrace注入、dexclassloader加载、java反射调用。
   11.程序开机自启动
   目前,动态分析工具有APIMonitor和DroidBox。DroidBox是基于TaintDroid构建的分析工具。分析了一下TaintBox源码,主要工作原理是在dalvik目录中增加了对对象的操作类Taint.cpp,并在对象中增加u8 tag变量,存储标识,完成对关键数据的污点标记。当程序通过API获取敏感信息,利用封装的Taint类讲数据进行污点标识。TaintBox的污点追踪值得学习借鉴。
   实现方式:
   1.内核空间api拦截,通过printk将格式信息写入。在PC端通过adb shell  cat  /proc/kmsg读取信息解析。
   2.用户空间api拦截。
    本人在模拟器和真机设备都做过相关的沙盒系统,通过比较,真机设备是最好的方案。
    欢迎对沙盒开发感兴趣的朋友一起交流讨论。

[培训]《安卓高级研修班(网课)》月薪三万计划,掌握调试、分析还原ollvm、vmp的方法,定制art虚拟机自动化脱壳的方法

收藏
免费 5
支持
分享
最新回复 (14)
雪    币: 2
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
目前我也在做这方面的事情 ,能跟楼主交流下么
2013-7-1 08:58
0
雪    币: 259
活跃值: (3623)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
3
可以多多交流,留一个qq吧!
2013-7-1 09:36
0
雪    币: 33
活跃值: (145)
能力值: ( LV7,RANK:100 )
在线值:
发帖
回帖
粉丝
4
参考SEandroid即可,通过LKM实现进程控制。也控制所有系统API。
另外这样的工作无需hook,自己编译一个定制版android最有价值!
2013-7-4 09:20
0
雪    币: 35
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
哎 想交流 可惜技术还不到位啊。。。。
2013-7-4 10:26
0
雪    币: 90
活跃值: (126)
能力值: ( LV6,RANK:80 )
在线值:
发帖
回帖
粉丝
6
顶楼主啊。目前也在做这方便的。感觉效果不是特别好
2013-8-28 15:36
0
雪    币: 259
活跃值: (3623)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
7
  你是用真机还是模拟器,真实设备效果还是很不错的。
2013-8-28 16:12
0
雪    币: 90
活跃值: (126)
能力值: ( LV6,RANK:80 )
在线值:
发帖
回帖
粉丝
8
模拟机。。。。没有真机啊
2013-8-29 08:45
0
雪    币: 13
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
楼主你好,请问有droidbox在真机部署的资料么?我搜了一下,好像没有。
2014-4-16 17:47
0
雪    币: 259
活跃值: (3623)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
10
   droidbox没有,不过你可以自己编译移植到手机。
2014-4-16 22:48
0
雪    币: 196
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
11
marking
2014-4-23 10:56
0
雪    币: 450
活跃值: (13)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
12
想了解这方面的技术,能与楼主沟通不?
2014-5-16 00:42
0
雪    币: 450
活跃值: (13)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
13
怎样联系楼主呢?楼主能留下联系方式吗?
2014-5-16 00:45
0
雪    币: 450
活跃值: (13)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
14
楼主能提供一下您的联系方式不
2014-5-16 01:12
0
雪    币: 259
活跃值: (3623)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
15
                 联系邮箱 482779803@qq.com
2014-5-17 10:22
0
游客
登录 | 注册 方可回帖
返回
//