首页 > 其他分享 >Drozer常用命令

Drozer常用命令

时间:2024-05-09 18:23:13浏览次数:22  
标签:run service -- Drozer provider 常用命令 组件 app

drozer 常用命令

基础命令

  1. adb 端口转发,dozer 连接
adb forward tcp:31415 tcp:31415
drozer console connect
  1. 进入dozer输入list或ls,查看dozer 所有模块
list
  1. 查找安装包
run  app.package.list -f  
  1. 查看安装包信息
run  app.package.info -a 安装包名
  1. 查看暴露的组件

Drozer可检测apk源码四大组件(activities、broadcast receivers、content providers、services)的export情况,并判断export的组件提供那些服务(exported”表示组件可以被其他App使用),因为服务是可以调试的,可以将调试器附加到进程上,进行调试。

run  app.package.attacksurface  安装包名

组件安全测试

activity组件

应用程序中,一个Activity通常就是一个单独的屏幕,它上面可以显示一些控件也可以监听并处理用户的事件做出响应。 Activity之间通过Intent进行通信。在Intent的描述结构中,有两个最重要的部分:动作和动作对应的数据。

run app.activity.info  -a  安装包名
run app.activity.start --component 包名 组件名

Services组件

一个Service 是一段长生命周期的,没有用户界面的程序,可以用来开发如监控类程序。较好的一个例子就是一个正在从播放列表中播放歌曲的媒体播放器。在一个媒体播放器的应用中,应该会有多个activity,让使用者可以选择歌曲并播放歌曲。
然而,音乐重放这个功能并没有对应的activity,因为使用者当然会认为在导航到其它屏幕时音乐应该还在播放的。在这个例子中,媒体播放器这个activity 会使用Context.startService()来启动一个service,从而可以在后台保持音乐的播放。同时,系统也将保持这个service 一直执行,直到这个service 运行结束。
另外,我们还可以通过使用Context.bindService()方法,连接到一个service 上(如果这个service 还没有运行将启动它)。当连接到一个service 之后,我们还可以service 提供的接口与它进行通讯。拿媒体播放器这个例子来说,我们还可以进行暂停、重播等操作。 intent-filter未将exported设置为false,默认是可以导出的。

run app.service.info -a 

调用组件服务
run app.service.start --action 服务名 --component 包名 服务名

Broadcast组件

BroadcastReceive广播接收器应用可以使用它对外部事件进行过滤只对感兴趣的外部事件(如当电话呼入时,或者数据网络可用时)进行接收并做出响应。广播接收器没有用户界面。然而,它们可以启动一个activity或serice 来响应它们收到的信息,或者用NotificationManager来通知用户。通知可以用很多种方式来吸引用户的注意力──闪动背灯、震动、播放声音等。一般来说是在状态栏上放一个持久的图标,用户可以打开它并获取消息。

run app.broadcast.info -a <package name> 测试对外的broadcast组件信息
run app.broadcast.send --component <package name> <component name> --action <action> --extra <type> <key> <value> 发送带参数的恶意广播
run app.broadcast.send --action <action> 向广播组件发送不完整intent使用空extras,可以看到应用停止运行

Content组件

android平台提供了Content Provider使一个应用程序的指定数据集提供给其他应用程序。这些数据可以存储在文件系统中、在一个SQLite数据库、或以任何其他合理的方式。其他应用可以通过ContentResolver类从该内容提供者中获取或存入数据。只有需要在多个应用程序间共享数据是才需要内容提供者。

run app.provider.info   -a 
run scanner.provider.findurls -a <package name>  扫描url
run app.provider.query uri  访问url

run scanner.provider.injection -a packageName 扫描那里可以进行SQL注入
run scanner.provider.sqltables -a com.mwr.example.sieve 列举app的表信息
projection 测试:run app.provider.query contentProviderURI --projection "'"
selection 测试:run app.provider.query contentProviderURI --selection "'"
projection注入语句测试:run app.provider.query contentProviderURI --projection "* FROM xx;--"
Selection注入语句测试:run app.provider.query contentProviderURI --selection "1=1);--"

目录遍历漏洞检测:
run scanner.provider.traversal -a <package name>

标签:run,service,--,Drozer,provider,常用命令,组件,app
From: https://www.cnblogs.com/iCheanuns/p/18182878

相关文章

  • go学习笔记——常用命令
    1.查找go依赖go依赖可以去下面网站查找packagehttps://pkg.go.dev/比如https://pkg.go.dev/github.com/confluentinc/confluent-kafka-go#section-readme2.go切换源#启用GoModules功能goenv-wGO111MODULE=on#切换源goenv-wGOPROXY=https://goproxy.io......
  • Linux常用命令
    1.chmod777test.txt读,r:4写,w:2执行,x:1所以全部权限是7,因为需要分别设置所有者,所在组,其他人的权限所以是777.2.处理目录ls(英文全拼:listfiles):列出目录及文件名cd(英文全拼:changedirectory):切换目录pwd(英文全拼:printworkdirectory):显示目前的目录mkdir(英文全拼:makedi......
  • MongoDB基本常用命令
    MongoDB基本常用命令数据库操作选择和创建数据库选择和创建数据库的语法格式:use数据库名称如果数据库不存在则自动创建,例如,以下语句创建articledb数据库:usearticledb查看有权限查看的所有的数据库命令showdbs或showdatabases注意:在MongoDB中,集合只有在内......
  • Linux常用命令:echo、cat、tail详解
    Linux常用命令:echo、cat、tail详解Linux常用命令:echo、cat、tail详解在Linux系统中,命令行工具是非常强大的。其中,echo、cat和tail这三个命令在日常的系统管理和文本处理中经常被使用。下面,我们将逐一探讨这三个命令的详细用法和常见示例。1.echo命令echo是一个常用的输出......
  • Linux常用命令
    Linux是一种开源的类Unix操作系统,它在全球范围内得到了广泛的应用。作为一名IT技术专家,掌握Linux的常用命令对于提高工作效率和解决问题至关重要。在这篇博客中,我将为您介绍一些常用的Linux命令及其用法。1.ls:列出目录中的文件和文件夹ls命令用于列出当前目录下的文件和文件......
  • Redis常用命令
    Redis数据类型: String字符串Lists列表Sets集合Sortedsets有序集合Hashs哈希表 常用命令#插入数据setnamephp#读取getname#删除键值delname#验证键值是否存在existsname#setnx;,设置key对应的值为string类型的value。如果key已经存在,返回......
  • Linux常用命令
    Linux常用命令目录Linux常用命令用户相关修改密码创建用户基本命令查看手册对输出进行搜索对输出进行分页后台运行程序列出所有进程关闭特定进程让程序以服务的形式运行关机重启文件和目录相关查看文件内容查看目录文件列表修改权限修改所属用户修改所属组软件相关安装软件查看已......
  • FFmpeg常用命令案例记录
    音频转换mp3为ogg格式ffmpeg-iinput.mp3-c:alibvorbisoutput.ogg降低音量(例如50%)ffmpeg-iinput.mp3-af"volume=0.5"output.mp3视频转换mkv为mp4并进行无损压缩ffmpeg-iinput.mkv-c:vlibx264-crf18-presetslow-c:acopyoutput.mp4转换4K为10......
  • Linux bash常用命令案例记录
    scp(iftheprivatekeyisid_rsa,[-i]canberemoved)scp-ikey-Pportlocalfileuser@ip:pathbacktothebeginningoflineCtrl+agototheendoflineCtrl+ecutcharacterfromcurrentpositiontothebeginningCtrl+ucutchara......
  • ffmpeg7.0常用命令笔记 windows下
    1.多媒体格式转换ffmpeg-iinput.mov-acodeccopy-vcodeccopyout.mp4 2.从多媒体文件中抽取音频ffmpeg-iinput.mov-vn-acodeccopyout.aac 3.从多媒体文件中抽取视频ffmpeg-iinput.mov-an-vcodeccopyout.h264 4.将多媒体文件解码为原始音频数据......