Google tiết lộ lỗ hổng 0-day trong hệ điều hành Windows

0
192
Google tiết lộ lỗ hổng 0-day trong hệ điều hành Windows

Nhóm nghiên cứu bảo mật Google Project Zero đã công bố lỗ hổng bảo mật 0-day không được vá triệt để trong API của phần mềm Print Spooler. Lỗ hổng có thể bị tin tặc lợi dụng để thực thi mã tùy ý. Print Spooler là phần mềm được tích hợp trong hệ điều hành Windows để lưu trữ tạm thời các lệnh in trong bộ nhớ của máy tính cho đến khi máy in sẵn sàng in chúng.

Chi tiết về lỗ hổng được công khai sau khi Microsoft không thể xử lý lỗ hổng trong vòng 90 ngày tính từ ngày 24/9 khi các nhà nghiên cứu báo cáo lỗ hổng.

​Lỗ hổng được đánh số CVE-2020-0986, liên quan đến việc khai thác lỗ hổng leo thang đặc quyền trong thành phần GDI Print/Print Spooler API (“splwow64.exe”). Lỗ hổng đã được một người dùng ẩn danh báo cáo tới Microsoft trong chương trình trao thường lỗ hổng của Trend Micro (ZDI) tháng 12 năm ngoái.

Sáu tháng sau đó, lỗ hổng này vẫn chưa được vá, ZDI phải cảnh báo về lỗ hổng vào ngày 19 tháng 5. Theo báo cáo, lỗ hổng này đã bị tin tặc khai thác trong thực tế trong chiến dịch có tên “Operation PowerFall” nhắm vào các công ty của Hàn Quốc.

“splwow64.exe” là tệp nhị phân trong lõi của hệ thống Windows cho phép các ứng dụng 32-bit kết nối với dịch vụ Print Spooler 64-bit trên hệ thống Windows 64-bit. Nó triển khai một máy Local Procedure Call (LPC) có thể bịcác quy trình khai thác để truy cập các chức năng in.

Việc khai thác thành công lỗ hổng này cho phép kẻ tấn công thao tác động vào bộ nhớ của quá trình “splwow64.exe” để thực thi mã tùy ý trong chế độ hạt nhân (kernel mode), sau đó cài đặt các chương trình độc hại; xem, thay đổi hoặc xóa dữ liệu; hoặc tạo tài khoản mới với đầy đủ quyền của người dùng. Tuy nhiên, để khai thác lỗ hổng này, kẻ tấn công phải đăng nhập được vào hệ thống Windows mục tiêu.

Trong tháng 6, Microsoft đã phát hành bản vá bảo mật cho lỗ hổng này, tuy nhiên các nhóm nghiên cứu bảo mật Google Project Zero cho biết lỗ hổng chưa được khắc phục hoàn toàn.

Nhà nghiên cứu Maddie Stone của Google Project Zero cho biết: “Lỗ hổng bảo mật vẫn tồn tại, chỉ là phải thay đổi phương pháp khai thác.”

“Vấn đề ban đầu là một tham chiếu con trỏ tùy ý cho phép kẻ tấn công điều khiển các con trỏ src và dest tới một memcpy”, theo Stone. Bản sửa lỗi của Microsoft chỉ đơn giản là thay đổi các con trỏ thành các offset mà vẫn cho phép kiểm soát các tham số args đối với memcpy”.

Ban đầu, Microsoft dự định vá lỗ hổng vào tháng 11, tuy nhiên có phát sinh một số vấn đề trong quá trình thử nghiệm, nên Microsoft quyết định dời ngày phát hành bản vá đến ngày 12 tháng 1 năm 2021. Lỗ hổng này được đánh số CVE-2020-17008.

Nhà nghiên cứu đã chia sẻ mã khai thác cho lỗ hổng CVE-2020-17008 dựa trên những phân tích và mã khai thác của lỗ hổng CVE-2020-0986 được Kaspersky công bố.

Việc phát hiện lỗ hổng 0-day dựa trên những bản vá lỗ hổng chưa hoàn chỉnh không phải là vấn đề gì mới. Tin tặc có thể dựa trên các lỗ hổng này để tạo ra các lỗ hổng mới và khai thác chúng như các công cụ tấn công.

Theo: thehackernews