Android组件安全和drozer的使用

android有四大组件:Activity、Service、Content Provider、Broadcast Receiver,四大组件在配置文件AndroidManifest.xml中进行注册,通过反编译工具如apktool来读取配置文件信息。Activity、Service和Broadcast Receiver三大组件没有配置intent-filter属性的exported默认为false,配置了intent-filter属性exported默认为true。Content Provider不同于其他三个组件,不受intent-filter的影响,对于android:minSdkVersion 或 android:targetSdkVersion不大于17时exported默认为true,对于这两个属性值为17以上时,默认值则为false,需要显示声明exported为true,通过借助drozer对app的四大组件进行测试,大致步骤如下:

1、安装jdk、android sdk,确保java和adb已经在系统环境变量path中

2、下载drozer直接安装即可:https://www.mwrinfosecurity.com/products/drozer/

3、将agent.apk安装到手机里,adb install agent.apk,打开app,选择Enbeded Server,选择Enable开启agent server

4、下载sieve用于练习使用drozer 

https://www.mwrinfosecurity.com/system/assets/380/original/sieve.apk

5、drozer启动方式①②③

普通模式,开启USB调试,使用数据线连接pc,进入drozer安装目录,在cmd下建立端口转发,默认使用31415端口

adb forward  tcp:31415  tcp:31415   //将pc端31415的所有数据转发到手机上的31415端口

drozer console connect   //使用drozer console 连接agent server

技术分享

使用wifi的正向连接方式,不需要开启USB调试:

drozer console connect --server 手机IP:port  

infrastructure mode(反向连接),适合网络环境比较复杂的情况下和多个android设备,不需要知道设备的IP,不需要开启USB调试,设备上安装agent,与server互通,server与console互通(这里使用同一电脑),在agent上点击New Endpoint,host为server的IP,端口默认31415,在cmd下输入 drozer server start

技术分享

在console上新建一个cmd窗口查看设备:drozer console devices (Device ID可以在agent上修改)

连接某一个设备 : drozer console connect mate7

技术分享

注:如果server与console不同一电脑,连接某一设备:

drozer  console  connect  DeviceID  --server  ServerIP:port

6、获取手机上所有安装的app包名:run app.package.list  加上”-f [app关键字]”查找某个app,如run app.package.list -f sieve

技术分享

得到sieve的包名为com.mwr.example.sieve

7、获取sieve的基本信息 run app.package.info -a com.mwr.example.sieve

技术分享

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。