Lỗ hổng Defender for Endpoint: Nguy hiểm nghiêm trọng đến an ninh mạng

Nghiên cứu gần đây đã làm rõ các lỗ hổng Defender for Endpoint liên quan đến giao tiếp đám mây của Microsoft Defender for Endpoint. Các vấn đề này có thể bị lợi dụng để vượt qua xác thực, chặn các lệnh điều khiển và giả mạo kết quả, từ đó phá vỡ quá trình ứng phó sự cố và đánh lừa các nhà phân tích an ninh. Đây là một rủi ro bảo mật nghiêm trọng đối với các tổ chức sử dụng giải pháp EDR của Microsoft.
Phân Tích Kỹ Thuật về Lỗ Hổng Giao Tiếp EDR
Phân tích sâu hơn vào tác nhân Defender for Endpoint (các tệp MsSense.exe và SenseIR.exe) đã tiết lộ rằng sau khi vượt qua việc ghim TLS (TLS pinning) để phân tích, lưu lượng mạng của tác nhân này đã phơi bày sự yếu kém trong cơ chế xác thực phía máy chủ.
Nhiều endpoint backend chấp nhận các yêu cầu mà không xác thực token hiệu quả, tạo điều kiện cho việc thao túng không xác thực nếu các thông số Machine ID và Tenant ID được biết.
Kỹ Thuật Khai Thác Endpoint /edr/commands/cnc
Tác nhân Defender for Endpoint thường xuyên thăm dò endpoint /edr/commands/cnc cụ thể theo vị trí để nhận các lệnh như isolationcommand, forensicscollectioncommand, scancommand, và incidentresponsecommand.
Mặc dù các yêu cầu gửi đi bao gồm các header Authorization và Msadeviceticket, hệ thống backend lại bỏ qua chúng. Điều này tạo ra một khe hở bảo mật lớn.
Một kẻ tấn công biết các giá trị Machine ID và Tenant ID (có thể đọc được bởi người dùng có đặc quyền thấp trên máy chủ bị xâm nhập) có thể thực hiện một cuộc tấn công race condition.
Kẻ tấn công sẽ truy xuất các lệnh đang chờ xử lý và tiêu thụ chúng trước khi tác nhân hợp lệ kịp nhận. Kết quả là, tác nhân hợp lệ sau đó không nhận được bất kỳ lệnh nào từ máy chủ.
Hơn nữa, kẻ tấn công có thể tải lên dữ liệu đo từ xa giả mạo hoặc các tệp tin độc hại lên dịch vụ lưu trữ Azure Blob storage thông qua các giá trị sasuri được trả về. Điều này cho phép chúng làm ô nhiễm bằng chứng, làm sai lệch báo cáo về các kết quả ứng phó sự cố.
Vấn Đề Xác Thực trên /senseir/v1/actions/
Một lỗ hổng song song ảnh hưởng đến endpoint /senseir/v1/actions/, nơi xử lý các tác vụ Live Response và Automated Investigation.
Hệ thống backend một lần nữa không thực thi xác thực đúng cách. Kẻ tấn công có thể lấy một token CloudLR hợp lệ chỉ bằng cách sử dụng Machine ID. Từ đó, chúng có thể yêu cầu các hành động, lấy các URL Azure Blob liên quan và tải lên dữ liệu đã được chế tạo.
Vì các hành động được mã hóa bằng Microsoft Bond, kẻ tấn công có thể chặn các payload hành động hợp lệ và sửa đổi chúng. Điều này cho phép tạo ra các tác động hoạt động mang tính lừa đảo, ví dụ như báo cáo rằng thiết bị “Đã được cô lập” (Already isolated) trong khi thực tế thiết bị vẫn trực tuyến và bị xâm nhập.
Ngoài ra, kẻ tấn công có thể chèn các tệp tin độc hại tương tự vào các gói điều tra, khiến các nhà phân tích có thể vô tình mở chúng, dẫn đến việc lây nhiễm hoặc rò rỉ thông tin thêm.
Mặc dù đã có các điều chỉnh backend được quan sát vào tháng 10 năm 2023 (liên quan đến hành vi điều tiết), những điểm yếu cốt lõi này trong lỗ hổng Defender for Endpoint vẫn tồn tại.
Tác Động và Hậu Quả của các Tấn Công Mạng
Các cuộc tấn công này chủ yếu áp dụng sau khi hệ thống đã bị xâm nhập, khi kẻ tấn công có thể thu thập các định danh máy (machine ID) và định danh tenant (tenant ID) từ máy chủ bị xâm nhập và từ đó leo thang quyền truy cập vào mặt phẳng kiểm soát đám mây (cloud control plane).
Các hậu quả nghiêm trọng nhất bao gồm việc âm thầm vô hiệu hóa tính năng cô lập thiết bị, làm sai lệch bằng chứng điều tra, và lừa dối các nhà phân tích bằng các tệp điều tra được cài bẫy.
Lộ Rò Thông Tin Cấu Hình và Điều Tra
Kẻ tấn công có thể truy vấn các ngoại lệ IR (IR-exclusions) từ endpoint đăng ký chỉ bằng cách sử dụng Organization ID, vốn có thể truy cập được từ registry đối với bất kỳ người dùng nào.
Các ngoại lệ này không vô hiệu hóa việc phát hiện, nhưng chúng định hình hành vi ứng phó sự cố tự động và thủ công, tiết lộ những khu vực mà người ứng phó sẽ không can thiệp. Điều này cung cấp thông tin giá trị cho kẻ tấn công.
Thêm vào đó, một lệnh gọi không xác thực đến /edr/commands/cnc có thể trả về một gói cấu hình khoảng 8MB, chứa các thông tin như RegistryMonitoringConfiguration, danh sách truy cập driver và dữ liệu giảm thiểu bề mặt tấn công (Attack Surface Reduction – ASR).
Mặc dù không hoàn toàn rõ ràng liệu gói này có phải là tenant-specific hay không, nó vẫn cung cấp cái nhìn sâu sắc có giá trị về các quy tắc bảo mật và các điểm mù tiềm ẩn của hệ thống, giúp kẻ tấn công xác định các lỗ hổng Defender for Endpoint khác hoặc phương thức tấn công mới.
Nếu một gói điều tra đã được tạo trước đó trên một máy chủ bị xâm nhập, nó có thể vẫn dễ đọc đối với bất kỳ người dùng nào, phơi bày các mục tự khởi chạy (autoruns), chương trình đã cài đặt, kết nối mạng và nhiều thông tin khác, rất hữu ích cho hoạt động trinh sát của kẻ tấn công.
Để biết thêm chi tiết về nghiên cứu này, bạn có thể tham khảo nguồn chính tại InfoGuard Labs.
Biện Pháp Giảm Thiểu và Khuyến Nghị An Ninh Mạng
Để đối phó với những lỗ hổng Defender for Endpoint này, các tổ chức cần áp dụng các biện pháp phòng ngừa và giám sát chủ động.
- Giám sát chặt chẽ: Cần theo dõi các mẫu thăm dò CNC/action bất thường, không mong đợi. Bất kỳ hoạt động nào không phù hợp với hành vi thông thường của tác nhân Defender đều cần được điều tra ngay lập tức.
- Xác thực trạng thái cô lập: Luôn xác minh rằng trạng thái cô lập của thiết bị trên giao diện điều khiển EDR khớp với trạng thái thực tế của máy chủ bị ảnh hưởng. Các xác minh này nên được thực hiện thông qua các kênh độc lập (out-of-band) để tránh bị giả mạo.
- Hạn chế truy cập định danh: Giới hạn quyền truy cập cục bộ vào các định danh quan trọng như Machine ID, Tenant ID và Organization ID trên các máy chủ. Chỉ cấp quyền truy cập khi thực sự cần thiết và cho các tài khoản có đặc quyền tối thiểu.
- Phát hiện tải lên Azure Blob đáng ngờ: Thiết lập các quy tắc phát hiện cho các hoạt động tải lên Azure Blob storage đáng ngờ, đặc biệt là những hoạt động liên quan đến quy trình làm việc của Defender. Bất kỳ tệp nào được tải lên mà không có lý do chính đáng hoặc từ các nguồn không đáng tin cậy đều phải được cảnh báo.
- Kiểm soát mạng: Triển khai các kiểm soát mạng để hạn chế quyền truy cập vào các endpoint của Defender chỉ từ các đường dẫn thoát (egress paths) đáng tin cậy. Điều này có thể giúp giảm thiểu khả năng xảy ra các cuộc tấn công race condition bằng cách giới hạn kẻ tấn công trong việc tranh giành các lệnh.
Cho đến khi Microsoft thực thi xác thực token nghiêm ngặt trên backend và củng cố quá trình cấp token, các nhóm ứng phó sự cố nên giả định rằng các kênh lệnh đám mây có thể bị tranh chấp và luôn xác minh kết quả thông qua các phương tiện độc lập.









