게시 된 AndrewT 덕분에 채팅에 링크 중 하나에 refernce를 같이이 연구 논문을 가지고, 답변 . 이 답변은 전적으로이 백서 (2015 년 5 월)를 기반으로하며 사용자가 이해할 수있는 일반적인 측면을 강조합니다 ( 관심있는 사용자를위한 보안 관련 자료 가 많이 있음 )
답변 : 멀웨어 취약점에 관한 것입니다. 루트 익스플로잇을 사용하는 것은 엄청난 보안 위험이며 다른 장점을 과장합니다
소프트 루트와 하드 루트는 무엇입니까?
소프트 루트 : 루트는 장치에 직접 설치하거나 adb
PC 연결을 통해 셸을 요구하는 소프트웨어를 실행하여 직접 얻습니다 (즉, 루트 익스플로잇).
하드 루트 : 루트는 업데이트 패키지 또는 ROM을 통해 외부에서 su 바이너리를 플래싱하여 얻습니다.
악성 코드 위협-일반적으로
합법적이지만 많은 편리한 원 클릭 루트 방법이 Android 시스템의 취약성을 악용하여 작동합니다. 신중하게 제어하지 않으면 맬웨어 작성자가 이러한 악용을 악용하여 무단 루트 권한을 얻을 수 있습니다.
안드로이드 악성 코드에 설명 된대로 게놈 프로젝트 , 악성 코드 샘플 (1260) 36.7 %가 악용 적어도 하나 개의 루트를 내장했다.
잘 설계된이 익스플로잇은 잘 보호되지 않으며 잘못 손에 들어가면 매우 위험합니다.
주요 루트 제공자는 누구이며 광범위하게 어떻게 작동합니까?
![여기에 이미지 설명을 입력하십시오](https://i.stack.imgur.com/IiprN.png)
루트 추출의 유형은 무엇입니까?
이 백서는 조사 된 78 가지 익스플로잇을 다룹니다. 일반적으로, 순서 에 미치는 영향 (로부터 가장 높은 가장 낮은 )
커널 악용 : Linux Kernel을 대상으로하는 특권적인 위치로 인해 Android 기기 (예 : TowelRoot)를 완벽하게 제어 할 수 있습니다.
라이브러리 악용 : Android 시스템 프로세스에서 사용되는 라이브러리 또는 다른 응용 프로그램을 지원하는 데 사용되는 외부 라이브러리 (예 : ZergRush exploit, Volume Manager 데몬에서 사용되는 libsysutils)를 대상으로하는 악용
응용 프로그램 및 응용 프로그램 프레임 워크 응용 프로그램 계층 루트 악용 : 시스템 응용 프로그램 또는 서비스를 대상으로하는 악용. 대부분 setuid
유틸리티, 시스템 응용 프로그램 또는 서비스에 의해 도입 된 취약한 논리를 포함합니다 . 예는 setuid
명령 삽입 취약점이있는 XoomFE 장치에만 있는 취약한 유틸리티입니다.
공급 업체별 커널 또는 드라이버 : 공급 업체는 커널 (예 : Qualcomm의 사용자 지정 Linux 커널 분기)을 사용자 지정하거나 다양한 주변 장치 (예 : 카메라, 사운드)에 대한 공급 업체별 장치 드라이버를 제공합니다. 이러한 코드는 커널 공간 내에서 실행되며 이로 인해 장치를 완전히 제어 할 수 있습니다.
현명하게 , 악용은 아래 그림과 같습니다.
![여기에 이미지 설명을 입력하십시오](https://i.stack.imgur.com/ptHUG.png)
익스플로잇 (소스 또는 바이너리)에 손을 대는 것이 얼마나 어려운가요?
아주 쉽게. Google 검색에서 쉽게 사용할 수 있으므로 맬웨어 작성자가 이러한 악용을 활용할 수 있습니다. 73 개의 익스플로잇에 대한 인터넷 검색으로 68 가지를 사용할 수 있습니다. 소스 코드는 46 개, 바이너리는 22 개입니다.
이러한 악용은 어떻게 작동합니까?
익스플로잇이 작동하기위한 주요 요구 사항 ( 가장 어려운 것부터 최소한의 순서로 ) ( 맬웨어 태그에는 이러한 인스턴스가 많습니다)
사용자 상호 작용 필요 : (78 명 중 6 명은 연구 중)
- 사용자에게 앱을 다운로드하고 수동으로 설치를 중단하도록 요청
- 사용자에게 적어도 한 번은 복구로 부팅하도록 요청합니다.
- 사용자에게 수동으로 장치를 "배터리 절약"모드로 설정하도록 요청
- 사용자에게 공급 업체별 앱을 열고 버튼을 누르도록 요청
adb
PC 연결을 통한 쉘 요구 : (78 개 중 17 개 연구). 일부 익스플로잇 adb
의 경우 다음과 같은 가장 일반적인 이유 때문에 셸 연결이 필요합니다.
이 익스플로잇은 셸에서만 local.prop
루트를 활성화 하는 설정을 성공적으로 수정할 수 있습니다 adb
.
익스플로잇은 그룹 셸이 소유 한 파일과 그룹 쓰기 가능 (세계 쓰기 불가능)에 기록해야합니다.
이 익스플로잇은 공격 프로세스를 쉘 사용자와 함께 실행해야하는 adb 데몬 프로세스를 대상으로합니다. 예를 들어, Rage Against the Cage 익스플로잇 은 adb 데몬의 반환 값에 대한 누락 검사 취약점을 대상으로합니다.setuid()
재부팅 : (연구 중 78 개 중 6 개) 일반적으로 많은 루트 익스플로잇에는 최소한 한 번의 재부팅이 필요합니다. 예를 들어, 심볼릭 링크 공격을 통해 공격자는 권한이 약한 시스템에서 소유 한 파일을 삭제하고 같은 위치에 보호 된 파일에 대한 링크를 설정할 수 있습니다. 재부팅 후, 해당하는 초기화 스크립트는 원본 파일의 권한을 세계 쓰기 가능으로 변경하려고 시도합니다. 실제로는 연결된 파일의 권한이 변경됩니다.
없음 또는 권한 : (연구 된 78 개 중 44 개)이 범주의 익스플로잇에는 어려운 요구 사항이 없지만 READ LOGS
프로세스 소유자를 특정 사용자 그룹에 배치 하려면 특정 Android 권한이 필요할 수 있습니다 .
이러한 익스플로잇은 안티 바이러스에서 탐지 될 수 있습니까?
루트 익스플로잇은 매우 민감하고 다양한 Android 맬웨어에 의해 활용 될 수 있으므로 Android 플랫폼의 안티 바이러스 소프트웨어는 루트 제공자가 구현 한 소프트웨어를 포함하여 대부분의 악성 코드를 식별 할 수 있습니다. 결과적으로 Android 플랫폼의 최신 보안 제품은 여전히 루트 악용을 효과적으로 처리 할 수 없음을 보여줍니다
4 개의 대표적인 Android 안티 바이러스 제품을 사용하여 167 개의 익스플로잇을 가진 가장 큰 제공자 (이름은 공개되지 않음) 를 테스트했습니다 . 제공자 데이터베이스에서 원래 다운로드 된 익스플로잇은 실제 익스플로잇 코드를 압축하고 위변조 탐지 메커니즘을 사용했기 때문에 모든 익스플로잇에 대해 3 가지 버전으로 제작되었습니다.
패킹 및 탬퍼 탐지가 설정된 상태에서 공급자 서버에서 직접 가져온 원래 익스플로잇.
압축 해제 된 익스플로잇-모든 실제 익스플로잇 로직을 안티 바이러스 제품에 노출시킵니다.
변조 감지가 비활성화 된 상태로 재 포장 된 악용
모든 주요 안티 바이러스 소프트웨어가 아래 표에 표시된 것처럼 탐지하기가 어렵 기 때문에 대규모 루트 제공 업체가 설계 한 익스플로잇 바이너리는 놀랍도록 "깨끗합니다".
![여기에 이미지 설명을 입력하십시오](https://i.stack.imgur.com/KLCJ8.png)
결론
단순한. 멀리 소프트 루트 방법 당신이 결과를 처리 할 수 있지 않는