Cách khắc phục lỗ hổng bảo mật SeriousSAM trên Windows 10 và Windows 11

11:22 | 03/08/2021

Ngay sau khi lỗ hổng SeriousSAM (còn được gọi là HiveNightmare) với mã định danh CVE-2021-36934 được công bố, Microsoft đã đưa ra giải pháp khắc phục tạm thời cho lỗ hổng zero-day này trên Windows 10 và Windows 11. Giải pháp khắc phục này cũng đã được đăng trên một số tạp chí công nghệ lớn như Bleepingcomputer hay Rapid7,… Bài viết sẽ giới thiệu tới độc giả cách khắc phục tạm thời theo hướng dẫn của Microsoft.

Lỗ hổng SeriousSAM được đánh giá là nghiêm trọng, tồn tại trong cấu hình mặc định của Windows 10 và Windows 11, do hệ thống cấp quyền “read” cho tất cả người dùng cục bộ. Khi có quyền truy cập, kẻ tấn công có thể trích xuất dữ liệu từ nhiều file hệ thống quan trọng, trong đó có cơ sở dữ liệu quản lý tài khoản bảo mật (Security Accounts Manager – SAM). Qua đó, kẻ tấn công có thể lấy được mật khẩu dưới dạng các mã băm NTLM (New Technology LAN Manager) của các tài khoản và leo thang đặc quyền để kiểm soát hệ thống thông qua tấn công pass-the-hash.

Hiện nay, Windows 10 rất phổ biến, đặc biệt là ở Việt Nam bởi các tính năng nổi bật và thân thiện với người dùng. Microsoft ước tính có hơn 1 tỷ thiết bị sử dụng hệ điều hành này. Trong khi đó, dù mới chỉ là bản phát hành thử nghiệm, Windows 11 Insider cũng đã có rất nhiều lượt tải về và dùng thử. Do đó, khi chưa có bản vá đầy đủ thì giải pháp khắc phục tạm thời lỗ hổng SeriousSAM là rất cần thiết để giảm thiểu khả năng bị tấn công.

Giải pháp khắc phục tạm thời lỗ hổng SeriousSAM

Người dùng nên hạn chế quyền truy cập vào các tệp trong thư mục windows\system32\config (bao gồm các tệp khác nhau như SAM, SYSTEM, SECURITY, DEFAULT và SOFTWARE), đồng thời xóa các bản sao VSS (Volume Shadow Copy Service) cũng như các điểm khôi phục hệ thống (System Restore) để giảm thiểu ảnh hưởng từ lỗ hổng.

- Trước tiên, cần kiểm tra máy tính (Windows 10 hoặc Windows 11) có bị ảnh hưởng bởi lỗ hổng SeriousSAM hay không.

  • Mở cửa sổ lệnh Command Prompt bằng tài khoản thông thường.
  • Chạy dòng lệnh: icacls %windir%\system32\config\sam
  • Nếu bị ảnh hưởng bởi lỗ hổng, sẽ hiển thị thông báo: BUILTIN\Users:(I)(RX).

- Hạn chế quyền truy cập, bằng cách chỉ cho phép tài khoản quản trị (Administrator) mới có quyền truy cập các tệp trong thư mục windows\system32\config thông qua lệnh sau với quyền của  Administrator trên cửa sổ Command Prompt hoặc PowerShell.

•    Từ cửa sổ Command Prompt, sử dụng câu lệnh: icacls %windir%\system32\config\*.* /inheritance:e

•    Với PowerShell, sử dụng câu lệnh: icacls $env:windir\system32\config\*.* /inheritance:e

- Xóa các bản sao VSS: Thông thường, khi người dùng truy cập vào các tệp Registry sẽ nhận được thông báo lỗi vì tệp đang mở và bị khóa bởi chương trình khác. Tuy nhiên bản thân các tệp này, bao gồm cả SAM thường được sao lưu bởi VSS, nên kẻ tấn công có thể truy cập tệp thông qua VSS, do vậy cần phải xóa bản sao VSS. (Lưu ý rằng điều này có thể gây ảnh hưởng đến hoạt động khôi phục hệ thống và tệp, chẳng hạn như khôi phục dữ liệu bằng các ứng dụng sao lưu của bên thứ 3).

•    Mở cửa sổ lệnh Command Prompt hoặc Windows PowerShell dưới quyền Administrator, xem các bản sao VSS với câu lệnh: vssadmin list shadows.

•    Nếu có thì xóa chúng bằng câu lệnh: vssadmin delete shadows /for=c: /Quiet.

•    Kiểm tra lại với câu lệnh vssadmin list shadows để đảm bảo đã xoá hết các bản sao VSS, qua đó kẻ tấn công sẽ không có thông tin đường dẫn cụ thể để truy cập vào được các tệp Registry.

- Tiếp đến, xóa tất cả các điểm khôi phục hệ thống (System Restore) đang tồn tại.
•    Mở Start Menu, vào khung Search, sau đó nhập từ khóa và chọn “Create a restore point”.

•    Cửa sổ System Properties sẽ hiện lên, trong tab System Protection, chọn ổ đĩa mà người dùng muốn xóa điểm khôi phục hệ thống, sau đó vào mục Configure.

•    Ở cửa số tiếp theo, chọn Delete. Một thông báo hiện ra, chọn Continue để xác nhận xóa tất cả các điểm khôi phục hệ thống.

•    Khi có hiển thị thông báo đã xóa thành công, mục Current Usage sẽ là 0 bytes.

- Sau khi bị loại bỏ và hạn chế quyền truy cập vào thư mục %windir%\system32\config, người dùng có thể tạo một điểm khôi phục hệ thống khác (nếu cần thiết).

•    Thực hiện theo hướng dẫn ở mục trên để mở System Properties. Chọn ổ đĩa cần tạo điểm khôi phục hệ thống (thông thường là ổ C). Dưới mục Protections Settings, kiểm tra xem cài đặt tùy chọn đang ở trạng thái On hay Off, sau đó chọn Configure.

•    Trong cửa sổ mới, tại phần Restore Setting, tích chọn Turn on system protection và phần Disk Space Usage, chỉnh không gian lưu trữ tối đa tại mục Max Usage, sau đó chọn Apply.

•    Trở lại màn hình System Protection, chọn Create để tạo điểm khôi phục, cửa sổ Create a restore point hiện ra, người dùng sẽ nhập tên điểm khôi phục và chọn Create.

•    Như vậy điểm khôi phục đã được tạo xong, chọn Close để kết thúc.