exploit the possibilities
Home Files News &[SERVICES_TAB]About Contact Add New

Sprite Software Android Race Condition

Sprite Software Android Race Condition
Posted Jun 24, 2013
Authored by Justin Case

A race condition in Sprite Software's backup software on Android devices allows for code execution as root.

tags | exploit, root, code execution
advisories | CVE-2013-3685
SHA-256 | 7e1b48d28523c995e417a3ba929c6db89dc279830ff6b11b530c719a9d14944c

Sprite Software Android Race Condition

Change Mirror Download
Subject:
Race condition in Sprite Software's backup software, installed by OEM on LG
Android devices.

CVE ID:
CVE-2013-3685

Initial disclosure:
https://plus.google.com/110348415484169880343/posts/Me2yea2PgwE

Source:
https://github.com/CunningLogic/LGPwn

Effect:
Locally exploited vulnerability with minimal device user interaction which
results in executing code as the root user. Under specific circumstances,
it is possible to exploit this vulnerability without the device user's
knowledge

Products:
"Backup"
"spritebud"

Vendors:
Sprite Software
LG Electronics
Potentially other vendors

Affected Versions:
spritebud 1.3.24
backup 2.5.4105
Likely others versions as well

Affected Devices (Subject to firmware configuration):
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
Potentially other devices as well.


Product Information:

"Backup" and "spritebud" are a setting and application backup/restore
system written by Sprite Software and deployed on LG Android smartphones.
"Backup" is the end user front end app, and "spritebud" is the service that
preforms the backup and restore functions.


Details:

The "spritebud" daemon is started by the init scripts and runs as the root
user. Listening on a unix socket, the daemon accepts instructions from the
"Backup" app. Using a crafted backup, we can write to, change permission
and change ownership of any file, being that "spritebud" is running under
the root user.


The crafted backup contains restore data for our exploiting application,
"com.cunninglogic.lgpwn". The data includes a 50mb dummy file (a) used to
increase our exploit window, su binary (b), a script (c) to install su, and
a text file (d) containing the path to our script. All files are owned by
the application, and are world write/read/execute. All files are restored
in alphabetical order. The entire backup, after compress, is approximately
2mb. The structure of this backup is as follows:


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


Prior to restoration, our exploit app runs, watches the process and waits.
During restoration, the spritebud daemon first creates the files directory,
then sets it's permission and owner. Next it decompresses and restores the
"a" file, our 50mb dummy files. During the restoration of "a", our exploit
application has time to symlink "d", our text file containing the full path
to our script (c), to /sys/kernel/uevent_helper. Upon restoration of file
"d", our path is written to uevent_helper. When a hotplug even occurs
(which occur every few seconds), the path contained in uevent_helper is
execute by the kernel and our script (c) is executed and installs the su
binary (b).
Login or Register to add favorites

File Archive:

June 2024

  • Su
  • Mo
  • Tu
  • We
  • Th
  • Fr
  • Sa
  • 1
    Jun 1st
    0 Files
  • 2
    Jun 2nd
    0 Files
  • 3
    Jun 3rd
    18 Files
  • 4
    Jun 4th
    21 Files
  • 5
    Jun 5th
    0 Files
  • 6
    Jun 6th
    57 Files
  • 7
    Jun 7th
    6 Files
  • 8
    Jun 8th
    0 Files
  • 9
    Jun 9th
    0 Files
  • 10
    Jun 10th
    12 Files
  • 11
    Jun 11th
    27 Files
  • 12
    Jun 12th
    38 Files
  • 13
    Jun 13th
    16 Files
  • 14
    Jun 14th
    14 Files
  • 15
    Jun 15th
    0 Files
  • 16
    Jun 16th
    0 Files
  • 17
    Jun 17th
    16 Files
  • 18
    Jun 18th
    26 Files
  • 19
    Jun 19th
    15 Files
  • 20
    Jun 20th
    18 Files
  • 21
    Jun 21st
    8 Files
  • 22
    Jun 22nd
    0 Files
  • 23
    Jun 23rd
    0 Files
  • 24
    Jun 24th
    19 Files
  • 25
    Jun 25th
    5 Files
  • 26
    Jun 26th
    0 Files
  • 27
    Jun 27th
    0 Files
  • 28
    Jun 28th
    0 Files
  • 29
    Jun 29th
    0 Files
  • 30
    Jun 30th
    0 Files

Top Authors In Last 30 Days

File Tags

Systems

packet storm

© 2022 Packet Storm. All rights reserved.

Services
Security Services
Hosting By
Rokasec
close