Tin tức iOS

Developer · Bảo mật

practice: Kho nghiên cứu hàng loạt lỗ hổng XNU từ iOS cũ đến iOS 26

Đăng lúc 22:21 · 30/08/20262 lượt xem

practice: Kho nghiên cứu hàng loạt lỗ hổng XNU từ iOS cũ đến iOS 26
Mục lục bài viết10 nội dung

Một dự án khá thú vị dành cho những người quan tâm đến bảo mật iOS vừa tiếp tục nhận được sự chú ý trên GitHub. Có tên xnu_1day_practice, repository do nhà nghiên cứu Hyungyu Seo (wh1te4ever) phát triển tập trung vào việc phân tích, tái hiện và thực hành khai thác các lỗ hổng bảo mật đã được biết đến trong XNU – kernel được Apple sử dụng trên iOS, iPadOS và macOS.

Khác với những công cụ như Dopamine hay palera1n, xnu_1day_practice không phải jailbreak và cũng không phải ứng dụng dành cho người dùng thông thường. Đây chủ yếu là một kho nghiên cứu bảo mật, chứa mã nguồn exploit, Proof of Concept (PoC), project thử nghiệm và các bài phân tích kỹ thuật về nhiều lỗ hổng kernel khác nhau.

1.xnu_1day_practice là gì?

Tên của dự án đã phần nào mô tả mục đích của nó: thực hành với những lỗ hổng XNU 1-day.

Trong lĩnh vực bảo mật, “1-day” thường chỉ các lỗ hổng đã được công khai hoặc đã có bản vá, nhờ đó các nhà nghiên cứu có thể phân tích lại cách lỗi xảy ra, nghiên cứu bản vá của Apple và thử xây dựng exploit trong môi trường kiểm soát.

Repository hiện bao gồm hàng loạt thư mục riêng biệt tương ứng với từng CVE, kèm theo mã nguồn và trong nhiều trường hợp là những bài phân tích rất chi tiết. README chính của dự án cũng cảnh báo rõ rằng các exploit đi kèm không được sử dụng cho mục đích độc hại.

2.Những lỗ hổng đang có trong dự án

Tính đến thời điểm hiện tại, xnu_1day_practice chứa các nghiên cứu liên quan tới:

  • CVE-2019-6225
  • CVE-2019-8605
  • CVE-2020-3836
  • CVE-2020-3837
  • CVE-2021-30883
  • CVE-2021-30937
  • CVE-2021-30955
  • CVE-2022-22640
  • CVE-2022-32821
  • CVE-2023-40423
  • CVE-2025-24153
  • CVE-2025-24257
  • CVE-2025-43510
  • CVE-2025-43520

Ngoài những lỗ hổng đã có mã CVE chính thức, repository còn xuất hiện hai nghiên cứu đáng chú ý liên quan tới Gruber và Pendulum, được đặt trong các thư mục NoCVE-CorunaPEGruber và NoCVE-CorunaPEPendulum.

Điều này khiến xnu_1day_practice giống một thư viện nghiên cứu XNU hơn là một exploit đơn lẻ.

3.Hỗ trợ những phiên bản iOS nào?

Không có một danh sách “iOS được hỗ trợ” chung cho toàn bộ xnu_1day_practice.

Mỗi thư mục nghiên cứu nhắm tới một lỗ hổng, thiết bị và phiên bản hệ điều hành khác nhau. Vì repository trải dài từ các CVE năm 2019 cho đến những nghiên cứu năm 2025–2026, môi trường thử nghiệm cũng trải rộng qua nhiều thế hệ iOS.

Ví dụ, nghiên cứu CVE-2022-32821 cho biết lỗi có thể được kích hoạt từ iOS/iPadOS 15.0. Tác giả thử nghiệm trên iPad thế hệ 7 sử dụng chip A10 và phát triển exploit hoạt động dựa trên những nghiên cứu đã được công bố trước đó.

Trong khi đó, nghiên cứu mới về Pendulum sử dụng iPhone 8 chạy iOS 14.4.2 làm thiết bị phân tích.

Vì vậy, đây không phải trường hợp “cài tool rồi chọn phiên bản iOS”. Người dùng cần lựa chọn chính xác thư mục nghiên cứu tương ứng với CVE, thiết bị và kernel muốn thử nghiệm.

4.Không chỉ có PoC, nhiều exploit đã đạt kernel read/write

Một điểm khiến repository này đáng chú ý là tác giả không chỉ lưu các đoạn mã đơn giản để làm thiết bị crash.

Ở một số nghiên cứu, quá trình khai thác được triển khai sâu hơn nhằm đạt được những primitive quan trọng như:

  • Kernel Read/Write
  • Đọc địa chỉ Kernel Base
  • Xác định Kernel Slide
  • Làm việc với Mach Port
  • Heap spraying
  • Kernel object manipulation
  • Phân tích memory corruption
  • Nghiên cứu cơ chế bảo vệ kernel
  • Phân tích bản vá của Apple

Chẳng hạn với CVE-2022-32821, kết quả thử nghiệm được tác giả công bố cho thấy exploit có thể lấy được tfp0, xác định gKernelBase, gKernelSlide và duy trì khả năng kernel read/write sau quá trình khai thác.

Đây cũng là những primitive thường đóng vai trò quan trọng trong quá trình nghiên cứu jailbreak, mặc dù có được kernel read/write không đồng nghĩa với việc đã có một jailbreak hoàn chỉnh.

5.CVE-2025-43520 – nghiên cứu DarkSword

Một trong những mục đáng chú ý nhất hiện nay là CVE-2025-43520.

Tác giả dành một lượng lớn nội dung để phân tích cơ chế của lỗ hổng, dựa trên nghiên cứu ban đầu của Muirey. Vấn đề liên quan tới quá trình xử lý UPL và trạng thái vùng nhớ vật lý liên tục trong XNU, tạo ra một điều kiện TOCTOU (Time-of-check to time-of-use).

Theo phần phân tích trong repository, việc thay đổi mapping của vùng bộ nhớ vào đúng thời điểm có thể dẫn tới khả năng đọc hoặc ghi vượt ngoài giới hạn vào bộ nhớ vật lý.

Đáng chú ý hơn, code của nghiên cứu này còn có phần chuẩn bị offset nhằm phục vụ việc thử nghiệm trên nhiều phiên bản iOS từ iOS 17 tới iOS 26, cho thấy tác giả đang tiếp tục mở rộng nghiên cứu sang các hệ điều hành Apple mới.

6.Pendulum – nghiên cứu lỗ hổng từng xuất hiện trong Coruna

Repository gần đây còn bổ sung một nghiên cứu đặc biệt về Pendulum, một lỗ hổng kernel privilege escalation không có mã CVE công khai trong bộ exploit được nghiên cứu liên quan tới chiến dịch Coruna.

Theo tác giả, Coruna từng sử dụng tổng cộng nhiều lỗ hổng privilege escalation, trong đó có hai lỗi kernel được gọi là Pendulum và Gruber nhưng không được công bố dưới dạng CVE thông thường.

Với Pendulum, tác giả sử dụng iPhone 8 chạy iOS 14.4.2 đã jailbreak bằng Taurine để trích xuất và phân tích thành phần chứa exploit trước khi nghiên cứu nguyên nhân gốc của lỗ hổng.

Điều này cho thấy xnu_1day_practice không chỉ tập trung vào những CVE cũ, mà đang dần trở thành nơi lưu lại nhiều nghiên cứu chuyên sâu hơn về các exploit XNU từng được sử dụng ngoài thực tế.

7.Dự án dành cho ai?

xnu_1day_practice phù hợp hơn với:

  • Nhà nghiên cứu bảo mật iOS/macOS
  • Developer jailbreak
  • Người đang học XNU
  • Người muốn tìm hiểu kernel exploitation
  • Người nghiên cứu Mach và IOKit
  • Người muốn phân tích các exploit iOS cũ
  • Người nghiên cứu cách Apple vá các lỗ hổng kernel

Ngược lại, nếu mục đích chỉ đơn giản là jailbreak iPhone, repository này gần như không dành cho bạn.

Phần lớn nội dung yêu cầu kiến thức khá sâu về C/Objective-C, Mach, XNU, quản lý bộ nhớ kernel và debugging. Một số thử nghiệm còn phụ thuộc vào đúng thiết bị, đúng phiên bản hệ điều hành hoặc môi trường kernel nghiên cứu.

8.Có thể dùng xnu_1day_practice để tạo jailbreak không?

Về mặt nghiên cứu, có thể sử dụng một số kỹ thuật trong repository làm nền tảng cho quá trình phát triển jailbreak, nhưng xnu_1day_practice bản thân nó không phải jailbreak.

Một jailbreak hiện đại thường cần nhiều thành phần hơn một kernel exploit đơn thuần, chẳng hạn chuỗi khai thác phù hợp, bypass các cơ chế bảo vệ, bootstrap, môi trường chạy tweak và hàng loạt thành phần hậu khai thác khác.

Tuy nhiên, đối với developer, những nghiên cứu như xnu_1day_practice rất có giá trị bởi nó trình bày khá rõ quá trình biến một lỗi kernel từ giai đoạn phân tích thành exploit có khả năng thực hiện những thao tác như kernel read/write.

9.Kho tài liệu XNU rất đáng tham khảo

Tại thời điểm kiểm tra, repository đã có hơn 220 commit và hơn 100 lượt đánh dấu sao trên GitHub, đồng thời vẫn tiếp tục xuất hiện thêm các nghiên cứu mới.

Thay vì chỉ đưa ra một exploit đã hoàn thiện, wh1te4ever còn ghi lại quá trình nghiên cứu, các thử nghiệm thất bại, panic log, cấu trúc kernel, phương pháp heap manipulation và cách tác giả tiếp cận từng lỗ hổng.

Với người đang muốn bước sâu hơn từ jailbreak thông thường sang nghiên cứu XNU và kernel exploitation, xnu_1day_practice là một repository rất đáng để tham khảo.

Lưu ý: Các exploit kernel có thể khiến thiết bị kernel panic, treo hoặc mất dữ liệu nếu thử nghiệm sai môi trường. Dự án cũng được chính tác giả công bố với mục đích nghiên cứu và cảnh báo không sử dụng mã nguồn cho mục đích độc hại.

10.Mã nguồn và tải xuống

GitHub – wh1te4ever/xnu_1day_practice

Dự án được phát hành công khai trên GitHub và có thể tải toàn bộ source code để phục vụ mục đích nghiên cứu, học tập và thử nghiệm trong môi trường phù hợp.

CỘNG ĐỒNG

Thảo luận bài viết

Chưa có bình luận. Hãy là người đầu tiên chia sẻ.