本文章由Jack_Jia编写,转载请注明出处。
文章链接:http://blog.csdn.net/jiazhijun/article/details/9183517
作者:Jack_Jia 邮箱:309zhijun@163.com
一、漏洞描述
二、影响设备
LG-E971 LG Optimus G
LG-E973 LG Optimus G
LG-E975 LG Optimus G
LG-E975K LG Optimus G
LG-E975T LG Optimus G
LG-E976 LG Optimus G
LG-E977 LG Optimus G
LG-F100K LG Optimus Vu
LG-F100L LG Optimus Vu
LG-F100S LG Optimus Vu
LG-F120K LG Optimus Vu
LG-F120L LG Optimus LTE Tag
LG-F120S LG Optimus LTE Tag
LG-F160K LG Optimus LTE 2
LG-F160L LG Optimus LTE 2
LG-F160LV LG Optimus LTE 2
LG-F160S LG Optimus LTE 2
LG-F180K LG Optimus G
LG-F180L LG Optimus G
LG-F180S LG Optimus G
LG-F200K LG Optimus Vu 2
LG-F200L LG Optimus Vu 2
LG-F200S LG Optimus Vu 2
LG-F240K LG Optimus G Pro
LG-F240L LG Optimus G Pro
LG-F240S LG Optimus G Pro
LG-F260K LG Optimus LTE 3
LG-F260L LG Optimus LTE 3
LG-F260S LG Optimus LTE 3
LG-L21 LG Optimus G
LG-LG870 LG (Unknown)
LG-LS860 LG Mach
LG-LS970 LG Optimus G
LG-P760 LG Optimus L9
LG-P769 LG Optimus L9
LG-P780 LG Optimus L7
LG-P875 LG Optimus F5
LG-P875h LG Optimus F5
LG-P880 LG Optimus 4X HD
LG-P940 LG Prada
LG-SU540 LG Prada 3.0
LG-SU870 LG Optimus 3D Cube
LG-US780 LG Lollipop
也可能还有其它的设备。
三、漏洞原理
Backup和Spritebud是由Sprite Software公司开发的应用备份/恢复系统,内置在部分LG Android智能手机上。但是Spritebud 1.3.24和Backup 2.5.4105在代码实现上存在本地权限提升漏洞,本地攻击者可利用此漏洞获取受影响设备的root权限。
Spritebud后台程序是由init脚本启动并以root用户运行,以unix套接字形式监听来自"Backup"应用的指令。本地攻击者通过特制的备份,就可以写入和更改任何文件的权限和所有权。
特制备份数据包包含exploit程序需要恢复的数据,备份数据包括一个的50MB虚拟文件a,a文件用于增加我们的exploit窗口事件,
su二进制文件b,脚本文件c用户安装su,和一个文本文件d,d文件内容为c文件的路径。所有文件都属于该exploit应用程序,且这些文件都是rwxr-xr-x。所有的文件以字母顺序恢复。整个备份压缩后约2MB。在此备份中的结构如下:
drwxrwxrwx u0_a114 u0_a114 2013-05-28 20:13 files
./files:
-rwxr-xr-x u0_a114 u0_a114 52428800 2013-05-22 20:06 a
-rwxr-xr-x u0_a114 u0_a114 91992 2013-05-22 20:07 b
-rwxr-xr-x u0_a114 u0_a114 251 2013-05-22 20:12 c
-rwxr-xr-x u0_a114 u0_a114 42 2013-05-22 20:07 d
在恢复之前,首先运行exploit应用程序运行时,观看的过程和等待。
在恢复过程中,spritebud守护进程首先创建files目录,并设置它的权限和所有者。
然后它解压缩并还原a的文件(50MB的虚拟文件)。在恢复a文件期间,我们的exploit应用程序就可以创建文件d(其中包含我们的脚本文件c的完整路径)的符号链接到/sys/kernel/uevent_helper,。恢复文件d后,我们的路径被写入到uevent_helper。
当一个热插拔事件发生(每隔几秒钟发生一次),包含在uevent_helper路径文件被内核执行
我们的脚本执行c执行并安装的su二进制文件b。
四、POC代码
五、相关链接
分享到:
相关推荐
角色1.sprite3
css sprite示例源码
mnist_10k_sprite mnist_10k_sprite mnist_10k_sprite mnist_10k_sprite
Shadero Sprite is a real time node-based shader tool for Unity 5, 2017 and 2018 NEW! Forum : https://forum.vetasoft.store/ Discuss with us about Shadero Sprite and more ! Description Shadero Sprite...
J2ME 用Game包的Sprite精灵类实现上下左右四个方向的人物移动
Sprite Shaders Ultimate v6.4.unitypackage
演示CSS中Sprite技术的应用,这是一种减少与服务器连接次数的好方法,能够适当提高服务器的响应能力,特别是高并发的网站。
高效的typeSprite工具JSON 包,欢迎下载
mac os 和ios 游戏开发工具.在iOS 7中内置了一个新的Sprite Kit框架,该框架主要用来开发2D游戏。目前已经支持的内容包括:精灵、很酷的特效(例如视频、滤镜和遮罩),并且还集成了物理库等许多东西。
unity插件Shadero Sprite - 2D Shader Editor 1.9.9
rn-sprite是一个react native组件用于从spritesheets创建动画
FlappyBird.sprite3
pig动画sprite 动画图片两张
unity插件sprite slicer,用来做把图片切碎的特效。
简单的SpriteKit打飞机 利用SpriteKit写的一个简单的打飞机场景,可以发射子弹、移动飞机以及碰撞检测。 利用SpriteKit写的一个简单的打飞机场景,可以发射子弹、移动飞机以及碰撞检测。
jQuery-Sprite-Anim, 没有大小/帧限制的jQuery sprite动画库 Sprite动画 版简介jQuery Sprite动画是一个简单的Sprite动画库。 jQuery已经有许多优秀的sprite动画库可用。 这个库有几种不同的方式,从它的他任何方面...
UIImage+Sprite+Animmation
超强的像素画工具 Asprite 简洁 功能强大 使用顺手 效率高
开始使用 SpriteKit 的演示。将著名的 Cocos2DSimpleGame 移植到 SpriteKit。 See my blog for more: SpriteKit快速入门和新时代iOS游戏开发指南 更多详情、使用方法,请下载后阅读README.md文件
Unity5的unitypackage 利用UI Mask 实现对Sprite精灵遮罩处理。不是插件