언락, 루트, 리커버리

LG 폰에 기본내장된 백업 어플리케이션의 취약점을 공략하는 루팅 어플리케이션, LGPwn.

by Celes posted Sep 29, 2013
?

단축키

Prev이전 문서

Next다음 문서

ESC닫기

+ - Up Down Comment Print

http://forum.xda-developers.com/showthread.php?t=2338317


[작동 원리]


LG 폰에서는 부트 과정에서 init 스크립트에 의해 spritebud라는 대몬이 실행됩니다. 이 대몬은 항시 root 권한으로 돌다가 Backup 어플리케이션으로부터 명령을 받으면 root 권한으로 파일시스템을 변경할 수 있습니다.

이 루팅툴, 즉 익스플로잇 어플리케이션에는 특수하게 변조된 백업 데이터가 들어 있는데, 익스플로잇 어플리케이션 본체의 데이터로써 50MB짜리 더미 파일(a), su 바이너리(b), su 설치 스크립트(c), 스크립트의 경로를 담은 텍스트 파일(d)로 구성되어 있습니다. 

복원 과정이 개시되기 전 익스플로잇 어플리케이션이 실행되어 프로세스를 감시하며 대기합니다. 일단 복원 과정이 개시되면, spritebud 대몬이 파일 디렉토리를 생성하고 퍼미션과 소유자를 설정하게 되는데, 여기서 50MB짜리 더미 파일을 압축 해제하는 동안 익스플로잇 어플리케이션이 개입하여 (d)를 /sys/kernel/uevent_helper에 얼른 symlink합니다. 그 다음에 (d)를 복원하면 (c)의 전체 경로가 uevent_helper에 삽입될 것입니다.

hotplug 이벤트는 장치의 고유 이벤트로 몇 초에 한 번씩 발생하는데, 이 이벤트가 발생하면 uevent_helper에 삽입된 경로가 kernel에 의하여 실행됩니다. 그러면 자연스럽게 (c)가 실행되며 su 바이너리가 설치되는 것입니다. su 바이너리가 설치되었으므로 루팅 완료.


나눔글꼴 설치 안내


이 PC에는 나눔글꼴이 설치되어 있지 않습니다.

이 사이트를 나눔글꼴로 보기 위해서는
나눔글꼴을 설치해야 합니다.

설치 취소

Designed by sketchbooks.co.kr / sketchbook5 board skin

Sketchbook5, 스케치북5

Sketchbook5, 스케치북5

Sketchbook5, 스케치북5

Sketchbook5, 스케치북5