`
444878909
  • 浏览: 639350 次
文章分类
社区版块
存档分类
最新评论

LG Sprite Software Root漏洞

 
阅读更多

本文章由Jack_Jia编写,转载请注明出处。
文章链接:
http://blog.csdn.net/jiazhijun/article/details/9183517
作者:Jack_Jia 邮箱:309zhijun@163.com


一、漏洞描述

日前LG设备报出Root提权漏洞,该提权漏洞是由Sprite Software公司(http://www.spritesoftware.com/)开发的应用备份/恢复系统引起的。该应用内置于LG设备中并以Root身份运行。本地攻击者可利用该漏洞获取设备Root权限。

二、影响设备

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代码


五、相关链接

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics