jaffer 发表于 2017-2-8 08:03

打印分析某个app中发送的Intent中的内容

本帖最后由 jaffer 于 2017-2-8 19:41 编辑

对于一个移动安全审计人员来说,有时候是有这个需求的,就是我需要知道某个app在某个时候发送的Intent的内容是什么,以便能更好的去审计是否是安全的。打印Intent的内容不算什么,在github上也有比较成熟的项目了,就是IntentLogger。基本上有用的信息都能打印出来了。那么问题就是如何去打印某个app的发送的Intent了。
我们可以通过Xposed去hook所有的跟intent相关的函数(不能是抽象类下的函数,也不能是抽象函数)。然后打印相应的Intent,同时将packageName或action等打印出来,通过grep就能很好的区分了。代码很简单。但是却很实用。
https://github.com/cogbee/dumpIntent

下面是通过这个去分析 某app的一个简单过程android 需root。安装xposed。

当我们去进行注册的时候,发现这么一个日志:
```
02-07 19:22:49.929 6854-6854/? V/dumpIntent(startActivity) (packageName:co****): Intent[@450770f0] content:
02-07 19:22:49.929 6854-6854/? V/dumpIntent(startActivity) (packageName:co****): Action   : null
02-07 19:22:49.929 6854-6854/? V/dumpIntent(startActivity) (packageName:co****): Category : null
02-07 19:22:49.929 6854-6854/? V/dumpIntent(startActivity) (packageName:co****): Data   : null
02-07 19:22:49.929 6854-6854/? V/dumpIntent(startActivity) (packageName:co****): Component: com.****/com.********.register.RegisterInfoActivity
02-07 19:22:49.929 6854-6854/? V/dumpIntent(startActivity) (packageName:co****): Flags    : 0
02-07 19:22:49.929 6854-6854/? V/dumpIntent(startActivity) (packageName:co****): HasExtras: true
02-07 19:22:49.929 6854-6854/? V/dumpIntent(startActivity) (packageName:co****): Extra :18202753457
02-07 19:22:49.929 6854-6854/? V/dumpIntent(startActivity) (packageName:co****): Extra :69348
02-07 19:22:49.929 6854-6854/? V/dumpIntent(startActivity) (packageName:co****): Extra :小七
02-07 19:22:49.929 6854-6854/? V/dumpIntent(startActivity) (packageName:co****): Extra :-1
02-07 19:22:49.929 6854-6854/? V/dumpIntent(startActivity) (packageName:co****): Extra :true
02-07 19:22:49.929 6854-6854/? V/dumpIntent(startActivity) (packageName:co****): Extra :123456
02-07 19:22:49.929 6854-6854/? V/dumpIntent(startActivity) (packageName:co****): Extra :true
```

从上面可以看到,基本上注册的信息都在里面了。有注册的手机号码,手机接收到的注册码,密码,昵称等。都是以明文形式在app内部传播的。这样基本上可以去分析一个组件到另外一个组件之间传递的intent的内容。有助于发现一些敏感信息等,帮助安全人员进行逆向分析等。

模块app:

viptech 发表于 2017-2-9 10:59

我编译了下楼主的源码 稍稍改动了下 把抓取的日志都写到了SD卡中的IntentLog.txt
链接: https://pan.baidu.com/s/1kVE1hrx 密码: ckq9

jaffer 发表于 2017-2-8 10:32

viptech 发表于 2017-2-8 09:18
楼主 有编译好的dumpIntent吗 github上没有编译好的我下载源码用Android studio打开报错 ...

按道理直接git clone下来就OK了。android studio报什么错误?

wi5101 发表于 2017-2-8 09:08

用心讨论,共获提升!

viptech 发表于 2017-2-8 09:18

楼主 有编译好的dumpIntent吗 github上没有编译好的我下载源码用Android studio打开报错 ...

viptech 发表于 2017-2-8 13:55

jaffer 发表于 2017-2-8 10:32
按道理直接git clone下来就OK了。android studio报什么错误?

环境问题 折腾了一上午编出来了那个日志在哪看呀?要调试才看的吗

maomao1314 发表于 2017-2-8 13:58

谢谢分享

charonly 发表于 2017-2-8 14:07


谢谢分享

polobbs 发表于 2017-2-8 16:05

支持楼主 学习了

jaffer 发表于 2017-2-8 16:08

viptech 发表于 2017-2-8 13:55
环境问题 折腾了一上午编出来了那个日志在哪看呀?要调试才看的吗

不需要啊。你可以在studio中看,也可以通过logcat命令去看

柒點 发表于 2017-2-8 16:44

又学习了 感谢楼主{:1_931:}
页: [1] 2
查看完整版本: 打印分析某个app中发送的Intent中的内容