
"단 하나의 악성 패킷이 당신의 기기를 장악할 수 있습니다." — Android Security Team, 2025년 11월
"단일 악성 패킷으로 기기를 장악할 수 있습니다." — Android 보안팀, 2025년 11월
Android 시스템(블루투스 하위 시스템)의 제로 클릭 원격 코드 실행
일반 휴대폰과 태블릿은 취약하지 않습니다. CVE-2025-48593은 스마트워치, 스마트 안경, 자동차와 같이 블루투스 헤드폰/스피커 역할을 지원하는 Android 기기에만 영향을 미칩니다. 또한 공격자는 취약점을 악용하기 전에 피해자가 블루투스 페어링 요청을 수락하도록 해야 합니다. 페어링 요청을 거절하는 것만으로도 보호가 됩니다. 출처: 독립 PoC 연구원 (worthdoingbadly.com, 2025년 12월)
| 속성 | 세부 정보 |
|---|---|
| CVE ID | CVE-2025-48593 |
| 심각도 | 심각 (RCE, 제로 클릭) |
| CVSS v3.1 점수 | 7.8 (높음) ✅ NVD 확인 |
| CVSS 벡터 | AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H |
| 공격 경로 | 로컬 / 네트워크 (블루투스) |
| 사용자 상호 작용 | ❌ 필요 없음 |
| 필요한 권한 | ❌ 없음 |
| 근본 원인 | bta_hf_client_cb_init (bta_hf_client_main.cc)의 Use-After-Free |
| Android 버그 ID | A-374746961 |
| 익스플로잇 상태 | ⚠️ 에뮬레이터 PoC 존재 — 실제 기기에서 확인된 공격 없음 |
| 공개일 | 2025년 11월 3일 (Google 11월 Android 보안 게시판) |
⚠️ 참고: 원래 추정 CVSS 9.8이 수정되었습니다. NVD가 공식적으로 7.8(높음)로 확인했습니다. 이 취약점은 완전한 원격 네트워크 수준이 아닌 로컬 공격 경로입니다.
| Android 버전 | 영향을 받는 빌드 |
|---|---|
| Android 13 | 2023년 10월 ~ 2025년 10월 모든 빌드 |
| Android 14 | 2023년 10월 ~ 2025년 10월 모든 빌드 |
| Android 15 | 2025년 10월까지의 모든 빌드 |
| Android 16 | 2025년 7월 ~ 2025년 10월 빌드 ⚠️ |
2025-11-01 이상 패치 레벨의 기기는 보호됩니다.
✅ GrapheneOS 사용자는
hardened_malloc및 하드웨어 메모리 태깅을 통해 추가로 보호되며, 이는 패치되지 않은 빌드에서도 이러한 메모리 손상 취약점 클래스를 크게 완화합니다.
취약점은 블루투스 하위 시스템, 특히 bta_hf_client_main.cc의 bta_hf_client_cb_init 함수에 있습니다. 블루투스 핸즈프리 프로필(HFP) 클라이언트 구현의 use-after-free 결함입니다. 수정에는 블루투스 모듈에 대한 두 개의 커밋이 포함되었습니다.
// 취약한 경로를 보여주는 단순화된 의사 코드
void bta_hf_client_cb_init(tBTA_HF_CLIENT_CB *client_cb) {
free(client_cb->p_disc_db); // 오류 발생 시 SDP 탐색 DB 해제
// ... 기타 처리 ...
use(client_cb->p_disc_db); // ⚠️ use-after-free! CVE-2025-48593
execute_callback(client_cb); // 공격자가 제어하는 코드 경로
}
정확한 트리거: 패치 이전, 전화기가 SDP 탐색에 오류로 응답하면 bta_hf_client_sdp_cback이 BTA_HF_CLIENT_DISC_INT_RES_EVT를 발생시켜 tSDP_DISCOVERY_DB가 해제되는 동시에 해제된 풀에 더 이상 존재하지 않는 포인터(client_cb->p_disc_db)가 남아 있어 악용 가능한 댕글링 참조가 생성됩니다.
공격 벡터: SDP 협상 중 HFP 핸들러를 트리거하도록 조작된 변형된 블루투스 패킷.
영향: 취약한 핸들러는 사용자 상호 작용 없이 특권을 가진 블루투스 프로세스 컨텍스트에서 실행되어 무음 코드 실행이 가능합니다.
⚠️ 이 결함은 블루투스 헤드셋/스피커 클라이언트 역할을 하는 기기(예: 스마트워치, 스마트 안경, Android Automotive)에만 영향을 미칩니다. 일반 휴대폰과 태블릿은 기본적으로 HFP 헤드셋 서비스를 노출하지 않습니다.
# 1. 패치 레벨 확인
adb shell getprop ro.build.version.security_patch
# → 표시: 2025-11-01 또는 그 이후
hardened_malloc 및 HW 메모리 태깅이 이 클래스의 결함을 완화소유하거나 명시적 테스트 허가를 받은 기기에서만 테스트하십시오. 프로덕션 네트워크와 연결되지 않은 격리된 랩을 사용하십시오. 조정된 공개 절차를 따르십시오. 무기화된 익스플로잇 코드를 절대 게시하지 마십시오.
sequenceDiagram
participant Attacker as 공격자
participant BT as 블루투스 채널
participant Device as Android 기기 (헤드셋 모드)
participant System as 블루투스 HFP 핸들러
Attacker->>Device: 블루투스 페어링 요청
Device-->>Attacker: 피해자가 페어링 수락
Attacker->>BT: 변형된 HFP SDP 패킷 전송
BT->>Device: 패킷 전달 (추가 상호 작용 없음)
Device->>System: bta_hf_client_sdp_cback(오류)
Note over System: p_disc_db 해제, 댕글링 포인터 남음
Note over System: ⚠️ Use-After-Free 트리거
System-->>Device: 손상된 메모리 / 댕글링 포인터
Device->>System: 공격자가 제어하는 코드 실행
System->>Attacker: 원격 셸 / 데이터 유출
Note over Device,System: 완전한 RCE 달성
graph TD
A[Google 패치 출시\n2025년 11월 1/5일] --> B{OEM 통합}
B --> C[삼성, 원플러스 등]
B --> D[Google Pixel]
B --> E[LineageOS ✅ 패치됨]
B --> F[GrapheneOS ✅ 패치됨\n+ hardened_malloc 완화]
C --> G[월간 보안 업데이트]
D --> H[Pixel OTA 푸시]
G & H & E & F --> I[사용자 업데이트 설치]
I --> J[패치 레벨: 2025-11-01+]
J --> K[✅ CVE-2025-48593 완화됨]
style A fill:#1976d2,color:#fff
style K fill:#1b5e20,color:#fff
style I fill:#ff9800,color:#fff
graph LR
subgraph "예방"
P1[2025년 11월 패치 적용]
P2[사용하지 않는 블루투스 비활성화]
P3[Google Play 프로텍트]
P4[알 수 없는 BT 페어링 거절]
P5[GrapheneOS / 강화된 빌드 사용]
end
subgraph "탐지"
D1[비정상 BT 트래픽 모니터링]
D2[블루투스 서비스 충돌 감시]
D3[엔드포인트 포렌식]
end
subgraph "대응"
R1[기기 격리]
R2[OTA 업데이트 강제]
R3[Google/OEM에 신고]
end
P1 & P2 & P3 & P4 & P5 --> D1 & D2 & D3 --> R1 & R2 & R3
style P1 fill:#1b5e20,color:#fff
style R1 fill:#b71c1c,color:#fff
CVE-2025-48633 및 CVE-2025-48572는 2025년 12월 2일 CISA 알려진 악용 취약점(KEV) 카탈로그에 추가되었습니다. 미국 연방 기관은 2025년 12월 23일까지 패치를 적용해야 했습니다.
| 상태 | 세부 정보 |
|---|
| 공개 PoC | ⚠️ 에뮬레이터 충돌 PoC 존재 (블루투스 서비스만 충돌) — ASLR 우회 불가 |
| 실제 기기 공격 | ✅ 2026년 4월 기준 문서화된 공격 없음 |
| 무기화된 익스플로잇 | ❌ 확인된 무기화 익스플로잇 없음; PoC는 실제 공격자에게 사용 불가 |
| 사기성 익스플로잇 판매 | ⚠️ 보고됨 — 작동하는 익스플로잇이 아닌 악성코드/사기일 가능성 높음 |
| 악성코드 연관성 | ⚠️ 일부 출처에서 Airstalk 및 Chrysaor 언급 — 확인되지 않음, 주의 필요 |
| LineageOS 패치 | ✅ LineageOS 소스에 통합됨 |
| 단계 | 동작 | 요구 사항 |
|---|
| 1. 페어링 | 공격자가 피해자에게 BT 페어링 수락 유도 | 피해자가 페어링 수락 |
| 2. 패킷 제작 | 공격자가 변형된 블루투스 HFP SDP 패킷 생성 | 없음 |
| 3. 전송 | 블루투스 채널을 통해 전송 | 근접성 / BT 범위 |
| 4. 수신 | 기기가 패킷 수신 (추가 사용자 작업 없음) | HFP 헤드셋 모드의 패치되지 않은 Android 13–16 |
| 5. 처리 | 블루투스 HFP 핸들러가 SDP 오류 응답 처리 | 취약한 코드 경로 |
| 6. Use-After-Free | 해제된 p_disc_db 포인터 참조, 공격자가 포인터 제어 | 메모리 레이아웃 가정 |
| 7. 실행 | 블루투스 프로세스 컨텍스트에서 임의 코드 실행 | ASLR 우회 필요 |
| 8. 지속성 | 악성코드 설치, 데이터 유출, 피벗 | 전체 기기 제어 |
| CVE | 심각도 | 유형 | 영향을 받는 버전 | 상태 |
|---|
CVE-2025-48581 | 높음 | 권한 상승(EoP) | Android 16 전용 | 2025년 11월 패치됨 |
CVE-2025-48633 | 높음 | 정보 유출 | Android Framework | ⚠️ 활발히 악용됨 — CISA KEV 2025년 12월 2일 |
CVE-2025-48572 | 높음 | 권한 상승(EoP) | Android Framework | ⚠️ 활발히 악용됨 — CISA KEV 2025년 12월 2일 |
| 날짜 | 업데이트 |
|---|
| 2025년 11월 3일 | Google 11월 Android 보안 게시판을 통해 최초 공개 |
| 2025년 11월 5일 | AOSP 패치 출시 (블루투스 모듈에 두 개의 커밋) |
| 2025년 11월 22일 | 근본 원인 명확히: bta_hf_client_cb_init (bta_hf_client_main.cc)의 use-after-free |
| 2025년 12월 2일 | 관련 CVE 48633 및 48572가 CISA KEV 카탈로그에 추가 |
| 2025년 12월 | 독립 PoC 게시 — 휴대폰/태블릿은 영향을 받지 않음을 확인; BT 헤드셋 모드 기기만 취약; 페어링 동의 필요 |
| 2026년 3월 | NVD CVSS 7.8 HIGH로 확인; 실제 기기 공격 확인되지 않음 |
| 2026년 4월 | 범위 설명을 최상위 경고로 격상; GrapheneOS 완화 언급; 악성코드 연관성(Airstalk, Chrysaor) 미확인으로 표시 |