Các tin tặc hiện có khả năng giảm cấp độ các thành phần kernel của Windows nhằm mục đích bỏ qua những tính năng bảo mật quan trọng như Enforcement chữ ký Driver. Thông qua kỹ thuật này, họ có thể triển khai rootkit trên những hệ thống đã được cập nhật đầy đủ. Điều này đồng nghĩa với việc nguy cơ bảo mật cho máy tính Windows đang tiềm ẩn những mối nguy hiểm lớn mà rất ít người dùng có thể nhận ra.
Cụ thể, các cuộc tấn công này có thể xảy ra bằng cách kiểm soát quy trình cập nhật của Windows. Các tin tặc có thể giới thiệu các thành phần phần mềm cũ vốn chứa nhiều lỗ hổng mà hệ điều hành đã từng khắc phục, vào một máy tính đã được cập nhật mà không làm thay đổi trạng thái cập nhật của hệ điều hành. Điều này tạo ra một khoảng trống bảo mật nghiêm trọng trong các hệ thống hiện đại nơi mà người dùng tin tưởng rằng mình đã được bảo vệ tốt nhất.
Giảm cấp Windows
Nhà nghiên cứu bảo mật Alon Leviev từ SafeBreach đã báo cáo về sự cố nghiêm trọng này và đã giúp phát hiện lỗ hổng cho phép chiếm quyền điều khiển cập nhật. Dù Microsoft đã bác bỏ những lo ngại này bằng cách khẳng định rằng vấn đề không vượt qua một ranh giới bảo mật được xác định, nhưng thực tế vẫn cho thấy rằng chỉ cần một kẻ tấn công có khả năng đạt được thực thi mã kernel với quyền quản trị là đã có thể khiến cho việc xâm nhập trở nên khả thi.
Tại các hội nghị bảo mật BlackHat và DEFCON năm nay, Leviev đã chứng minh rằng cuộc tấn công này khả thi và nghiêm trọng hơn, chưa được khắc phục hoàn toàn, điều này mở ra cánh cửa cho các cuộc tấn công giảm cấp hoặc tái lùi không mong đợi. Với một công cụ có tên gọi là Windows Downdate, Leviev cho phép người dùng tạo ra các cuộc giảm cấp tùy chỉnh nhằm phơi bày một hệ thống mục tiêu vốn tưởng như đã được cập nhật đầy đủ nhưng thực ra là dễ bị tổn thương bởi các lỗ hổng đã được phát hiện trước đó thông qua các thành phần cũ như DLL, driver và kernel NT.
“Tôi đã có thể khiến một máy tính Windows đã được vá hoàn toàn trở nên nhạy cảm với các lỗ hổng trong quá khứ, làm cho các lỗ hổng đã được sửa chữa trở thành chưa được sửa và khiến thuật ngữ ‘hoàn toàn đã được vá’ thực sự trở nên vô nghĩa trên bất kỳ máy tính Windows nào trên thế giới” – Leviev cho biết.
Mặc dù bảo mật kernel đã được cải thiện rõ rệt trong những năm gần đây, Leviev vẫn có thể bỏ qua tính năng Enforcement chữ ký Driver (DSE), cho thấy rằng kẻ tấn công có thể tải lên các driver kernel không có chữ ký, từ đó triển khai mã độc rootkit. Điều này không chỉ vô hiệu hóa các biện pháp bảo mật mà còn ẩn đi hoạt động của kẻ tấn công có thể dẫn đến việc phát hiện sự xâm nhập vào hệ thống.
“Trong những năm gần đây, đã có những cải tiến quan trọng đối với bảo mật của kernel. Thế nhưng, ngay cả khi giả định rằng nó có thể bị xâm phạm bằng quyền quản trị, vẫn luôn có những kẽ hở khiến mọi thứ trở nên đơn giản hơn cho các kẻ tấn công” – Leviev nhấn mạnh.
Leviev đã gán cho phương pháp khai thác của mình tên gọi “ItsNotASecurityBoundary” DSE bypass, bởi vì nó dựa vào những lỗ hổng giả mạo tệp không thể thay đổi. Đây là một lớp lỗ hổng mới trong Windows, được Gabriel Landau từ Elastic mô tả như một cách để đạt được thực thi mã tùy ý với quyền kernel. Sau khi Landau báo cáo về lỗ hổng này, Microsoft đã nhanh chóng vá lỗ hổng “ItsNotASecurityBoundary” nhằm ngăn chặn sự tăng quyền từ quản trị viên đến kernel. Tuy nhiên, vá lỗ hổng này vẫn không hoàn toàn bảo vệ chống lại các cuộc tấn công giảm cấp mà Leviev đã chỉ ra.
Nhắm đến kernel
Vào ngày hôm nay, nghiên cứu mới do Leviev công bố cho thấy cách mà một kẻ tấn công có thể khai thác quy trình cập nhật của Windows để vượt qua các biện pháp bảo vệ DSE. Việc này có thể được thực hiện bằng cách giảm cấp một thành phần đã được vá, ngay cả trên những hệ thống Windows 11 đã được cập nhật đầy đủ. Cuộc tấn công khả thi nhờ vào việc thay thế tệp ‘ci.dll’, đây là tập tin chịu trách nhiệm thực thi DSE, bằng một phiên bản chưa được vá mà bỏ qua tất cả chữ ký driver. Kỹ thuật này về cơ bản đánh bại những kiểm tra bảo vệ của Windows một cách có hiệu quả.
Quá trình thay thế này được kích hoạt ngay trong quy trình Windows Update. Tất cả diễn ra nhờ khai thác một điều kiện đọc gấp đôi, trong đó bản sao ci.dll dễ bị tổn thương được tải vào bộ nhớ ngay sau khi Windows bắt đầu kiểm tra phiên bản mới nhất của ci.dll.
Sự kiện gọi là “cửa sổ đua” này cho phép ci.dll dễ bị tổn thương được tải khi Windows vẫn nghĩ rằng đã xác minh tệp, qua đó cho phép các driver không có chữ ký được tải lên kernel. Điều này không chỉ cho thấy sự sơ hở trong quy trình cập nhật của Windows mà còn mở ra một lối đi đầy tiềm năng cho các kẻ tấn công trong việc triển khai các mã độc.
Trong video được trình bày bên dưới, Leviev đã minh chứng cách mà ông khôi phục bản vá DSE thông qua một cuộc tấn công giảm cấp và khai thác thành phần này trên một máy tính đã được vá hoàn toàn chạy Windows 11 23H2. Ông cũng không ngần ngại mô tả các phương pháp để vô hiệu hóa hoặc bỏ qua Bảo mật Dựa trên Ảo hóa (VBS) của Microsoft. Đây là một tính năng tạo ra một môi trường biệt lập cho Windows nhằm bảo vệ các tài nguyên thiết yếu và những tài sản bảo mật như cơ chế toàn vẹn mã kernel bảo mật (skci.dll) và thông tin xác thực người dùng đã được xác thực.