drozer简介及使用.doc

上传人:桔**** 文档编号:547682667 上传时间:2023-09-02 格式:DOC 页数:9 大小:559KB
返回 下载 相关 举报
drozer简介及使用.doc_第1页
第1页 / 共9页
drozer简介及使用.doc_第2页
第2页 / 共9页
drozer简介及使用.doc_第3页
第3页 / 共9页
drozer简介及使用.doc_第4页
第4页 / 共9页
drozer简介及使用.doc_第5页
第5页 / 共9页
点击查看更多>>
资源描述

《drozer简介及使用.doc》由会员分享,可在线阅读,更多相关《drozer简介及使用.doc(9页珍藏版)》请在金锄头文库上搜索。

1、目录1 Drozer简介22 Drozer的特点23 Drozer的安装33.1 硬件要求33.2 安装准备33.3 安装控制台43.4 安装客户端代理44 drozer的使用44.1启动agent,使用drozer连接客户端agent44.2 drozer命令44.3 测试应用程序(sieve)51 Drozer简介drozer是一款针对Android系统的安全测试框架。Drozer可以通过与Dalivik VM,其它应用程序的IPC端点以及底层操作系统的交互,避免正处于开发阶段,或者部署于你的组织的android应用程序和设备暴露出不可接受的安全风险。drozer提供了很多Android平

2、台下的渗透测试exploit供你使用和分享。对于远程漏洞,drozer能够生产shellcode帮助你部署drozer代理作为一个远程管理工具,最大化对设备的利用。更快的Android安全评估drozer可以大大缩减Android安全评估的耗时,通过攻击测试暴露Android APP的漏洞。基于真机的测试drozer运行在Android模拟器和真实设备上,它不需要USB调试或其他开发即可使用。自动化和扩展drozer有很多扩展模块,你可以找到他们进行测试以发现Android安全问题。2 Drozer的特点社区版专业版与Dalvik VM交互发现已安装的应用XX发送Intents到IPC端点XX

3、广播IntentsXX从其它应用进入数据库Android ContentProviders 允许应用程序之间共享他们的底层数据库或者文件系统。Drozer能够连接一个暴露的contend provider去查看暴露的数据,并且测试暴露敏感信息的漏洞。XX与其它应用的服务交互Android应用程序通常通过发送信息与后台服务交互,而不是intents。Drozer允许您绑定到一个服务(由另外一个应用程序输出),通过IPC机制收发信息。XX任意java执行XX与android OS交互运行一个交互式shellXX漏洞利用通过远程攻击进入设备XX根权限升级Drozer支持很多公共root权限升级漏洞。

4、Drozer能够检测设备,看其是否容易受到这些漏洞的攻击,并通过利用这些漏洞获得root shellXX用户接口命令行接口XX图形接口Drozer pro的图形化接口可以对一个android设备进行典型的安全评估过程中收集到的大量信息进行可视化显示。它还提供了一种与应用程序组件的点选式交互X注释结果X保存/恢复会话XAndroid工具集成自动安装代理X控制AVD模拟器X模拟传感器输入一个android应用程序的攻击面可以包括设备的蜂窝式调制解调器和其它各种传感器。Drozer pro允许用户模拟这些传感器,当与设备交互时,检测所有可能的攻击点。X提高与扩展下载附加模块XX编写自定义模块XX兼容

5、性在物理设备上使用drozerXX在android模拟器上使用drozerXX同时测试多台设备Drozer pro允许您一次连接到多台android设备,同时向这些设备发送相同的命令。这可以使你迅速的查看不同设备或者应用程序的不同版本之间的差异,X支持通过Dithub获得社区支持XX邮件支持X价格X3 Drozer的安装3.1 硬件要求1. 一台PC(运行Windows,Linux,MacOS均可);2. 一台Android设备或者Android模拟器(Android2.1以上);3.2 安装准备PC上需要安装:1. JRE或者JDK;2. Android SDK;3. Adb;4. Java

6、;3.3 安装控制台直接下载Windows平台下安装包直接解压安装(Linux,Mac OS平台参见软件指导书)。3.4 安装客户端代理通过adb将agent.apk安装于被测试的android设备。(先将设备与PC连接,且PC能正确识别设备)4 drozer的使用4.1启动agent,使用drozer连接客户端agent4.2 drozer命令命令描述run Module执行一个drozer模块list显示当前会话所能执行的所有drozer模块。此处隐藏了未获得相应权限的模块。shell在设备上启动一个交互式Linux shell,cd挂载一个特定的命名空间作为会话的根目录,避免重复输入模块

7、全称。clean移除Android设备上由drozer存储的临时文件。contributors显示对于drozer框架和模块有突出贡献的人员echo在控制台打印信息exit终止drozer会话help ABOUT显示一个特定指令或模块的帮助信息load加载一个包含drozer命令的文件并且按顺序执行。module从互联网发现并且安装一个额外的模块。permissions显示drozer agent被授予的权限。set将一个值存储在一个变量中,这个变量将作为一个环境变量传递给任何由drozer生成的liunx shellunset移除一个已命名的变量。这个变量是由drozer传递给linux s

8、hell的。4.3 测试应用程序(sieve)1. 找出应用程序2. 列出应用程序基本信息此处列出信息包括应用程序版本,应用程序数据存储路径,应用程序安装路径,相关权限等;3. 确定攻击面此处显示了一些潜在的攻击方向,这个应用程序输出了一些activities,content providers和services。我们注意到服务是可调式的,这意味着我们可以将调试器附加到进程上,进行逐步调试。4. 启动activities我们可以通过特定的命令深入这个攻击面。例如,我们可以查看任何一个activities的详细信息。此处,PWlist很特别。由于这个activity被输出并且不需要任何权限,我们

9、可以使用drozer启动它:此处在后台制定了一个合适的意图,并且通过startActivitycall将其传递给了系统。可以确定,我们已经成功绕过了授权并且查看到了用户凭证列表。5. 从Contend Provider读取信息可以确定,这两个content provider都不需要任何特殊的权限才能和它们交互,除了DBContentProvider的/keys路径。a. 基于数据库的Content Provider(数据泄露)很容易可以猜测出,名为DBContentProvider的Content Provider必然存在某种形式的数据库。然而,由于不知道Content Provider是如何

10、组织的,我们还需要花一番功夫去提取信息。我们可以重建部分内容URIS,以进入Content Providerdrozer提供了一个扫描模块,其中包含了多种猜路径的方式,并且可以将可进入的内容URIs显示出来:此时,我们可以使用其它的drozer模块从这些内容URIs中提取信息,甚至更改数据库中的数据。b. 基于数据库的Content Provider(SQL注入)通过操纵传递给Content Provider的投影或选择字段,很容易测试程序是否存在SQL注入漏洞:Android返回一段冗长的错误信息,显示它视图执行的整个查询。我们完全可以利用这个漏洞列出数据库中的所有表:或者查询其它受保护的表

11、:c. 基于文件系统的Content Provider由于我们可以合理的假设FileBackupProvider是一个基于文件系统的content provider,并且路径组件代表我们想要打开的文件位置,我们可以容易的猜测到它的content URIs并且使用drozer的模块去读取这个文件: 前面我们已经知道了应用程序数据库所在的路径,由此我们可以获得更多的信息: 此处将应用程序的数据库从设备拷贝到了本地机器上,现在我们可以通过SQLite提取用户的加密密码和他们的主密码。6. Content Provider漏洞检测drozer提供模块自动检测这些简单的漏洞案例:7. 与Services交互 (注:专业文档是经验性极强的领域,无法思考和涵盖全面,素材和资料部分来自网络,供参考。可复制、编制,期待你的好评与关注)

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 中学教育 > 其它中学文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号