Android App渗透测试--Drozer(安装篇)


​前段时间做某项目的Android App渗透测试,发现Drozer这个神器还是挺好用,今天抽时间写篇文章把遇到的坑和一些实战技巧分享一下,不多说,开搞

Android App渗透测试--Drozer(安装篇)

一、框架介绍

Drozer是一款领先的Android安全测试框架,可以发现Android应用程序暴露的攻击表面并与其进行交互,尽可能点对点发现Android漏洞,识别组织中易受攻击的设备,并进行远程攻击,Drozer既可以在Android模拟器上运行,也可以在实际设备上运行,可以免费从官网下载工具。

官网:https://labs.f-secure.com/tools/drozer/
Android App渗透测试--Drozer(安装篇)

二、环境及工具安装

运行Drozer需要java环境、python27环境、adb调试工具、真实手机、夜神安卓模拟器、Drozer-2.4.4、drozer-agent-2.3.4。本文环境:

操作系统:Windows10专业版

JAVA环境:jdk1.8.0_241

Python环境:Python 2.7.17

1、JAVA是Android开发的主要语言,用于与手机交互时使用,至于怎么配置环境变量,此处省略n个字。

2、由于Drozer是由Python2.7编写,所以只能在Python2.7环境下运行,还是环境变量,此处省略n个字。(这里有个坑,通常我们为了方便容易区分python版本起见,通常会安装两个版本的python,重命名成python2,python3,但是当连接手机时,执行drozer没反应,将python2改回python时,正常启动,我也不知道为什么。)

Android App渗透测试--Drozer(安装篇)

3、adb即安卓调试桥,是一个命令行窗口工具,用于PC端与安卓设备进行交互,官网下载安装包和Android通用驱动,一键安装,配置环境变量。

官网:https://adbshell.com/downloads
Android App渗透测试--Drozer(安装篇)

Path环境变量:C:\Windows\SysWOW64

安装好之后,命令行测试,如图所示那就对了:

Android App渗透测试--Drozer(安装篇)

4、Drozer安装

首先从官网下载电脑端drozer和手机端安装包

官网:https://labs.f-secure.com/tools/drozer/
Android App渗透测试--Drozer(安装篇)

打开msi文件直接安装,再安装过程中会遇到设置运行环境的问题,因为检测到的环境是python3,所以要手动指定python 2.7环境,一路next即可。

Android App渗透测试--Drozer(安装篇)

5、Drozer-agent安装

有两种方法:a、手机或模拟器直接安装。b、adb安装,这里就介绍一下adb安装吧。(连接Android客户端的方法下面会讲到)

用cmd进入到Drozer-agent apk安装包所在目录(至于为什么非要用cmd,后面会做详细说明),执行安装命令。

adb install drozer-agent-2.3.4.apk
Android App渗透测试--Drozer(安装篇)

安装过程中手机端会弹出来是否允许,点继续安装就好(视手机品牌情况),如图所示那就是OK的。

Android App渗透测试--Drozer(安装篇)

三、连接调试

前面我们已经安装好了工具以及所需要的环境,接下来开始连接调试设备,进入实战环节。

1、连接真实手机

首先保证手机开发者模式正常打开USB调试,安装好前面下载的Android驱动,(如无法连接装个360手机助手一键解决,在用adb连接前请先卸载360手机助手,并重启电脑,不然会占用端口无法连接)

看看是否连接成功,这样说明adb连接成功:

adb devices   查看是否与设备建立连接adb shell     登录到设备
Android App渗透测试--Drozer(安装篇)

接下来用Drozer连接手机

在开始前要说一说为什么要用cmd连接呢?踩了很多坑,习惯性的用Powershell,但是powershell到后面连接终端的时候会产生乱码并且无法变更。

Android App渗透测试--Drozer(安装篇)

cmd默认编码是简体中文GBK 936,连接终端的时候会乱码,无法连接,所以开始前我们临时更改一下cmd的编码:改为UTF-8 65001。

chcp 65001 编码改为UTF-8

命令行输入:chcp 65001
Android App渗透测试--Drozer(安装篇)

打开手机端drozer,启动服务

Android App渗透测试--Drozer(安装篇)

命令行进入到python27的scripts文件夹,开始连接,drozer Server默认监听端口为31415,同样需要与主机上的31415端口进行通信。

adbforward tcp:31415 tcp:31415    --端口转发
Android App渗透测试--Drozer(安装篇)

drozer console connect  --启动drozer
Android App渗透测试--Drozer(安装篇)

出现上面这个画面那就说明成功了,可以开始愉快的玩耍了!

2、连接安卓模拟器

在连接安卓模拟器这儿因为不知道模拟器adb转发端口是多少,所以要先找一下模拟器的adb转发端口。(这里有个坑,据说夜神模拟器的默认转发端口是62001,但不然,连接不上。这里视模拟器品牌而定)

Android App渗透测试--Drozer(安装篇)

启动模拟器,打开桥接模式,使其和电脑处于同一网络,在cmd查找一下模拟器的转发端口。

tasklist  --查看任务列表
Android App渗透测试--Drozer(安装篇)

找到NoxVMHandle.exe对应的PID,这里是2608,再根据此PID查找模拟器和电脑连接的TCP端口,并找到127.0.0.1:62xxx的地址。

netstat -ano | findstr PID    --显示此PID的网络连接情况
Android App渗透测试--Drozer(安装篇)

至此,我们adb连接模拟器,成功

Android App渗透测试--Drozer(安装篇)

接下来drozer和真实手机连接一样。

以上就是drozer工具和整个环境的安装方法,下一篇讲一下drozer的实战手法,教你如何使用drozer测试Android App。