Google Project Zero là một trong những đội ngũ bảo mật độc lập được đánh giá rất cao về mặt chuyên môn hiện nay. Những phát hiện của nhóm không chỉ có ý nghĩa quan trọng đối với chính sản phẩm của Google, mà còn có thể góp phần cảnh báo cho nhiều tổ chức, doanh nghiệp lớn trước nguy cơ về một thảm họa an ninh mạng. Có thể lấy ví dụ với trường hợp vừa xảy ra trên GPU Adreno của Qualcomm.

Cụ thể, đội ngũ Project Zero vừa công khai tiết lộ một lỗ hổng bảo mật tồn tại trong GPU Adreno tích hợp trên chip Snapdragon, với xếp hạng mức độ nghiêm trọng “cao”.

Đây là một lỗ hổng có liên quan đến cách GPU xử lý các thông tin chia sẻ chung. Về cơ bản, driver của GPU Adreno sẽ liên kết cấu trúc thiết bị riêng cho mỗi bộ mô tả lớp hỗ trợ đồ họa hạt nhân (kernel graphics support layer – KGSL), trong đó chứa các bảng trang (page table) cần thiết để chuyển đổi ngữ cảnh. Cấu trúc này được liên kết với ID quy trình (PID) của quy trình gọi nó, nhưng lại có thể được sử dụng lại bởi các bộ mô tả KGSL khác trong cùng quy trình, có khả năng cải thiện hiệu suất.

Khi quy trình gọi (quy trình mẹ) tạo ra một quy trình con, quy trình sau cũng sẽ kế thừa cấu trúc riêng của bộ mô tả KGSL ban đầu được tạo cho quy trình mẹ, thay vì tạo một quy trình mới. Về cơ bản, điều này cung cấp cho quy trình con – có thể là kẻ tấn công độc hại – quyền truy cập qua các mappings GPU tiếp theo, và xâm nhập vào thiết bị của người dùng.

Nhìn chung, để khai thác lỗ hổng này sẽ phải cần đến một cuộc tấn công vô cùng phức tạp, trong đó kẻ vận hành cũng phải có tay nghề cao. Các chuyên gia Project Zero cho biết trong tình huống thực tế, việc khai thác thành công lỗ hổng sẽ yêu cầu kẻ tấn công phải thực hiện “lặp lại PID và sau đó kích hoạt một quy trình đúng thời gian hoặc khởi động lại dịch vụ hệ thống thông qua một lỗi treo”.

Lỗ hổng được tiết lộ công khai

Toàn bộ thông tin về lỗ hổng cũng như các vấn đề liên quan đã được phía Google Project Zero báo cáo cho Qualcomm vào ngày 15 tháng 9. Đi kèm với đó là các đề xuất khắc phục và thời hạn tiêu chuẩn là 90 ngày (đến ngày 14 tháng 12) để phía Qualcomm tiến hành khắc phục sự cố, trước khi mọi thứ được công khai. Vào ngày 7 tháng 12 vừa qua, Qualcomm đã hoàn thành bản sửa lỗi và chia sẻ thông tin riêng với các OEM. Phía Qualcomm đồng thời cũng cam kết sẽ tiết lộ thông tin chi tiết hơn về lỗ hổng trong một bản tin công khai phát hành trong tháng 1 năm 2021.

Để xác thực, Google Project Zero đã phân tích bản sửa lỗi của Qualcomm, và phát hiện ra rằng trong chính bản vá lỗi này lại có thể tạo ra một vấn đề mới có thể dẫn đến các cuộc tấn công leo thang đặc quyền ở cấp độ hạt nhân. Phía Google tiếp tục thông báo phát hiện mới cho Qualcomm vào ngày 10 tháng 12. Qualcomm sau đó đã trả lời rằng họ đang điều tra thêm.

Tuy nhiên hôm nay đã đến hạn chót. Theo đúng quy định, Project Zero đã công bố công khai lỗ hổng trong driver GPU Adreno nêu trên. Không rõ tại sao Qualcomm không yêu cầu thêm thời gian gia hạn để sửa lỗi. Nếu có, chi tiết về lỗ hổng sẽ không được đề cập trong bản tin của Google.

Như hiện tại, lỗi bảo mật hiện đã được công khai, có nghĩa là Qualcomm hiện đang trong cuộc chạy đua với thời gian để khắc phục nó càng sớm càng tốt trước khi những kẻ tấn công tìm ra các cách thức khai thác triệt để nhất.