Trí thông minh dữ liệu tạo

Điểm yếu của Windows 'MagicDot' cho phép hoạt động Rootkit không có đặc quyền

Ngày:

MŨ ĐEN CHÂU Á – Singapore – Một sự cố đã biết liên quan đến quá trình chuyển đổi đường dẫn DOS-to-NT trong Windows mở ra rủi ro đáng kể cho doanh nghiệp khi cho phép kẻ tấn công có được khả năng sau khi khai thác giống như rootkit để che giấu và mạo danh các tệp, thư mục và quy trình.

Đó là nhận định của Or Yair, nhà nghiên cứu bảo mật tại SafeBreach, người đã nêu ra vấn đề trong một phiên họp tuần này. Ông cũng trình bày chi tiết bốn lỗ hổng khác nhau liên quan đến vấn đề này. được mệnh danh là “MagicDot” – bao gồm một lỗi thực thi mã từ xa nguy hiểm có thể được kích hoạt chỉ bằng cách giải nén một kho lưu trữ.

Dấu chấm và dấu cách trong chuyển đổi đường dẫn DOS-to-NT

Nhóm vấn đề MagicDot tồn tại là do Windows thay đổi đường dẫn DOS thành đường dẫn NT.

Khi người dùng mở tệp hoặc thư mục trên PC của họ, Windows sẽ thực hiện việc này bằng cách tham chiếu đường dẫn nơi tệp tồn tại; thông thường, đó là đường dẫn DOS tuân theo định dạng “C:UsersUserDocumentsexample.txt”. Tuy nhiên, một hàm cơ bản khác gọi là NtCreateFile được sử dụng để thực sự thực hiện thao tác mở tệp và NtCreateFile yêu cầu đường dẫn NT chứ không phải đường dẫn DOS. Do đó, Windows chuyển đổi đường dẫn DOS quen thuộc mà người dùng nhìn thấy thành đường dẫn NT, trước khi gọi NtCreateFile để kích hoạt thao tác.

Vấn đề có thể bị khai thác tồn tại vì trong quá trình chuyển đổi, Windows sẽ tự động xóa mọi dấu chấm khỏi đường dẫn DOS, cùng với mọi khoảng trắng thừa ở cuối. Vì vậy, các đường dẫn DOS như thế này:

  • C:ví dụví dụ.   

  • C: ví dụ ví dụ… 

  • C:ví dụví dụ    

tất cả đều được chuyển đổi thành “??C:exampleexample” dưới dạng đường dẫn NT.

Yair phát hiện ra rằng việc tự động loại bỏ các ký tự sai này có thể cho phép kẻ tấn công tạo các đường dẫn DOS được chế tạo đặc biệt để chuyển đổi thành đường dẫn NT mà chúng chọn, sau đó có thể được sử dụng để khiến các tệp không sử dụng được hoặc để che giấu nội dung và hoạt động độc hại.

Mô phỏng một Rootkit không có đặc quyền

Các vấn đề về MagicDot trước hết tạo cơ hội cho một số kỹ thuật sau khai thác giúp kẻ tấn công trên máy duy trì khả năng tàng hình.

Ví dụ: có thể khóa nội dung độc hại và ngăn người dùng, thậm chí cả quản trị viên, kiểm tra nội dung đó. “Bằng cách đặt một dấu chấm đơn giản ở cuối tên tệp độc hại hoặc bằng cách đặt tên tệp hoặc thư mục chỉ bằng dấu chấm và/hoặc dấu cách, tôi có thể khiến tất cả các chương trình trong không gian người dùng sử dụng API thông thường không thể truy cập được đối với chúng… người dùng sẽ không thể đọc, viết, xóa hoặc làm bất cứ điều gì khác với chúng,” Yair giải thích trong phiên họp.

Sau đó, trong một cuộc tấn công liên quan, Yair phát hiện ra rằng kỹ thuật này có thể được sử dụng để ẩn các tệp hoặc thư mục trong các tệp lưu trữ.

“Tôi chỉ đơn giản kết thúc tên tệp trong kho lưu trữ bằng dấu chấm để ngăn Explorer liệt kê hoặc giải nén nó,” Yair nói. “Kết quả là tôi có thể đặt một tệp độc hại bên trong một tệp zip vô hại — bất kỳ ai sử dụng Explorer để xem và giải nén nội dung lưu trữ đều không thể thấy tệp đó tồn tại bên trong.”

Phương thức tấn công thứ ba liên quan đến việc che giấu nội dung độc hại bằng cách mạo danh đường dẫn tệp hợp pháp.

“Nếu có một tệp vô hại được gọi là 'lành tính', tôi có thể [sử dụng chuyển đổi đường dẫn DOS-to-NT] để tạo một tệp độc hại trong cùng thư mục [cũng có tên] lành tính," anh giải thích và cho biết thêm rằng cách tiếp cận tương tự có thể được sử dụng để mạo danh các thư mục và thậm chí cả các quy trình Windows rộng hơn. “Kết quả là, khi người dùng đọc tệp độc hại, thay vào đó, nội dung của tệp vô hại ban đầu sẽ được trả về”, khiến nạn nhân không hề hay biết rằng họ thực sự đang mở nội dung độc hại.

Yair, người đã xuất bản giải thích, khi kết hợp lại với nhau, việc thao túng các đường dẫn MagicDot có thể cấp cho đối thủ những khả năng giống như rootkit mà không cần có đặc quyền của quản trị viên. ghi chú kỹ thuật chi tiết về các phương thức tấn công song song với phiên.

“Tôi nhận thấy rằng tôi có thể ẩn các tệp và quy trình, ẩn tệp trong kho lưu trữ, ảnh hưởng đến việc phân tích tệp tìm nạp trước, khiến người dùng Trình quản lý tác vụ và Process Explorer nghĩ rằng tệp phần mềm độc hại là tệp thực thi đã được xác minh do Microsoft xuất bản, vô hiệu hóa Process Explorer bằng tính năng từ chối dịch vụ (DoS) lỗ hổng bảo mật và hơn thế nữa,” ông nói – tất cả đều không có đặc quyền quản trị viên hoặc khả năng chạy mã trong kernel và không có sự can thiệp vào chuỗi lệnh gọi API truy xuất thông tin.

Ông cảnh báo: “Điều quan trọng là cộng đồng an ninh mạng phải nhận ra rủi ro này và xem xét phát triển các kỹ thuật và quy tắc phát hiện rootkit không có đặc quyền”.

Một loạt lỗ hổng “MagicDot”

Trong quá trình nghiên cứu các đường dẫn MagicDot, Yair cũng đã phát hiện ra 4 lỗ hổng khác nhau liên quan đến vấn đề cơ bản, 3 trong số đó đã được Microsoft vá.

Một lỗ hổng thực thi mã từ xa (RCE) (CVE-2023-36396, CVSS 7.8) trong logic trích xuất mới của Windows cho tất cả các loại lưu trữ mới được hỗ trợ, cho phép kẻ tấn công tạo một kho lưu trữ độc hại có thể ghi vào bất cứ nơi nào chúng chọn trên máy tính từ xa sau khi được trích xuất, dẫn đến việc thực thi mã.

“Về cơ bản, giả sử bạn tải một kho lưu trữ lên Kho GitHub quảng cáo nó như một công cụ thú vị có sẵn để tải xuống,” Yair nói với Dark Reading. “Và khi người dùng tải xuống, nó không phải là tệp thực thi, bạn chỉ cần giải nén kho lưu trữ, đây được coi là một hành động hoàn toàn an toàn và không có rủi ro bảo mật. Nhưng bây giờ, bản thân việc giải nén có thể chạy mã trên máy tính của bạn, điều đó là sai lầm nghiêm trọng và rất nguy hiểm.”

Lỗi thứ hai là lỗ hổng nâng cao đặc quyền (EoP) (CVE-2023-32054, CVSS 7.3) cho phép kẻ tấn công ghi vào tệp mà không có đặc quyền bằng cách thao túng quá trình khôi phục phiên bản trước từ bản sao ẩn.

Lỗi thứ ba là DOS không có đặc quyền của Process Explorer dành cho lỗi chống phân tích, lỗi CVE-2023-42757 đã được bảo lưu, kèm theo các chi tiết sau. Và lỗi thứ tư, cũng là lỗi EoP, cho phép kẻ tấn công không có đặc quyền xóa tệp. Microsoft xác nhận rằng lỗ hổng này đã dẫn đến “hành vi không mong muốn” nhưng vẫn chưa đưa ra CVE hoặc bản sửa lỗi.

“Tôi tạo một thư mục bên trong thư mục demo có tên là… và bên trong, tôi viết một tệp có tên c.txt,” Yair giải thích. “Sau đó, khi quản trị viên cố gắng xóa … thư mục, thay vào đó toàn bộ thư mục demo sẽ bị xóa.”

Khả năng phân nhánh “MagicDot” rộng hơn

Trong khi Microsoft giải quyết các lỗ hổng cụ thể của Yair, tính năng tự động loại bỏ dấu chấm và dấu cách trong đường dẫn DOS-to-NT vẫn tiếp tục tồn tại, mặc dù đó là nguyên nhân cốt lõi của các lỗ hổng.

Nhà nghiên cứu nói với Dark Reading: “Điều đó có nghĩa là có thể còn nhiều lỗ hổng tiềm ẩn hơn và các kỹ thuật sau khai thác được phát hiện bằng cách sử dụng vấn đề này”. “Vấn đề này vẫn tồn tại và có thể dẫn đến nhiều vấn đề và lỗ hổng khác, có thể nguy hiểm hơn nhiều so với những vấn đề mà chúng tôi biết.”

Ông nói thêm rằng vấn đề này có sự phân nhánh vượt ra ngoài Microsoft.

“Chúng tôi tin rằng những tác động này không chỉ liên quan đến Microsoft Windows, hệ điều hành máy tính để bàn được sử dụng rộng rãi nhất trên thế giới, mà còn liên quan đến tất cả các nhà cung cấp phần mềm, hầu hết trong số họ đều cho phép các vấn đề đã biết tồn tại từ phiên bản này sang phiên bản phần mềm của họ,” ông cảnh báo. trong bài thuyết trình của mình.

Trong khi đó, các nhà phát triển phần mềm có thể làm cho mã của họ an toàn hơn trước các loại lỗ hổng này bằng cách sử dụng đường dẫn NT thay vì đường dẫn DOS, ông lưu ý.

Yair cho biết trong bài thuyết trình của mình: “Hầu hết các lệnh gọi API cấp cao trong Windows đều hỗ trợ đường dẫn NT. “Việc sử dụng đường dẫn NT sẽ tránh được quá trình chuyển đổi và đảm bảo đường dẫn được cung cấp giống với đường dẫn đang được vận hành thực sự.”

Đối với các doanh nghiệp, nhóm bảo mật nên tạo ra các tính năng phát hiện để tìm kiếm các khoảng thời gian và khoảng trống giả mạo trong đường dẫn tệp.

“Có những cách phát hiện khá dễ dàng mà bạn có thể phát triển cho những thứ này, để tìm kiếm các tập tin hoặc thư mục có dấu chấm hoặc dấu cách trong đó, bởi vì nếu bạn tìm thấy những thứ đó, trên máy tính của mình, điều đó có nghĩa là ai đó đã cố tình làm điều đó vì không phải vậy. điều đó thật dễ dàng,” Yair nói với Dark Reading. “Người dùng bình thường không thể chỉ tạo một tệp có phần cuối bằng dấu chấm hoặc dấu cách, Microsoft sẽ ngăn chặn điều đó. Những kẻ tấn công sẽ cần phải sử dụng một API thấp hơn nó gần với hạt nhân hơn và sẽ cần một số kiến ​​thức chuyên môn để thực hiện được điều này.”

tại chỗ_img

Tin tức mới nhất

tại chỗ_img

Trò chuyện trực tiếp với chúng tôi (chat)

Chào bạn! Làm thế nào để tôi giúp bạn?