
Vi xử lý M1 mới của Apple có một lỗ hổng tạo ra một kênh ẩn mà hai hoặc nhiều ứng dụng độc hại—đã được cài đặt—có thể sử dụng để truyền thông tin cho nhau, một nhà phát triển đã phát hiện.
Việc truyền thông một cách lén lút có thể diễn ra mà không cần sử dụng bộ nhớ máy tính, socket, tệp tin, hoặc bất kỳ tính năng hệ điều hành nào khác, nhà phát triển Hector Martin cho biết. Kênh này có thể kết nối các tiến trình chạy dưới dạng người dùng khác nhau và dưới các cấp độ đặc quyền khác nhau. Những đặc tính này cho phép các ứng dụng trao đổi dữ liệu một cách không thể phát hiện được—ít nhất là không được phát hiện mà không cần thiết bị chuyên dụng.
Martin cho biết lỗ hổng này chủ yếu vô hại, vì nó không thể được sử dụng để lây nhiễm máy Mac, và nó không thể được sử dụng bởi exploits hoặc phần mềm độc hại để đánh cắp hoặc can thiệp vào dữ liệu trên máy tính. Nó chỉ có thể bị lạm dụng bởi hai hoặc nhiều ứng dụng độc hại đã được cài đặt trên máy Mac thông qua các phương tiện không liên quan đến lỗ hổng M1.
Tuy nhiên, lỗi này, mà Martin gọi là M1racles, đáp ứng định nghĩa kỹ thuật của một lỗ hổng. Do đó, nó đi kèm với danh hiệu lỗ hổng riêng của nó: CVE-2021-30747.
"Nó vi phạm mô hình bảo mật của hệ điều hành," Martin giải thích trong một bài đăng được đăng vào thứ Tư. "Bạn không được phép gửi dữ liệu từ một tiến trình này sang tiến trình khác một cách bí mật. Và ngay cả khi không gây hại trong trường hợp này, bạn cũng không được phép ghi vào các thanh ghi hệ thống CPU ngẫu nhiên từ không gian người dùng."
Các nhà nghiên cứu khác có chuyên môn về CPU và bảo mật dựa trên silic đã đồng ý với đánh giá đó.
"Lỗi phát hiện không thể được sử dụng để suy luận thông tin về bất kỳ ứng dụng nào trên hệ thống," cho biết Michael Schwartz, một trong những nhà nghiên cứu đã giúp phát hiện ra các lỗ hổng Meltdown và Spectre nghiêm trọng hơn trên CPU Intel, AMD, và ARM. "Nó chỉ có thể được sử dụng như một kênh truyền thông giữa hai ứng dụng xâm nhập (độc hại)."
Anh tiếp tục giải thích:
Lỗ hổng này tương tự như một "hòm thư" ẩn danh; nó cho phép hai ứng dụng gửi tin nhắn cho nhau. Điều này gần như không thể nhìn thấy đối với các ứng dụng khác, và không có cách hiệu quả để ngăn chặn nó. Tuy nhiên, vì không có ứng dụng nào khác đang sử dụng "hòm thư" này, không có dữ liệu hoặc siêu dữ liệu của các ứng dụng khác bị rò rỉ. Vì vậy, hạn chế của nó chỉ có thể sử dụng như một kênh truyền thông giữa hai ứng dụng đang chạy trên macOS. Tuy nhiên, đã có quá nhiều cách cho các ứng dụng giao tiếp (tệp tin, ống, socket, ...) nên thêm một kênh không thực sự ảnh hưởng đến bảo mật. Tuy nhiên, đây là một lỗi có thể bị lạm dụng như một kênh truyền thông không cố ý, nên tôi nghĩ rằng gọi nó là một lỗ hổng là công bằng."
Một kênh truyền thông ẩn có thể có hậu quả lớn hơn trên iPhone, Martin nói, vì nó có thể được sử dụng để bypass sandboxing được tích hợp trong các ứng dụng iOS. Trong điều kiện bình thường, một ứng dụng bàn phím độc hại không có cách để rò rỉ phím bấm vì các ứng dụng như vậy không có quyền truy cập vào internet. Kênh truyền thông ẩn có thể vượt qua bảo vệ này bằng cách chuyển các phím bấm đến một ứng dụng độc hại khác, sau đó sẽ gửi nó qua internet.
Thậm chí khi đó, khả năng hai ứng dụng được thông qua quá trình đánh giá của Apple và được cài đặt trên thiết bị mục tiêu là rất thấp.
Lỗ hổng xuất phát từ một thanh ghi hệ thống mỗi cụm trong CPU ARM mà EL0 có thể truy cập, một chế độ dành cho các ứng dụng người dùng và do đó có đặc quyền hệ thống hạn chế. Thanh ghi chứa hai bit có thể đọc hoặc ghi. Điều này tạo ra kênh truyền thông ẩn, vì thanh ghi có thể được truy cập đồng thời bởi tất cả các nhân trong cụm.
Martin viết:
Một cặp quá trình hợp tác độc hại có thể xây dựng một kênh mạnh mẽ từ trạng thái hai bit này, bằng cách sử dụng giao thức đồng hồ và dữ liệu (ví dụ, một bên ghi 1x để gửi dữ liệu, bên kia ghi 00 để yêu cầu bit tiếp theo). Điều này cho phép các quá trình trao đổi một lượng dữ liệu tùy ý, chỉ bị ràng buộc bởi chi phí CPU. Các API tương thích nhân CPU có thể được sử dụng để đảm bảo cả hai quá trình được lên lịch trình trên cùng một cụm nhân CPU. Một bằng chứng thực nghiệm (PoC) thể hiện cách tiếp cận này để đạt được truyền dữ liệu ổn định, tốc độ cao có sẵn tại đây. Cách tiếp cận này, mà không cần nhiều tối ưu hóa, có thể đạt được tốc độ truyền thông trên 1MB/s (ít hơn với dữ liệu trùng lặp).
Martin đã cung cấp một video demo tại đây.
Không rõ tại sao thanh ghi được tạo ra, nhưng Martin nghi ngờ rằng quyền truy cập của nó đến EL0 là một lỗi chứ không phải ý định. Không có cách nào để vá hoặc sửa lỗi trong các vi mạch hiện tại. Người dùng quan tâm đến lỗ hổng không có cách khác nào ngoài việc chạy toàn bộ hệ điều hành như một máy ảo được cấu hình đúng cách. Bởi vì VM sẽ vô hiệu hóa quyền truy cập của khách hàng đến thanh ghi này, kênh truyền thông ẩn sẽ bị khóa. Thật không may, tùy chọn này có một hậu quả về hiệu suất nghiêm trọng.
Martin tình cờ phát hiện lỗi khi sử dụng công cụ có tên là m1n1 trong vai trò là người quản lý chủ chốt cho Asahi Linux, một dự án nhằm đưa Linux lên các máy Mac dựa trên M1. Ban đầu, anh cho rằng hành vi đó là một tính năng độc quyền và vì vậy, anh đã thảo luận một cách công khai về nó trong các diễn đàn phát triển. Sau này, anh mới biết rằng đó là một lỗi mà ngay cả các nhà phát triển của Apple cũng không biết đến.
Một lần nữa, đa số lớn người dùng Mac—có lẽ cao hơn 99 phần trăm—không có lý do để lo lắng. Những người dùng có hai hoặc nhiều ứng dụng độc hại đã được cài đặt trên máy của họ có nhiều lo lắng lớn hơn nhiều. Lỗ hổng này đáng chú ý hơn vì nó cho thấy rằng các lỗi chip, được gọi chung là lỗi kỹ thuật, tồn tại trong gần như tất cả các CPU, thậm chí cả những CPU mới có lợi ích từ việc học từ những sai lầm trước đó trong các kiến trúc khác.
Apple không phản hồi yêu cầu để nhận xét, vì vậy vẫn chưa rõ liệu công ty có kế hoạch vá hoặc giảm nhẹ lỗi này trong các thế hệ CPU trong tương lai hay không. Đối với những người quan tâm đến chi tiết kỹ thuật hơn, trang web của Martin cung cấp thông tin sâu hơn.
Câu chuyện này ban đầu được đăng trên Ars Technica.
Các bài viết tuyệt vời khác từ Mytour
- 📩 Nhận thông tin mới nhất về công nghệ, khoa học và nhiều hơn nữa: Nhận bản tin của chúng tôi!
- Toàn bộ câu chuyện về vụ hack RSA gây sốc cuối cùng đã được kể
- COVID đã buộc Mỹ sản xuất thêm nhiều hàng hóa. Điều gì sẽ xảy ra sau đây?
- Các thiết bị, ứng dụng an toàn cá nhân tốt nhất và chuông báo động
- Để quan sát muon là trải nghiệm của sự bất tử
- Làm thế nào để người ta thực sự bắt bóng chày?
- 👁️ Khám phá trí tuệ nhân tạo như chưa bao giờ với cơ sở dữ liệu mới của chúng tôi
- 🎮 Mytour Games: Nhận thông tin mới nhất, đánh giá và nhiều hơn nữa
- 💻 Nâng cấp trò chơi làm việc của bạn với đội ngũ Gear yêu thích laptop, bàn phím, phương thức gõ tắt và tai nghe chống ồn
