Trước đó chúng tôi
Điều kỳ lạ là ban đầu Kolsek không thể tái hiện cuộc tấn công được mô tả và trình diễn bởi John, khi anh ta sử dụng Internet Explorer chạy trên Windows 7 để tải xuống và sau đó mở tệp MHT độc hại. Mặc dù người quản lý quy trình của anh ta cho thấy rằng system.ini, thứ được lên kế hoạch đánh cắp từ chính anh ta, đã được đọc bởi một tập lệnh ẩn trong tệp MHT, nhưng không được gửi đến máy chủ từ xa.
Kolsek viết: “Đây trông giống như một tình huống đánh dấu trang web cổ điển”. “Khi một tệp được nhận từ Internet, các ứng dụng Windows chạy đúng cách như trình duyệt web và ứng dụng email khách sẽ thêm nhãn vào tệp đó ở dạng
Nhà nghiên cứu đã xác minh rằng IE thực sự đã đặt nhãn như vậy cho tệp MHT đã tải xuống. Kolsek sau đó đã cố tải xuống cùng một tệp bằng Edge và mở nó trong IE, đây vẫn là ứng dụng mặc định cho các tệp MHT. Thật bất ngờ, việc khai thác đã thành công.
Đầu tiên, nhà nghiên cứu đã kiểm tra “mark-of-the-Web”, hóa ra Edge cũng lưu trữ nguồn gốc của tệp trong một luồng dữ liệu thay thế ngoài mã định danh bảo mật, điều này có thể đặt ra một số câu hỏi liên quan đến quyền riêng tư của điều này. phương pháp. Kolsek suy đoán rằng các dòng bổ sung có thể đã làm IE nhầm lẫn và ngăn nó đọc SID, nhưng hóa ra, vấn đề nằm ở chỗ khác. Sau một thời gian dài phân tích, chuyên gia bảo mật đã tìm ra nguyên nhân ở hai mục trong danh sách kiểm soát truy cập đã thêm quyền đọc tệp MHT vào một dịch vụ hệ thống nhất định mà Edge đã thêm vào đó sau khi tải nó.
James Foreshaw từ nhóm chuyên trách về lỗ hổng zero-day - Google Project Zero -
Tiếp theo, nhà nghiên cứu muốn hiểu rõ hơn nguyên nhân khiến hệ thống bảo mật của IE bị lỗi. Một phân tích chuyên sâu bằng cách sử dụng tiện ích Process Monitor và trình phân tách IDA cuối cùng đã tiết lộ rằng độ phân giải được đặt của Edge đã ngăn chức năng Win Api GetZoneFromAlternateDataStreamEx đọc luồng tệp Zone.Identifier và trả về lỗi. Đối với Internet Explorer, lỗi như vậy khi yêu cầu nhãn bảo mật của tệp là hoàn toàn không mong muốn và rõ ràng, trình duyệt cho rằng lỗi tương đương với việc tệp không có dấu “mark-of-the-Web”, điều này tự động làm cho nó đáng tin cậy, sau lý do tại sao IE cho phép tập lệnh ẩn trong tệp MHT thực thi và gửi tệp cục bộ đích đến máy chủ từ xa.
“Bạn có thấy sự trớ trêu ở đây không?” Kolsek hỏi. "Một tính năng bảo mật không có giấy tờ được Edge sử dụng đã vô hiệu hóa một tính năng (đánh dấu trang Web) hiện có, chắc chắn là quan trọng hơn nhiều trong Internet Explorer."
Bất chấp mức độ nghiêm trọng ngày càng tăng của lỗ hổng bảo mật, cho phép chạy tập lệnh độc hại dưới dạng tập lệnh đáng tin cậy, không có dấu hiệu nào cho thấy Microsoft có ý định sớm sửa lỗi này, nếu nó được sửa. Do đó, chúng tôi vẫn khuyến nghị, như trong bài viết trước, bạn nên thay đổi chương trình mặc định để mở tệp MHT bằng bất kỳ trình duyệt hiện đại nào.
Tất nhiên, nghiên cứu của Kolsek không thể thiếu một chút tự PR. Ở cuối bài viết, anh đã trình diễn một bản vá nhỏ được viết bằng hợp ngữ có thể sử dụng dịch vụ 0patch do công ty anh phát triển. 0patch tự động phát hiện phần mềm dễ bị tấn công trên máy tính của người dùng và áp dụng các bản vá nhỏ cho phần mềm đó một cách nhanh chóng. Ví dụ: trong trường hợp chúng tôi mô tả, 0patch sẽ thay thế thông báo lỗi trong hàm GetZoneFromAlternateDataStreamEx bằng một giá trị tương ứng với một tệp không đáng tin cậy nhận được từ mạng, do đó IE sẽ không cho phép bất kỳ tập lệnh ẩn nào được thực thi theo quy trình được xây dựng sẵn. trong chính sách bảo mật.
Nguồn: 3dnews.ru