渗透测试工具Drozer安装使用(Mac)

简介

drozer的基本功能就是通过分析AndroidManifest.xml,看四大组件中有没有可export的
本教程第一大节讲安装,第二大节讲使用drozer连接手机,第三大节讲通过drozer检测app安全性。

一、安装

1.1 安装环境

1)macOS 10.15.3
2)Python 2.7.16
3)pip 20.0.2
4)java version "1.8.0_241"
5)Android studio 3.5.2(此为Android开发工具,要是测试人员,可以自行百度安装ADB环境)
5)drozer-2.4.4-py2-none-any.whl(此文件为我在官网下载用于Mac上drozer的安装文件)
6)drozer-agent-2.3.4.apk(此版本不支持android10的手机)

1.2 电脑下载安装drozer

下载链接:https://labs.mwrinfosecurity.com/tools/drozer/
具体下载文件选择如下图-1所示

 
图-1

 

1.3 Mac电脑安装drozer

在终端中运行如下命令
第一步:安装pip命令(假如你的Mac中已经安装了pip,请跳过此步骤)

sudo easy_install pip

第二步:安装drozer
先通过cd 命令指向到你存放drozer-2.4.4-py2-none-any.whl文件的目录下,在运行下面的命令
PS:安装过程中可能因为网络原因导致多次下载文件超时报错,不要慌,重新执行一次命令就行,要是出现重新执行命令还是报错,可以尝试关闭终端,重新打开终端,继续输入当前命令慢慢下载,直到成功。

sudo pip install drozer-2.4.4-py2-none-any.whl --ignore-installed pyOpenSSL

第三步:安装twisted

sudo pip install protobuf pyOpenSSL Twisted service_identity

PS:要是遇到如下错误

xcrun: error: invalid active developer path (/Library/Developer/CommandLineTools), missing xcrun at: /Library/Developer/CommandLineTools/usr/bin/xcrun

解决方法如下(更新下面这个软件以后,在重新执行命令就可以了)

xcode-select --install

1.4 下载安装手机agent

使用usb线将手机连接到电脑(或开启一个模拟设备),使用adb将agent安装到手机。

agent下载地址:https://github.com/mwrlabs/drozer/releases/download/2.3.4/drozer-agent-2.3.4.apk

到手机打开启agent,如下图-7确保右下角按钮显示为“开启”(如果显示为关闭,在其上点击将其切换为开启即可)

 
图-7

二、使用drozer连接手机

2.1 配置adb环境变量(已经设置过的跳过此步骤)

2.1.1 打开用户根目录
cd ~/ 

PS:如果已在根目录可以跳过。

2.1.2 创建.bash_profile文件
touch .bash_profile

PS:touch命令表示更新已存在文件标签的时间标签为系统时间,若没有该文件,则创建该文件。

2.1.3 打开.bash_profile文件
open .bash_profile
2.1.4 添加环境变量
export ANDROID_HOME=/Users/name/Library/Android/sdk
export PATH=${PATH}:${ANDROID_HOME}/tools
export PATH=${PATH}:${ANDROID_HOME}/platform-tools

将ANDROID_HOME后面的路径替换为自己的SDK路径。一般只要把name换成你自己的登录名就行了。

2.2 正式连接drozer

adb forward tcp:31415 tcp:31415
drozer console connect

三、使用drozer对app进行测试

3.1 使用app.package.info模块查看apk基本信息(package_name指的是你需要检测的APP包名)

 run app.package.info -a package_name

3.2 使用app.package.attacksurface模块识别攻击面

所谓攻击面,应该就是指可export的安卓四大组件(activaty、broadcast receiver、content provider、service)

run app.package.attacksurface package_name

3.3使用app.activity.info模块查看activity组件信息

run app.activity.info -a package_name

3.4 使用app.activity.info模块查看broadcast 组件信息

run app.broadcast.info -a package_name

3.5 使用app.provider.info模块查看content provider组件信息

run app.provider.info -a package_name

3.6 使用app.service.info模块查看service组件信息

run app.service.info -a package_name


作者:青峰星宇
链接:https://www.jianshu.com/p/86790193ef87
posted @ 2020-09-16 17:37  暖阳深处  阅读(1423)  评论(0编辑  收藏  举报