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

## 标题 ##
这里写图片描述

当进程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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/491696.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

PyTorch框架学习九——网络模型的构建

PyTorch框架学习九——网络模型的构建一、概述二、nn.Module三、模型容器Container1.nn.Sequential2.nn.ModuleList3.nn.ModuleDict()4.总结笔记二到八主要介绍与数据有关的内容,这次笔记将开始介绍网络模型有关的内容,首先我们不追求网络内部各层的具体…

将张量转换为 int32 类型

tf.to_int32函数: tf.to_int32(x,nameToInt32 ) 函数参数: x:一个 Tensor 、SparseTensor、list或ndarrayname:操作的名称(可选)。 函数返回值: tf.to_int32函数返回一个 Tensor 或 SparseT…

中国17种稀土有啥军事用途?没它们,美军技术优势将归零

来源:陶慕剑观察 稀土就是化学元素周期表中镧系元素——镧(La)、铈(Ce)、镨(Pr)、钕(Nd)、钷(Pm)、钐(Sm)、铕(Eu)、钆(Gd)、铽(Tb)、镝(Dy)、钬(Ho)、铒(Er)、铥(Tm)、镱(Yb)、镥(Lu),再加上钪(Sc)和钇(Y)共17种元素。中国稀土占据着众多的世界第一&…

swiper链接href无效

preventClicks:false,加上属性转载于:https://www.cnblogs.com/wesky/p/4906468.html

PyTorch框架学习十——基础网络层(卷积、转置卷积、池化、反池化、线性、激活函数)

PyTorch框架学习十——基础网络层(卷积、转置卷积、池化、反池化、线性、激活函数)一、卷积层二、转置卷积层三、池化层1.最大池化nn.MaxPool2d2.平均池化nn.AvgPool2d四、反池化层最大值反池化nn.MaxUnpool2d五、线性层六、激活函数层1.nn.Sigmoid2.nn.…

一个招标书文件的需求分析

时间:2015年10月20日 地点:二教302 人员:郑成,刘中睿,李琦 内容: 问题:找出民间组织管理系统的利益相关者 讨论过程:   出资人:民政厅,民管局 功能的使用者…

tensor也可以作为索引

在TensorFlow中,tensor也可以作为索引,但只能作为同样为tensor类型变量的索引,不能作为list类型变量的索引如下面的例子: import tensorflow as tfindex tf.to_int32([0,1,2]) # index是一个tensor a [[1,2,3], [4,5,6]] b a…

PyTorch框架学习十一——网络层权值初始化

PyTorch框架学习十一——网络层权值初始化一、均匀分布初始化二、正态分布初始化三、常数初始化四、Xavier 均匀分布初始化五、Xavier正态分布初始化六、kaiming均匀分布初始化前面的笔记介绍了网络模型的搭建,这次将介绍网络层权值的初始化,适当的初始化…

W3C 战败:无权再制定 HTML 和 DOM 标准!

来源:CSDN历史性时刻!——近日,W3C正式宣告战败:HTML和DOM标准制定权将全权移交给浏览器厂商联盟WHATWG。由苹果、Google、微软和Mozilla四大浏览器厂商组成的WHATWG已经与万维网联盟(World Wide Web Consortium&#…

java 快捷工具,如何清理不需要的引用

Ctrl shift O转载于:https://www.cnblogs.com/hcfan/p/4913410.html

tf.cast()类型转换函数

tf.cast(x, dtype, nameNone) 参数 x:输入dtype:转换目标类型name:名称 返回:Tensor 例子: import tensorflow as tfa [1,0,1,0] b [1,2,3,4] c [True, True, False] d tf.cast(a, dtypebool) e tf.cast(b, d…

PyTorch框架学习十二——损失函数

PyTorch框架学习十二——损失函数一、损失函数的作用二、18种常见损失函数简述1.L1Loss(MAE)2.MSELoss3.SmoothL1Loss4.交叉熵CrossEntropyLoss5.NLLLoss6.PoissonNLLLoss7.KLDivLoss8.BCELoss9.BCEWithLogitsLoss10.MarginRankingLoss11.HingeEmbedding…

化合物半导体的机遇

来源:国盛证券半导体材料可分为单质半导体及化合物半导体两类,前者如硅(Si)、锗(Ge)等所形成的半导体,后者为砷化镓(GaAs)、氮化镓(GaN)、碳化硅(…

TensorFlow 中三种启动图用法

转自https://blog.csdn.net/lyc_yongcai/article/details/73467480 TensorFlow 中有三种启动图的方法:tf.Session(),tf.InteractivesSession(),tf.train.Supervisor().managed_session() 它们各自的用法如下: (1&am…

PyTorch框架学习十三——优化器

PyTorch框架学习十三——优化器一、优化器二、Optimizer类1.基本属性2.基本方法三、学习率与动量1.学习率learning rate2.动量、冲量Momentum四、十种常见的优化器(简单罗列)上次笔记简单介绍了一下损失函数的概念以及18种常用的损失函数,这次…

最全芯片产业报告出炉,计算、存储、模拟IC一文扫尽

来源:智东西最近几年, 半导体产业风起云涌。 一方面, 中国半导体异军突起, 另一方面, 全球产业面临超级周期,加上人工智能等新兴应用的崛起,中美科技摩擦频发,全球半导体现状如何&am…

python向CSV文件写内容

f open(r"D:\test.csv", w) f.write(1,2,3\n) f.write(4,5,6\n) f.close() 注意:上面例子中的123456这6个数字会分别写入不同的单元格里,即以逗号作为分隔符将字符串内容分开放到不同单元格 上面例子的图: 如果要把变量的值放入…

PyTorch框架学习十四——学习率调整策略

PyTorch框架学习十四——学习率调整策略一、_LRScheduler类二、六种常见的学习率调整策略1.StepLR2.MultiStepLR3.ExponentialLR4.CosineAnnealingLR5.ReduceLRonPlateau6.LambdaLR在上次笔记优化器的内容中介绍了学习率的概念,但是在整个训练过程中学习率并不是一直…

JavaScript数组常用方法

转载于:https://www.cnblogs.com/kenan9527/p/4926145.html

蕨叶形生物刷新生命史,动物界至少起源于5.7亿年前

来源 :newsweek.com根据发表于《古生物学》期刊(Palaeontology)的一项研究,动物界可能比科学界所知更加古老。研究人员发现,一种名为“美妙春光虫”(Stromatoveris psygmoglena)的海洋生物在埃迪…