Microsoft khắc phục lỗi phần cứng Surface có thể khiến máy bị "gạch" chỉ bằng một gói tin

Phần cứng12 tháng 6, 2026·5 phút đọc

Microsoft đã âm thầm vá một lỗ hổng phần vững tồn tại lâu đời trên các thiết bị Surface, cho phép kẻ tấn công khiến máy bị hỏng hoàn toàn chỉ bằng một gói tin dữ liệu. Đáng ngạc nhiên, chính công cụ AI Copilot của Microsoft đã vô tình giúp phát hiện ra lỗ hổng này trong quá trình thực thi một tác vụ đơn giản.

Microsoft khắc phục lỗi phần cứng Surface có thể khiến máy bị "gạch" chỉ bằng một gói tin

Microsoft đã âm thầm vá một lỗ hổng phần vững nghiêm trọng trên các thiết bị Surface trong 90 ngày qua. Lỗi này cho phép kẻ tấn công khiến thiết bị bị "biến thành cục gạch" (bricked) - tức là hỏng hoàn toàn không thể phục hồi - chỉ bằng một gói tin duy nhất, tuy nhiên điều này chỉ xảy ra trên những máy đã tắt tính năng Secure Core và Secure Boot.

Điều thú vị là chính công cụ trí tuệ nhân tạo Copilot của Microsoft đã vô tình đóng vai trò là người phát hiện ra lỗ hổng này.

Copilot và sự cố "tự sát" của phần cứng

Theo Jack Darcy, một nhà nghiên cứu bảo mật đến từ Úc, phiên bản Microsoft Copilot của ông đã vô tình kích hoạt lỗi này khi được yêu cầu điều chỉnh độ sáng màn hình (backlight) trên một thiết bị Surface. Thay vì chỉ thay đổi cài đặt, Copilot đã tự tạo và thực thi một đoạn mã Python.

Đoạn script này đã gửi các lệnh ioctl thô (SSAM_CDEV_REQUEST = 0xC028A501) trực tiếp đến vi điều khiển SAM (Surface Aggregator Module) thông qua đường dẫn phần mềm của SAM. Kết quả là firmware của bộ điều khiển nhúng đã bị ghi đè, khiến chiếc laptop của nhà nghiên cứu trở nên vô dụng.

Darcy giải thích rằng: "Copilot đã tự chủ tạo và thực thi bốn kịch bản Python ngày càng mạnh mẽ trong quá trình dò tìm các giá trị điều khiển độ sáng. Nó đã gửi các lệnh trực tiếp đến vi điều khiển SAM mà không có bất kỳ cơ chế phòng vệ nào chống lại các giá trị ghi tùy ý."

Thiết kế phần cứng tồn tại lỗ hổng

SAM là bộ điều khiển nhúng được sử dụng trong các thiết bị Surface. Theo nguồn tin của The Register, việc triển khai bộ điều khiển này của Microsoft trên các thiết bị Surface không bao gồm bất kỳ sự bảo vệ nào chống lại việc ghi đè giá trị tùy ý.

Thông thường, các thiết bị kỹ thuật số yêu cầu người dùng phải giữ một nút hoặc kết nối dây jumper để cho phép quyền ghi truy cập tùy ý. Tuy nhiên, kiểm tra bảo mật này lại vắng mặt trên các thiết bị Surface, cho phép Copilot làm hỏng firmware trong trường hợp Secure Core và Secure Boot bị tắt.

Về cơ bản, quá trình dò tìm này đã kích hoạt một lệnh cập nhật từ SAM, ghi đè lên firmware UEFI và Secure Boot. Mặc dù thiết bị có thể vẫn hoạt động ngay lập tức vì SAM đang chạy trên RAM, nhưng sau khi khởi động lại, khi SAM cố gắng tải lại dữ liệu bị hỏng từ bộ nhớ không thay đổi (non-volatile storage), nó sẽ không thể khởi tạo được và hệ thống sẽ không thể vượt qua bài kiểm tra tự khởi động (Power-On Self-Test - POST).

Darcy nhận định rằng thiết kế SAM Bus trên Surface là rất kém. "Không có cách nào để xem giá trị hiện tại mà không quét toàn bộ bus, nhưng việc quét bus lại giết chết thiết bị."

Vấn đề nằm ở việc các ID lệnh (CID) - giống như API cho SAM - được xen kẽ nhau theo cách nguy hiểm giữa các lệnh đọc và ghi. Điều này khiến việc quét an toàn trở nên bất khả thi, vì bất kỳ lần liệt kê tài nguyên nào cũng có nguy cơ kích hoạt một lệnh ghi phá hủy.

Phản hồi và giải pháp từ Microsoft

Microsoft không coi lỗi này là một mối đe dọa thực tế đối với người dùng phổ thông. Một phát ngôn viên của công ty cho biết: "Không có kịch bản tấn công thực tế nào với vấn đề này. Để khai thác thành công, kẻ tấn công cần có quyền quản trị trên máy và đã tắt tính năng Secure Boot."

Tuy nhiên, đối với những người dùng chạy Linux, hoặc người dùng Windows đã tắt Secure Core/Secure Boot để chơi game, sử dụng trình điều khiển tùy chỉnh hoặc bật khởi động từ USB, họ vẫn có thể gặp rủi ro nếu hệ thống chưa được cập nhật.

Microsoft đã xác nhận lỗ hổng này và cam kết phát hành bản vá. Hầu hết các thiết bị bị ảnh hưởng đã được cập nhật thông qua Windows Update hoặc sẽ nhận được bản cập nhật trong vài tuần tới. Công ty cho biết vấn đề này không đủ điều kiện để được cấp mã CVE.

Trong tương lai, Microsoft đang có kế hoạch chuyển đổi stack phần mềm của Surface sang ngôn ngữ lập trình Rust để tăng cường bảo mật. David Abzarian, kiến trúc sư trưởng của Microsoft Surface, cho biết họ đang xây dựng lại firmware bộ điều khiển nhúng bằng Rust (dự án Secure EC) và viết lại UEFI DXE Core bằng Rust (dự án Project Patina).

Darcy nhận xét: "Thực tế là một thiết bị có thể bị phá hủy không thể sửa chữa từ không gian người dùng (userspace) quả là một quyết định thiết kế thú vị. Tôi đánh giá cao Microsoft vì dòng Surface đẹp mắt và đổi mới, nhưng một chút đổi mới thêm trong việc xác minh dữ liệu đầu vào ở mức độ firmware sẽ được đánh giá cao hơn nhiều."

Để bảo vệ thiết bị của mình, người dùng Surface nên đảm bảo rằng tính năng Secure Boot đang được bật và thực hiện cập nhật Windows mới nhất ngay khi có thể.

Chia sẻ:FacebookX
Nội dung tổng hợp bằng AI, mang tính tham khảo. Xem bài gốc ↗