픽셀 9(Pixel 9)의 0-클릭 익스플로잇(0-click exploit) 체인, 보안에 미치는 영향은?
구글 픽셀 9(Google Pixel 9)의 돌비(Dolby) 오디오 디코더(Audio Decoder)에서 발견된 0-클릭 익스플로잇(0-click exploit) 체인 분석
CVE-2025-54957 취약점을 활용, 미디어 디코더(Media Decoder) 컨텍스트에서 임의 코드 실행(Arbitrary Code Execution) 성공
CVE-2025-36934를 통해 미디어 디코더(Media Decoder)에서 커널(Kernel)로의 권한 상승(Privilege Escalation) 시도
익스플로잇(Exploit)의 기술적 원리, 안드로이드(Android) 보안의 취약점(Vulnerability) 및 모바일 기기(Mobile Device) 보안 강화 방안 제시
돌비(Dolby) UDC(Unified Decoder)의 취약점 분석
본문에서는 돌비(Dolby) UDC(Unified Decoder)의 DD+ 오디오(Audio) 처리 과정에서 발생하는 정수 오버플로우(Integer Overflow) 취약점을 상세히 설명한다. 특히, `emdf_payload_size`의 무제한적인 크기 설정과 `variable_bits` 함수의 결합으로 인해 힙(Heap) 메모리 할당(Memory Allocation) 시 오버플로우가 발생할 수 있음을 지적한다. 이러한 취약점은 버퍼 오버런(Buffer Overrun) 및 정보 유출(Information Leak)로 이어진다.
익스플로잇(Exploit) 체인 구성 및 기술적 원리
익스플로잇(Exploit)은 UDC(Unified Decoder)의 메모리 레이아웃(Memory Layout)을 활용하여 진행된다. 특히, WRITE DYNAMIC 및 WRITE STATIC 기법을 통해 힙(Heap) 내의 특정 메모리 영역을 제어하고, 이를 통해 함수 포인터(Function Pointer)를 조작하여 임의의 코드 실행(Code Execution)을 달성한다. 또한, ASLR(Address Space Layout Randomization) 우회 전략과 0-클릭 공격(0-click attack)의 실현 가능성을 제시한다.
권한 상승(Privilege Escalation) 및 보안 취약점(Vulnerability) 분석
익스플로잇(Exploit)은 미디어 디코더(Media Decoder) 컨텍스트에서 시작하여 커널(Kernel) 권한 획득을 목표로 한다. 이를 위해, /proc/self/mem 파일을 활용한 ROP(Return-Oriented Programming) 기법을 사용하며, SELinux 제약 조건을 우회하기 위한 전략을 제시한다. 이러한 분석은 안드로이드(Android) 시스템의 보안 취약점(Vulnerability)과 0-클릭 공격(0-click attack)의 위험성을 보여준다.
WRITE DYNAMIC FAST 기법의 활용
본문에서는 WRITE DYNAMIC FAST 기법을 통해 skip pointer를 조작하고, 힙(Heap) 메모리 할당(Memory Allocation)을 제어하는 방법을 설명한다. 이 기법은 EMDF 컨테이너(Container) 내에서 skip pointer를 이동시키고, 데이터를 skip buffer에 쓸 수 있게 해준다. 이를 통해, payload_extra와 같은 중요한 메모리 영역을 조작하여 WRITE STATIC 기법을 가능하게 하고, 궁극적으로 코드 실행(Code Execution)을 위한 기반을 마련한다.
DLB_CLqmf_analysisL 함수를 이용한 ROP
DLB_CLqmf_analysisL 함수를 활용하여 ROP(Return-Oriented Programming)를 수행하는 방법을 설명한다. 이 함수 내에서 function pointer를 조작하고, 제어 가능한 매개변수를 설정하여 임의의 코드를 실행한다. 특히, memcpy 및 increment gadget을 활용하여 코드 실행(Code Execution)을 위한 ROP chain을 구성하는 과정을 상세히 설명하며, ASLR(Address Space Layout Randomization)의 제약 조건 하에서도 ROP를 성공적으로 수행하는 전략을 제시한다.