2025년은 브라우저 보안 연구자들에게 격동의 한 해였습니다. 특히 V8 샌드박스를 통해 Chrome의 방어 기능을 지속적으로 강화함에 따라 공격자들은 특히 다음과 같은 공격에 집중하고 있습니다. 국가 행위자 및 상업용 스파이웨어 공급업체는 진화할 수밖에 없었습니다. 단순한 렌더러 RCE(원격 코드 실행)의 시대는 사라지고 있습니다.
2025년의 일반적인 추세는 전체 체인 익스플로잇활용 V8 유형 혼동 를 사용하여 렌더러 내에서 초기 코드 실행을 확보한 다음, 논리 기반 Mojo IPC 취약점 달성하기 위해 샌드박스 탈출를 사용하여 궁극적으로 호스트 시스템의 제어권을 장악합니다.
이 문서에서는 2025년에 가장 파괴적이었던 Chrome 제로데이에 대한 기술적 사후 분석을 제공하며, 다음 사항에 중점을 둡니다. CVE-2025-14174 (앵글 아웃오브바운드 액세스) 및 CVE-2025-13223 (V8 유형 혼동)에 대해 알아보고, AI가 이러한 지능형 위협 탐지에 어떻게 혁신을 일으키고 있는지 살펴봅니다.

치명적인 그래픽 레이어: CVE-2025-14174 해부하기
공개되었습니다: 공개: 2025년 12월 11일
컴포넌트: 구성 요소: ANGLE(거의 네이티브 그래픽 레이어 엔진)
CVSS 점수: 8.8(높음)
2025년 후반에 출시됩니다, CVE-2025-14174 는 자바스크립트 엔진 결함이 아니라는 점에서 차별화됩니다. 대신 ANGLE는 WebGL 호출을 OpenGL, Direct3D, Metal과 같은 기본 그래픽 API로 변환하는 Chrome의 추상화 레이어입니다.
메커니즘: WebGL에서 메탈로의 번역 실패
구글 프로젝트 제로와 애플 SEAR의 공동 분석에 따르면, 이 취약점은 앵글의 메탈 백엔드 구현에 있는 것으로 밝혀졌습니다. 구체적으로, 엔진은 다음과 같은 사항을 제대로 검증하지 못했습니다. 픽셀뎁스피치 매개변수에 대한 GL_UNPACK_IMAGE_HEIGHT 값입니다.
프리미티브 익스플로잇:
공격자는 조작된 텍스처 파라미터로 악성 WebGL 컨텍스트를 초기화하여 아웃 오브 바운스(OOB) 쓰기를 트리거할 수 있습니다.
- 트리거: 피해자가 악성 WebGL 콘텐츠를 로드하는 조작된 HTML 페이지를 방문합니다.
- 부패: 경계 검사가 누락되어 악성 텍스처 데이터가 인접한 힙 구조를 덮어쓰게 됩니다.
- Hijack: 공격자는 C++ 객체의 vtable 포인터를 덮어쓰는 방식으로 제어 흐름을 ROP 체인으로 리디렉션하여 GPU 프로세스 내에서 코드 실행을 달성합니다.
GPU 프로세스는 렌더러보다 높은 권한(예: 드라이버 직접 액세스)을 갖는 경우가 많기 때문에 CVE-2025-14174는 공격자에게 매우 효과적인 공격 거점 역할을 하며, "원샷" 드라이브 바이 다운로드 캠페인에 자주 사용됩니다.
V8의 악몽: CVE-2025-13223과 유형 혼동의 진화
그래픽 스택 취약점이 증가하고 있지만, V8 엔진은 여전히 주요 격전지로 남아 있습니다. CVE-2025-13223 는 클래식 V8 유형 혼동 취약점은 구글의 위협 분석 그룹(TAG)에 의해 야생에서 악용되는 것으로 확인되었습니다.
JIT의 유형 추론 실패
최신 자바스크립트 엔진은 코드를 최적화하기 위해 TurboFan과 같은 JIT(Just-In-Time) 컴파일러를 사용합니다. CVE-2025-13223의 근본 원인은 JIT 컴파일러의 "CheckMaps" 노드가 다음을 올바르게 처리하지 못했기 때문입니다. 지도 전환 최적화 중입니다.
익스플로잇 로직(개념):
자바스크립트
`// 타입 혼동에 대한 개념 검증 함수 trigger(arr) { // JIT는 'arr'에 정수만 포함된다고 가정합니다 (SMI) arr[0] = 1.1; // 맵 전환을 트리거하면 배열이 더블이 됩니다 // 취약성: 최적화된 코드가 최적화를 해제하거나 새 맵을 확인하지 못합니다 return arr[1]; // 잘못된 오프셋 계산으로 메모리에 액세스합니다 }
// 공격자는 이를 사용하여 프리미티브를 구성합니다 let leaker = new Array(10); trigger(leaker);`
공격자는 이러한 혼란을 악용하여 두 가지 필수 기본 요소를 구성합니다:
- addrOf: 자바스크립트 객체의 메모리 주소를 유출합니다.
- fakeObj: 특정 메모리 주소에 가짜 자바스크립트 객체를 생성합니다.
이러한 기본 요소를 통해 공격자는 다음을 달성할 수 있습니다. 임의 읽기/쓰기 를 사용하여 ASLR을 우회하고 셸코드를 실행할 수 있습니다.

케이지 깨기: CVE-2025-2783 및 Mojo IPC 샌드박스 탈출
렌더러에서 RCE를 획득하는 것은 1단계에 불과합니다. 시스템을 실제로 손상시키려면 공격자는 크롬 샌드박스를 탈출해야 합니다. CVE-2025-2783 에서 로직 버그의 위험성을 강조합니다. Mojo IPC (프로세스 간 통신).
메모리 손상 관련 로직 버그
커널 익스플로잇과 달리 CVE-2025-2783은 논리적 결함입니다. Mojo는 Chrome의 격리된 프로세스 사이의 다리 역할을 합니다. 이 취약점은 브라우저 프로세스가 렌더러가 전달한 핸들의 권한을 검증하지 못해서 발생했습니다.
공격자(이미 V8 익스플로잇을 통해 렌더러를 제어하고 있는)는 특정 IPC 메시지를 위조하여 권한이 있는 브라우저 프로세스가 파일 시스템에 쓰거나 외부 실행 파일을 실행하는 등 제한된 작업을 수행하도록 속일 수 있습니다. 이러한 유형의 로직 버그 는 제어 흐름은 유효하지만 의도만 악의적이기 때문에 MTE나 CFI와 같은 메모리 안전 완화 조치로는 막기 어렵기로 악명이 높습니다.
AI 기반 익스플로잇 체인 탐지: 펜리젠트의 혁신
CVE-2025-14174 및 CVE-2025-13223과 같은 취약점을 탐지하는 것은 기존 버전 기반 스캐너나 단순 퍼저의 기능을 뛰어넘는 것입니다. 복잡한 메모리 레이아웃이나 크로스 프로세스 익스플로잇 체인을 이해할 수 있는 컨텍스트가 부족하기 때문입니다.
여기에서 Penligent.ai 는 그 중요한 가치를 입증합니다. Penligent는 단순한 스캐너가 아니라 AI 기반 자동화된 모의 침투 테스트 플랫폼입니다. 브라우저 엔진 취약점의 경우 Penligent는 고유한 기능을 제공합니다:
- 프리미티브 합성: 펜리전트의 AI 에이전트는 크래시 덤프를 분석하여 불안정한 OOB 읽기를 신뢰할 수 있는 데이터로 변환하는 방법을 자동으로 추론합니다.
addrOf프리미티브. V8 객체 레이아웃을 이해하고 익스플로잇 코드를 동적으로 생성합니다. - 교차 프로세스 논리 추론: Mojo IPC 결함의 경우, Penligent는 Chrome의
.mojom인터페이스 정의. 샌드박스를 탈출하려는 손상된 렌더러를 시뮬레이션하여 에지 케이스 로직을 테스트하는 IPC 메시지 시퀀스를 자동으로 생성합니다.
펜리전트는 고급 취약점 연구자의 사고방식을 시뮬레이션하여 조직이 보안 제어가 취약점 공개와 패치 사이의 중요한 기간 동안 이러한 킬 체인을 차단할 수 있는지 검증할 수 있도록 지원합니다.
방어 전략: 패치 적용 그 이상
2025년의 위협 환경에 직면하여 단순히 'Chrome을 최신 상태로 유지하는 것'은 해결책이 아니라 기준선입니다.
- V8 샌드박스 적용: V8 샌드박스 기능이 엄격하게 활성화되어 있는지 확인하세요. 이 기능은 힙 손상 익스플로잇을 주소 공간의 제한된 영역에 가두어 전체 프로세스 메모리가 손상되는 것을 방지합니다.
- 공격 표면 감소: 엔터프라이즈 환경에서는 그룹 정책을 통해 불필요한 WebGL 또는 WebGPU 기능을 비활성화하여 CVE-2025-14174와 같은 공격 벡터를 차단하세요.
- 행동 모니터링(EDR): 비정상적인 IPC 연결을 생성하거나 실행 가능한 메모리 페이지(RWX)를 할당하려는 렌더러 프로세스 등 비정상적인 렌더러 동작을 탐지할 수 있는 EDR 솔루션을 배포하세요.
결론
2025년 Chrome 제로데이 현황을 보면 브라우저 보안이 심각한 수준에 이르렀음을 알 수 있습니다. 공격자들은 앵글의 메모리 손상부터 모조의 논리적 이스케이프에 이르기까지 브라우저 아키텍처의 미세한 균열을 악용하고 있습니다. 하드코어 보안 엔지니어의 경우, 이러한 저급한 수준의 익스플로잇 역학 AI를 활용한 자동화된 검증을 도입하는 것만이 이를 막을 수 있는 유일한 방법입니다.

