Lỗ hổng zero-day trong V8 Engine của Google Chrome đang bị khai thác tích cực

Vừa qua, Google đã phát hành bản cập nhật bảo mật khẩn cấp cho Chrome để vá lỗ hổng zero-day CVE-2026-85046, một lỗi type confusion trong V8 JavaScript and WebAssembly Engine đang bị khai thác tích cực trong thực tế. CVE-2026-85046 là lỗ hổng Chrome zero-day thứ sáu mà Google đã vá kể từ đầu năm 2026 và là lần thứ ba trong năm V8 Engine trực tiếp bị nhắm mục tiêu. Một điểm đáng chú ý: cả sáu Chrome zero-day được vá trong năm 2026 đều có cùng điểm CVSS 8.8, sự đồng nhất này phản ánh giới hạn của sandbox Chrome hơn là mức độ thực sự của các lỗ hổng.
Thông tin chi tiết
Định danh lỗ hổng: CVE-2026-85046
Điểm CVSS(3.1): 8.8
Mức độ nghiêm trọng: HIGH – Nghiêm trọng cao
Mô tả: CVE-2026-85046 là lỗ hổng type confusion trong V8 Engine, cụ thể trong Maglev JIT (Just-In-Time) compiler của Chrome. Lỗ hổng phát sinh do một lỗi logic trong quá trình biên dịch: khi V8 xử lý một mảng (array) chứa các phần tử hỗn hợp (
PACKED_ELEMENTS— mixed types), compiler có thể gán nhầm map loạiPACKED_SMI_ELEMENTS(chỉ dành cho integer) cho mảng đó. Đây là trạng thái type confusion: V8 "tin" rằng mảng chỉ chứa integer trong khi thực tế có thể chứa các loại dữ liệu khác. Khi V8 sau đó thực hiện các optimization dựa trên giả định sai này, kết quả là đọc và ghi tùy ý vào JavaScript heap. Kẻ tấn công có thể khai thác primitive heap read/write này để kiểm soát luồng thực thi của V8, đạt được thực thi mã tùy ý bên trong sandboxed renderer process của Chrome thông qua một trang HTML được craft đặc biệt. Người dùng phải truy cập trang độc hại của kẻ tấn công để kích hoạt khai thác, Google xác nhận exploit đang hoạt động trong thực tế nhưng không tiết lộ chi tiết về các cuộc tấn công hoặc threat actor cụ thể theo thông lệ thường thấy.Phiên bản bị ảnh hưởng: Google Chrome trước 152.0.7977.82
Bản vá phát hành: Chrome 152.0.7977.82/.83 (Windows và macOS), Chrome 152.0.7977.82 (Linux)
Sáu Chrome Zero-Day trong năm 2026
CVE-2026-85046 là zero-day thứ sáu Google vá trong năm 2026, tốc độ đáng lo ngại đặt ra áp lực lớn lên đội ngũ IT đang phải xử lý đồng thời vô số bản vá từ Windows, VMware, Fortinet, SAP, và hàng loạt phần mềm enterprise khác trong cùng khoảng thời gian:
| CVE | Tháng vá | Component | Loại lỗ hổng |
|---|---|---|---|
| CVE-2026-2441 | Tháng 02/2026 | CSS (CSSFontFeatureValuesMap) | Iterator invalidation / use-after-free |
| CVE-2026-3909 | Tháng 03/2026 | Skia 2D graphics library | Out-of-bounds write |
| CVE-2026-3910 | Tháng 03/2026 | V8 JavaScript/WebAssembly engine | Inappropriate implementation |
| CVE-2026-5281 | Tháng 04/2026 | Dawn (WebGPU) | Use-after-free |
| CVE-2026-11645 | Tháng 06/2026 | V8 JavaScript engine | Out-of-bounds read/write |
| CVE-2026-85046 | Tháng 09/2026 | V8 (Maglev JIT compiler) | Type confusion |
Ba trong sáu zero-day nhắm trực tiếp vào V8, cho thấy đây là thành phần đang bị cộng đồng nghiên cứu tấn công (và threat actor) tập trung audit có hệ thống.
Google Chrome là trình duyệt web phổ biến nhất thế giới với thị phần vượt 65% toàn cầu, cài đặt trên hàng tỷ thiết bị Windows, macOS, Linux, Android, và ChromeOS. V8 là JavaScript engine mã nguồn mở của Google, chịu trách nhiệm biên dịch và thực thi toàn bộ JavaScript và WebAssembly code trong Chrome. V8 cũng là engine của Node.js, khiến lỗ hổng trong V8 có tác động vượt ra ngoài trình duyệt. Maglev là JIT compiler thế hệ mới của V8, được giới thiệu để tối ưu hiệu năng thực thi JavaScript bằng cách biên dịch "nhanh" code JavaScript sang mã máy ở runtime, nhanh hơn Ignition (interpreter) nhưng ít agressive hơn Turbofan (full optimization compiler). CVE-2026-85046 khai thác một điểm yếu cơ bản trong bất kỳ JIT compiler nào: speculative optimization. JIT compiler phải đưa ra giả định về loại dữ liệu để tạo mã máy hiệu quả, nếu giả định sai, kết quả là type confusion. Trong V8, các array "map" mô tả loại phần tử mà array chứa (PACKED_SMI_ELEMENTS cho integer, PACKED_ELEMENTS cho mixed types, v.v.). Khi Maglev gán nhầm map, code được tối ưu dựa trên giả định sai, cho phép đọc/ghi vào heap vượt quá giới hạn của từng loại dữ liệu.
Điều quan trọng cần hiểu về sandbox: CVE-2026-85046 cho phép thực thi mã bên trong sandboxed renderer process của Chrome, không phải trực tiếp trên host OS. Chrome's sandbox cô lập renderer process khỏi phần còn lại của hệ thống. Một full browser compromise (thoát khỏi sandbox và chạy mã trên host OS) thường đòi hỏi một exploit thứ hai, sandbox escape. Tuy nhiên, ngay cả trong sandbox, kẻ tấn công có thể đánh cắp session cookie, saved password, form data, browser history, và thực hiện các hành động trong browser dưới danh tính người dùng. Đây vẫn là hậu quả nghiêm trọng trong môi trường thực tế.
Pattern sáu zero-day với cùng điểm CVSS 8.8 không phải ngẫu nhiên: CVSS 8.8 phản ánh "RCE with user interaction, no privilege required", đặc điểm chung của các lỗ hổng browser renderer. Score bị giữ dưới 9.0 chính xác vì sandbox giới hạn attack scope (S:C → scope changed nhưng không phải host compromise trực tiếp). Nếu threat actor có kết hợp một sandbox escape exploit, tổng điểm thực tế của chuỗi tấn công sẽ tiệm cận 10.0.
Tổng quát quá trình khai thác CVE-2026-85046
Quá trình khai thác có thể được chia thành các giai đoạn sau:
Thiết lập Trang Web Độc hại (Attack Infrastructure Setup)
Kẻ tấn công tạo trang HTML chứa JavaScript được craft đặc biệt để kích hoạt lỗi type confusion trong Maglev JIT compiler của V8.
Payload JavaScript được thiết kế để: tạo array chứa PACKED_ELEMENTS, trigger code path khiến Maglev gán nhầm map PACKED_SMI_ELEMENTS, sau đó khai thác trạng thái type confusion để đọc/ghi tùy ý vào JavaScript heap.
Trang được host trên domain do kẻ tấn công kiểm soát hoặc inject vào trang web hợp lệ đã bị compromise (watering hole attack).
Thu hút Người dùng Truy cập (Social Engineering)
Kẻ tấn công dụ nạn nhân truy cập trang độc hại qua: phishing email với link, quảng cáo độc hại (malvertising), post trên mạng xã hội, hoặc redirect từ trang web đã bị compromise.
Người dùng với Chrome phiên bản trước 152.0.7977.82 mở trang, không cần bất kỳ tương tác nào khác ngoài việc load trang.
Kích hoạt Type Confusion trong V8 (Exploitation)
JavaScript payload thực thi trong Chrome renderer process.
Maglev JIT compiler biên dịch code và thực hiện lỗi: gán nhầm map
PACKED_SMI_ELEMENTScho array chứaPACKED_ELEMENTS.Code được tối ưu hóa dựa trên giả định sai, khi thực thi, tạo ra trạng thái heap corruption.
Khai thác Heap Read/Write (Memory Corruption)
Từ type confusion, kẻ tấn công có được primitive đọc/ghi tùy ý vào JavaScript heap của V8 process.
Sử dụng các kỹ thuật heap grooming và object faking để biến đổi primitive này thành khả năng kiểm soát instruction pointer (control flow hijack).
Thực thi Mã trong Sandbox (In-Sandbox Code Execution)
Kẻ tấn công thực thi shellcode bên trong Chrome's sandboxed renderer process.
Trong sandbox, có thể: đánh cắp cookie và session token của tất cả website đang mở, dump saved passwords từ Chrome password manager nếu truy cập được, đọc browser history, thực hiện request HTTP dưới danh tính người dùng, hoặc ghi file vào các vị trí renderer có quyền truy cập.
Thoát khỏi Sandbox (Sandbox Escape — nếu có exploit thứ hai)
Nếu kẻ tấn công có sandbox escape exploit (CVE riêng biệt), họ có thể thoát khỏi renderer process và thực thi mã trên host OS với quyền của người dùng đang chạy Chrome.
Full compromise: cài đặt malware, đánh cắp file, keylogger, hoặc ransomware trên host system.
Khuyến nghị & Khắc phục
Đội ngũ FPT Threat Intelligence khuyến nghị người dùng và quản trị viên cần cân nhắc thực hiện ngay các hành động sau:
Cập nhật Chrome ngay lập tức: cập nhật Google Chrome lên phiên bản 152.0.7977.82 hoặc cao hơn trên tất cả thiết bị, Windows, macOS, và Linux. Thực hiện qua: Menu Chrome (⋮) → Help → About Google Chrome → Chrome tự động kiểm tra và cài đặt. Khởi động lại Chrome để hoàn tất cập nhật.
Cập nhật tất cả Chromium-based browsers: CVE-2026-85046 ảnh hưởng đến V8 engine dùng chung trong toàn bộ hệ sinh thái Chromium. Các trình duyệt dựa trên Chromium, Microsoft Edge, Opera, Brave, Vivaldi, Samsung Internet, cần được cập nhật riêng vì mỗi vendor phát hành bản vá theo lịch riêng.
Triển khai bản vá tập trung (Enterprise): trong môi trường doanh nghiệp sử dụng Group Policy hoặc MDM (Intune, Jamf, v.v.), triển khai Chrome update policy để đảm bảo toàn bộ fleet được cập nhật trong 24-48 giờ. Không chờ người dùng tự cập nhật thủ công.
Giám sát dấu hiệu khai thác: mặc dù Chrome sandbox giới hạn phạm vi tấn công, vẫn cần giám sát:
Hoạt động Chrome process bất thường, memory usage tăng đột biến hoặc child process không nhận dạng được spawn từ renderer process.
Network request đáng ngờ từ Chrome tới các domain không liên quan đến site đang duyệt.
Session hijacking, đăng nhập bất thường vào tài khoản từ IP hoặc device không nhận dạng sau khi người dùng sử dụng Chrome.
Cân nhắc Site Isolation và bảo vệ bổ sung: bật Strict Site Isolation trong Chrome (chrome://flags/#enable-site-per-process) để tăng cường cô lập giữa các tab và hạn chế tác động của in-sandbox exploit. Enable Enhanced Protection trong Chrome Safe Browsing (Settings → Privacy and security → Security → Enhanced protection) để chặn các trang độc hại đã biết.
Ngữ cảnh quan trọng về six zero-days năm 2026: tốc độ phát hiện và khai thác Chrome zero-day trong năm 2026, trung bình hơn một lần mỗi 6 tuần, đặt ra yêu cầu rõ ràng: Chrome phải được coi là phần mềm cần patch ngay lập tức khi có zero-day advisory, không phải theo chu kỳ tháng thông thường. Thiết lập quy trình riêng cho browser zero-day patch deployment, tách biệt khỏi monthly patch cycle.
Tham khảo
BleepingComputer – Google warns of new Chrome zero-day flaw exploited in attacks
The Hacker News – Google Releases Chrome Update to Patch Actively Exploited V8 Zero-Day
Help Net Security – Google patches actively exploited Chrome zero-day (CVE-2026-85046)
SOCPrime – CVE-2026-85046: Actively Exploited Chrome V8 Zero-Day Enables Code Execution





