🔍 CVE-2017-5217

5.5
CVSS Score
MEDIUM
2017-01-09
2026-06-17 01:20
✅ 완료

🇰🇷 한글 설명

특정 삼성 안드로이드 기기에서 권한이 없는 앱을 설치할 경우, 시스템 서버 프로세스가 지속적으로 충돌하여 무한 재부팅이 발생하는 취약점입니다. 이는 삼성의 APK 파싱 가속화 기능인 PackagePrefetcher가 비정상적으로 큰 AndroidManifest.xml 파일을 처리하는 과정에서 메모리 부족 오류를 일으키기 때문입니다.

💡 쉬운 설명

악성 앱을 설치하면 휴대폰의 핵심 시스템이 감당할 수 없는 너무 큰 파일을 읽으려다 오류가 발생합니다. 이로 인해 휴대폰이 계속 꺼졌다 켜지는 무한 재부팅 현상이 발생할 수 있습니다.

🇺🇸 원문 (English)

Installing a zero-permission Android application on certain Samsung Android devices with KK(4.4), L(5.0/5.1), and M(6.0) software can continually crash the system_server process in the Android OS. The zero-permission app will create an active install session for a separate app that it has embedded within it. The active install session of the embedded app is performed using the android.content.pm.PackageInstaller class and its nested classes in the Android API. The active install session will write the embedded APK file to the /data/app directory, but the app will not be installed since third-party applications cannot programmatically install apps. Samsung has modified AOSP in order to accelerate the parsing of APKs by introducing the com.android.server.pm.PackagePrefetcher class and its nested classes. These classes will parse the APKs present in the /data/app directory and other directories, even if the app is not actually installed. The embedded APK that was written to the /data/app directory via the active install session has a very large but valid AndroidManifest.xml file. Specifically, the AndroidManifest.xml file contains a very large string value for the name of a permission-tree that it declares. When system_server tries to parse the APK file of the embedded app from the active install session, it will crash due to an uncaught error (i.e., java.lang.OutOfMemoryError) or an uncaught exception (i.e., std::bad_alloc) because of memory constraints. The Samsung Android device will encounter a soft reboot due to a system_server crash, and this action will keep repeating since parsing the APKs in the /data/app directory as performed by the system_server process is part of the normal boot process. The Samsung ID is SVE-2016-6917.

📍 영향받는 시스템

Samsung Android devices (KitKat 4.4, Lollipop 5.0/5.1, Marshmallow 6.0)

⚔️ 공격 벡터

Zero-permission Android application installation via PackageInstaller

🛡️ 대응 방법

삼성 보안 업데이트를 통해 최신 소프트웨어 버전으로 업데이트

🔧 검증 코드

출력된 안드로이드 버전이 4.4, 5.0, 5.1, 6.0 중 하나인지 확인하여 취약 여부 판단

Shell / Script
getprop ro.build.version.release

📊 CVSS Vector String

CVSS Vector
CVSS:3.0/AV:L/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H

💻 영향받는 소프트웨어

Android OS