drozer工具介绍和使用
drozer工具介绍
一、介绍
drozer是一款针对Android系统的安全测试框架,可以分成两个部分:其一是“console”,它运行在本地计算机上;其二是“server”,它是一个安装在目标Android设备上的app,当使用console与Android设备交互时,就是把Java代码输入到运行在实际设备上的drozer代理(agent)中。
- 下载安装
【1】github地址:https://github.com/mwrlabs/drozer
【2】下载及drozer用户手册:https://labs.mwrinfosecurity.com/tools/drozer/
【3】使用adb命令,在目标设备上安装drozer Agent(apk程序)
【5】运行drozer会话
> 第一步,使用adb命令,进行端口转发
> 启动drozer agent,界面上“Embedded Server”滑块拖到“Enable”
> 连接drozer console,运行成功进入console模式,就可以使用drozer的命令和模块
安装失败的原因:https://blog.****.net/weixin_39304739/article/details/97013897
- 基础命令
【1】查询安装包的信息
Run app.package.info -a 包名
【2】确定App受攻击的面(attack face)
run app.package.attacksurface com.hosjoy.ssy列出暴露的组件信息
Activity协议攻击:
【3】查询对外组件的信息
run app.activity.info -a com.hosjoy.ssy
【4】使用app.activity.start进行漏洞测试
越权漏洞--绕过登录界面导致可直接访问Your Passwords界面,说明存在越权漏洞
broadcast协议攻击:
【5】查询广播的信息
run app.broadcast.info -a com.hosjoy.ssy
【6】攻击broadcast协议
run app.broadcast.send --action 协议
查看反编译出的AndroidManifest.xml文件,可看到将receiver的exported设置未进行设置。说明存在越权问题,可发送恶意广播,伪造消息等等。尝试拒绝服务攻击,向广播组件发送不完整intent(空action或空extras)
Service协议攻击:
【7】攻击service协议
使用命令:run app.provider.info -a <package name> 查看对外的provider组件信息
信息泄露:
使用命令:run scanner.provider.finduris -a <package name> 扫描并获取Content provider信息,并列出可访问内容URL的列表和
run scanner.provider.finduris -a com.example.sieve //获取可以访问的u
run app.provider.query [URI] --vertical 根据可调用的URI,从content中提取信息