1 điểm bởi GN⁺ 2024-07-29 | 1 bình luận | Chia sẻ qua WhatsApp

Phân tích kỹ thuật về sự cố mất điện do CrowdStrike

  • Vấn đề an toàn bộ nhớ của driver CSagent, đặc biệt là lỗi vi phạm truy cập do đọc vượt phạm vi, là nguyên nhân gốc rễ
  • Việc phân tích được thực hiện bằng cách tận dụng trình gỡ lỗi kernel WinDBG của Microsoft và nhiều tiện ích mở rộng được cung cấp miễn phí

Chức năng của driver CSagent.sys

  • Mô-đun CSagent.sys được đăng ký là một file system filter driver thường được sử dụng trong các tác nhân chống mã độc
  • Được dùng để nhận thông báo về các thao tác với tệp như tạo mới hoặc chỉnh sửa tệp
  • Được dùng để sản phẩm bảo mật quét mỗi khi một tệp mới được lưu xuống đĩa, chẳng hạn như khi tải tệp qua trình duyệt
  • Cũng có thể được dùng làm tín hiệu cho các giải pháp bảo mật muốn giám sát hoạt động của hệ thống
  • CrowdStrike giải thích rằng một phần của bản cập nhật nội dung là thay đổi logic liên quan đến việc tạo named pipe của sensor
  • API file system filter driver cho phép driver nhận lời gọi khi hoạt động named pipe diễn ra trong hệ thống (ví dụ: tạo named pipe), từ đó có thể phát hiện hành vi độc hại

Các mô-đun driver khác nhau của CrowdStrike

  • CrowdStrike tải 4 mô-đun driver là CSBoot, CSDeviceControl, CSAgent và CSFirmwareAnalysis
  • Một trong số đó, theo dòng thời gian rà soát sau sự cố của CrowdStrike, thường xuyên nhận các bản cập nhật điều khiển động và nội dung

Sự thay đổi về số lượng báo cáo sự cố liên quan đến driver CrowdStrike

  • Đã xác định được số lượng báo cáo sự cố Windows được tạo ra bởi lỗi lập trình CrowdStrike cụ thể này
  • Số lượng thiết bị tạo báo cáo sự cố thấp hơn số lượng thiết bị bị ảnh hưởng mà Microsoft đã chia sẻ trong bài blog trước đó
  • Điều này là do báo cáo sự cố được lấy mẫu và chỉ được thu thập từ các khách hàng đã chọn tải báo cáo sự cố lên Microsoft
  • Những khách hàng chọn bật chia sẻ crash dump giúp nhà cung cấp driver và Microsoft xác định, khắc phục các vấn đề chất lượng và sự cố

Có thể triển khai Windows ở chế độ bảo mật cao hơn không?

  • Windows có thể được khóa chặt bằng các công cụ tích hợp sẵn và Microsoft đang liên tục nâng mức mặc định bảo mật
  • Trên Windows 11, hàng chục tính năng bảo mật mới được bật mặc định
  • Các tính năng bảo mật tích hợp gồm Secure Boot, Measured Boot, Memory Integrity, danh sách chặn driver dễ bị tổn thương, bảo vệ Local Security Authority, Microsoft Defender Antivirus, v.v.
  • Các tính năng bảo mật này cung cấp nhiều lớp bảo vệ trước mã độc và các nỗ lực khai thác trên Windows hiện đại
  • Các công ty tuân theo thông lệ tốt nhất như chạy dưới tài khoản người dùng tiêu chuẩn và chỉ nâng quyền khi cần có thể giảm thiểu nhiều kỹ thuật trong MITRE ATT&CK

Kế hoạch sắp tới

  • Microsoft sẽ hợp tác với hệ sinh thái để giúp các nhà cung cấp chống mã độc hiện đại hóa cách tiếp cận của họ bằng cách tận dụng các tính năng tích hợp của Windows nhằm tăng cường bảo mật và độ ổn định
  • Cung cấp hướng dẫn triển khai an toàn, thông lệ tốt nhất và công nghệ để việc thực hiện cập nhật sản phẩm bảo mật trở nên an toàn hơn
  • Giảm các trường hợp cần driver kernel để truy cập dữ liệu bảo mật quan trọng
  • Cung cấp khả năng cô lập nâng cao và chống giả mạo tốt hơn với các công nghệ như VBS enclave
  • Kích hoạt các cách tiếp cận zero trust như chứng thực tính toàn vẹn cao, một phương thức xác định trạng thái bảo mật của thiết bị dựa trên trạng thái của các tính năng bảo mật mặc định của Windows
  • Windows đã công bố cam kết với ngôn ngữ lập trình Rust như một phần của Secure Future Initiative của Microsoft và đang mở rộng hỗ trợ Rust trong kernel Windows
  • Thông tin trong bài blog này được cung cấp như một phần trong cam kết rút kinh nghiệm từ sự cố CrowdStrike và định hướng cho các bước tiếp theo

1 bình luận

 
GN⁺ 2024-07-29
Ý kiến trên Hacker News
  • Microsoft có kế hoạch hợp tác với hệ sinh thái phần mềm bảo mật để hiện đại hóa phần mềm chống mã độc

    • Cung cấp hướng dẫn, thông lệ tốt nhất và công nghệ để thực hiện cập nhật một cách an toàn
    • Giảm nhu cầu dùng driver kernel để truy cập dữ liệu bảo mật quan trọng
    • Cố gắng liệt kê các chức năng chạy ở user mode để giảm những thành phần phải chạy ở kernel mode
  • Có lẽ cần chờ phân tích từ CrowdStrike

    • Giải thích vì sao phần mềm bảo mật trước đây thường chạy ở kernel mode
    • Microsoft đang thúc đẩy các công nghệ mới để các nhà cung cấp bảo mật chuyển sang user mode
    • CrowdStrike đã chạy ở user mode trên Mac và Linux
    • Nếu chạy ở user mode trên Windows nữa thì có thể giảm rủi ro lỗi nghiêm trọng như màn hình xanh
    • Nếu Windows cũng loại các nhà cung cấp bảo mật khỏi kernel mode như Apple đã làm thì có lẽ sự cố này đã không xảy ra
  • Đáng chú ý là không có nhắc tới eBPF

    • eBPF là tiêu chuẩn trên Linux và cũng dùng được trên Windows, nhưng vẫn chưa được đưa vào các bản Windows OS chính
    • Phân tích tĩnh có thể chưa chắc đã bắt được lỗi Blue Friday, nhưng vẫn nâng mức bảo vệ cao hơn mô hình kernel module hiện tại
  • Việc Microsoft tự thân cũng là đối thủ cạnh tranh lớn của CrowdStrike không có gì đáng ngạc nhiên

  • Chắc hẳn đã qua khâu rà soát của bộ phận marketing và pháp lý

    • Điều quan trọng là chọn OS/bản phân phối biết cải thiện dựa trên những gì học được từ sự cố
  • Một phương án thay thế là chỉ Microsoft quyết định người dùng được làm gì, và điều đó còn tệ hơn

    • Có những người ủng hộ chủ nghĩa toàn trị số
  • Phần phân tích kỹ thuật có kèm luồng quy trình debug và các liên kết tài nguyên rất hay

    • Giá mà có thêm nhiều bài tổng kết debug như thế này
  • Cả tuyên bố của MS lẫn CrowdStrike đều không giải thích được vụ va chạm này đã vượt qua QC bằng cách nào

    • Thật khó hiểu khi một lỗi có thể tái hiện 100% lại không bị bắt ở giai đoạn đầu của QC
  • Có kinh nghiệm nghiên cứu về Control Flow Integrity (CFI/XFI)

    • Đã từng có thể sandbox kernel module
    • Hiện nay có thể biên dịch mã với các cờ phù hợp để loại trừ hoàn toàn lỗi an toàn bộ nhớ
    • Có thể biến BSOD thành một thông điệp log lịch sự và vô hiệu hóa driver bị lỗi