NSA hướng dẫn phòng chống mã độc BlackLotus nhắm tới hệ thống Windows
Giới thiệu về BlackLotus
BlackLotus là mã độc được Kaspersky cho vào diện theo dõi chặt chẽ vào tháng 10/2022 và thu hút chú ý của truyền thông. Tương tự với mã độc BootHole công bố trong lỗ hổng CVE-2020-10713, BlackLotus được công bố trong CVE-2022-21894 là một dạng mã độc tiên tiến có khả năng vượt qua sự bảo vệ của trình khởi động an toàn (Windows Secure Boot) của hệ điều hành (HĐH) Windows với cơ chế “Baton Drop” để hướng tới việc kiểm soát thiết bị ngay từ khi khởi động.
Microsoft đã phát hành bản vá cho các HĐH Windows bị ảnh hưởng để sửa quy trình hoạt động của trình khởi động. Tuy nhiên, kể cả khi bản vá mới này được ban hành thì cơ sở dữ liệu danh sách phần mềm bị cấm khi khởi động (Secure Boot Deny List Database - DBX) của Windows vẫn tin tưởng vào các trình khởi động cũ chưa được vá lỗ hổng. Vì vậy, quản trị viên có thể coi rằng lỗ hổng trong trình khởi động này vẫn chưa được khắc phục hoàn toàn do các trình khởi động tồn tại “Baton Drop” vẫn được tin tưởng sử dụng.
BlackLotus giúp cho kẻ tấn công có thể kiểm soát hoàn toàn được hoạt động của trình khởi động trong HĐH máy mục tiêu, từ đó can thiệp được vào các cơ chế bảo mật của HĐH và tiến tới việc leo thang đặc quyền.
Điều đáng chú ý BlackLotus không phải là mã độc trong firmware mà là mã độc phần mềm chạy đầu tiên trong trình khởi động. Điều này giúp BlackLotus có khả năng trốn tránh các giải pháp tìm quét và duy trì lâu dài trên máy mục tiêu. Vì vậy, có một số tổ chức đã gọi mã độc này là: “unstoppable - không thể dừng lại” hay “unpatchable - không thể vá”.
Khuyến nghị của NSA
NSA đưa ra 4 khuyến nghị đối với quản trị viên và người dùng HĐH Windows để có thể chủ động phòng tránh mã độc BlackLotus. Cụ thể là:
- Cập nhật bản vá mới nhất của Microsoft: Bản vá mới nhất tháng 5/2023 chứa các tùy chọn phần mềm được giảm thiểu cho trình khởi động và nhân HĐH để chống lại BlackLotus.
- Cấu hình cài đặt các phần mềm phòng thủ cho phép kiểm tra, ngăn chặn các thay đổi đối với phân vùng khởi động EFI (Extensible Firmware Interface): Hoạt động BlackLotus có mục tiêu là thay thế một trình khởi động EFI cũ đã vô hiệu hóa quá trình kiểm tra toàn vẹn bộ nhớ, vô hiệu hóa BitLocker tới phân vùng ổ đĩa khởi động và sau đó khởi động lại thiết bị để chạy trình khởi động này. Vì vậy việc cài đặt phần mềm phòng thủ có khả năng kiểm tra và ngăn cấm sự thay đổi không hợp lệ của trình khởi động EFI giúp ngăn chặn được BlackLotus. Các phần mềm này có thể là EDR (Endpoint Detection and Response), bộ phần mềm bảo mật cho thiết bị Endpoint…
- Giám sát tính toàn vẹn hoặc bất kỳ sự thay đổi bất thường nào của phân vùng khởi động EFI: Các sản phẩm bảo mật cho thiết bị EndPoint và giám sát firmware cung cấp tính năng kiểm tra tính toàn vẹn của phân vùng khởi động EFI. Các công cụ này giúp tìm ra các thay đổi bất thường trong bootmgfw.efi, bootmgr.efi hay các dữ liệu thêm vào khác thường trong mã nhị phân EFI (ví dụ shimx64.efi hoặc grubx64.efi). Nếu có các thay đổi bất thường trong phân vùng EFI thì cần cài đặt luật để ngăn cấm hoặc hạn chế việc khởi động của thiết bị.
- Tùy chỉnh trình UEFI Secure Boot để chặn các trình khởi động phiên bản cũ của Windows: Tiến hành cập nhật cơ sở dữ liệu DBX với việc thêm dữ liệu là các mã băm của các trình khởi động cũ có chứa lỗ hổng và xóa bỏ chứng thư số Microsoft Windows Production CA 2011 trên các thiết bị. Khuyến nghị này chỉ dành cho chuyên gia an ninh mạng và quản trị viên có kinh nghiệm.
Đinh Văn Hùng
(Học viện Kỹ thuật mật mã)