当进程A权限较低,而B权限较高时,容易产生提权漏洞

fuzz测试的测试路径


First level Interface是服务

Second level Interface是服务中对应的接口

1.首先获取第一层和第二层接口,及服务以及对应服务提供的接口

2.根据以上信息结合参数类型信息构造meta-data元数据

3.得到构造好的元数据,选择一个Interface,根据Interface以及元数据选择业务代码

4. 调用binder服务线程,参数为随机数

5.输出日志

执行以上5步直到所有接口完成测试

假设A进程权限较低,B进程权限较高

如果A进程可以获得B进程的带IGraphicProducer接口的binder代理对象,那么A进程可以通过跨进程的binder调用利用此漏洞可获得B进程的权限。

第一步:获得mediaserver进程导出的IGraphicProducer,从而普通应用程序可以注入代码到mediaserver

第二步:注入到mediaserver中的代码获得surfaceflinger导出的IGraphicProducer接口,然后通过setSidebandStream可以拿下surfaceflinger。

surfaceflinger 通过调用IWindowsManager的screenShotApplication这个binder调用获取IGraphicProducer接口,拿下system_server

转载于:https://www.cnblogs.com/fengsehng/p/6048528.html

Android调用binder实现权限提升-android学习之旅(81)相关推荐

  1. android 动态推送权限,提升Android推送消息到达率方法介绍!

    推送消息的到达率除了用户终端的网络信号影响之外,有很大一部分是系统屏蔽原因造成的,我们经常提的一个词"app保活"其实就是为了提升推送消息的到达率,但是及时给app做了保活仍然会被 ...

  2. android app没有读写权限设置,Android 6.0以上权限拒绝打开权限设置界面的解决方法...

    本人使用小米手机,打开qq或者微信的时候,某个权限拒绝的话,会提示你开启,点击开启会跳转到app的权限设置界面,当然了,这是国内系统深层定制的原因,也就是说这个界面原声的android没有的!这里以小 ...

  3. android调用 qt so文件路径,Android Java调用Qt写的so库

    有时候,我们反编译apk得到一个so库,如果直接使用这个so库的话,必须使用原来so库同样的package名字,才能用.这样人家反编译你的apk,就知道你侵犯了人家的版权.为了达到混淆的目的,我们可以 ...

  4. android调用系统音频播放器,Android使用Service实现简单音乐播放实例

    Service翻译成中文是服务,熟悉Windows 系统的同学一定很熟悉了.Android里的Service跟Windows里的Service功能差不多,就是一个不可见的进程在后台执行. Androi ...

  5. android调用天地图,天地图嵌入到Android手机中

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 3.2 使用步骤 1) 将 API 文件 tiandituapi.jar 拷贝到工程根目录下,并在工程属性->Java Build Path-> ...

  6. android调用手机自带计算器,Android实现简易的计算器

    本文实例为大家分享了Android实现简易的计算器的具体代码,供大家参考,具体内容如下 布局(activity_main.xml) xmlns:tools="http://schemas.a ...

  7. Android调用miui给权限,Android 11+MIUI12,APP任意获取用户隐私的路子被封死

    在经历了多个测试版本的迭代和完善之后,安卓11终于来到了用户面前,作为目前全球用户数量最大的操作系统,安卓每一次大版本更新都会为用户带来很多新功能,新体验以及全新的设计系统,底层升级和变化也会一定程度 ...

  8. android 调用系统的剪切功能,Android实现图片的裁剪(不调用系统功能)

    上一篇文章提及了通过调用系统相册或拍照来实现图片的缩放\裁剪.不过这对于笔者项目的要求同样不适合,笔者需要的是通过对手机屏幕整个进行一个截图,并对这个截图进行裁剪操作. 依靠系统功能确实可以实现图片的 ...

  9. android调用wcf服务的xml,Android调用WCF

    1.构建服务端程序 using System.ServiceModel; namespace yournamespace { [ServiceContract(Name = "HelloSe ...

最新文章

  1. (转)Ubuntu12.04上NFS Server安装使用过程
  2. 计算当前时间对应的本周一、上周一
  3. Windows下Appium环境搭建(java版)
  4. mysql导入sql文件
  5. predis如何实现phpredis的pconnect方法
  6. 装X神器!NuShell
  7. ANSI,ASCII,Unicode的区别与联系!
  8. spring-boot注解详解(五)
  9. ECS云资源可视化--资源概览
  10. mysql文件导出NULL值处理_Mysql select into outfile NULL值导出的处理方法
  11. c# base 和this 继承
  12. HttpComponents入门解析
  13. oracle 导出写入文件失败怎么办,编辑dmp文件解决导入导出问题(oracle 922错误 ,缺少或无效选项)...
  14. VMware Workstation 15 解锁Mac OS安装
  15. pycharm2017自建注册服务器
  16. Linux df 命令使用详解
  17. oracle 修改pkg命令,oracle简单PKG(包)编写
  18. 关于test eax eax
  19. 第七章 C语言函数_什么是函数?C语言函数的概念
  20. hadoop之hdfs命令详解

热门文章

  1. 计算机网络对口题目,2011-2015计算机对口升学网络试题汇总.doc
  2. python爬虫——代理IP
  3. LeetCode 2039. 网络空闲的时刻(BFS)
  4. LeetCode 240. 搜索二维矩阵 II(二分查找 分治)
  5. centos5.8安装mysql5.3_CentOS 5.8 64位 源码安装mysql5.5.28
  6. amd cpu 安卓模拟器_夜神模拟器常见问题解答_v20201025
  7. 87说明书 ikbc_女性玩家的首选!——IKBC白无垢. 樱机械键盘赏评
  8. 吴恩达发起新型竞赛范式!模型固定,只调数据?!
  9. 一般化机器学习与神经网络
  10. 细说ReactiveCocoa的冷信号与热信号(一)