Lỗ hổng zero-day trên Windows đe dọa an ninh Web3: Lỗ hổng cơ sở hạ tầng Web2 có thể ảnh hưởng đến tài sản kỹ thuật số

robot
Đang tạo bản tóm tắt

Phân tích lỗ hổng zero-day của hệ thống Windows của Microsoft: có thể đe dọa an toàn của hệ sinh thái Web3

Gần đây, bản vá bảo mật do Microsoft phát hành đã khắc phục một lỗ hổng tăng quyền trên hệ thống Windows đang bị tin tặc khai thác. Lỗ hổng này chủ yếu tồn tại trong các phiên bản Windows sớm hơn và không thể kích hoạt trên Windows 11. Bài viết này sẽ phân tích cách mà kẻ tấn công có thể tiếp tục khai thác lỗ hổng này trong bối cảnh các cơ chế bảo mật hiện tại đang được tăng cường.

Bối cảnh lỗ hổng

Đây là một lỗ hổng zero-day, tức là lỗ hổng hệ thống đã được khai thác trước khi được công bố. Thông qua lỗ hổng này, hacker có thể lấy được quyền kiểm soát hoàn toàn hệ thống Windows, từ đó có thể dẫn đến việc rò rỉ thông tin cá nhân, sự cố hệ thống, mất dữ liệu, thiệt hại tài chính và các hậu quả nghiêm trọng khác. Đối với người dùng Web3, khóa riêng có thể bị đánh cắp, tài sản kỹ thuật số đối mặt với nguy cơ bị chuyển nhượng. Nhìn từ một góc độ rộng hơn, lỗ hổng này thậm chí có thể ảnh hưởng đến toàn bộ hệ sinh thái Web3 hoạt động dựa trên cơ sở hạ tầng Web2.

Numen độc quyền: Lỗ hổng 0day của Microsoft có thể lật đổ hệ thống + mặt vật lý trong Web3

Phân tích lỗ hổng

Phân tích bản vá cho thấy, đây là một vấn đề liên quan đến việc đếm số tham chiếu của đối tượng cửa sổ trong win32k. Bằng cách phân tích các chú thích mã nguồn trước đây, phát hiện ra rằng mã trước đây chỉ khóa đối tượng cửa sổ mà không khóa đối tượng menu trong cửa sổ, dẫn đến việc đối tượng menu có thể bị tham chiếu sai.

Phân tích sâu hơn cho thấy, vấn đề nằm ở hàm xxxEnableMenuItem. Đối tượng menu mà hàm này trả về có thể là menu chính của cửa sổ, cũng có thể là submenu hoặc thậm chí là submenu của submenu. Bằng cách xây dựng một cấu trúc menu lồng ghép nhiều lớp đặc biệt, có thể giải phóng một đối tượng menu trung gian nào đó khi hàm trả về lớp người dùng, từ đó gây ra lỗ hổng khi tham chiếu sau này.

Numen độc quyền: Lỗ hổng 0day của Microsoft có thể lật đổ hệ thống + mặt vật lý của Web3

Numen độc quyền: Lỗ hổng 0day của Microsoft có thể lật đổ Web3 trên hệ thống + phương diện vật lý

Khai thác lỗ hổng

Có hai cách chính để khai thác lỗ hổng này:

  1. Thực thi mã shellcode. Nhưng trong các phiên bản Windows cao hơn, phương pháp này gặp phải một số vấn đề kỹ thuật.

  2. Sử dụng các nguyên tử đọc/ghi để chỉnh sửa địa chỉ token. Cách này có tính tổng quát tốt hơn, chủ yếu cần giải quyết vấn đề làm thế nào để kiểm soát giá trị cbwndextra.

Numen độc quyền: Lỗ hổng 0day của Microsoft có thể lật đổ hệ thống + mặt vật lý Web3

Giải pháp cuối cùng được áp dụng là:

  1. Bằng cách điều khiển bố cục bộ nhớ của đối tượng cửa sổ, sử dụng thao tác cờ trong hàm xxxRedrawWindow để ghi giá trị cb-extra của HWNDClass.

  2. Thiết kế bố cục bộ nhớ của các đối tượng HWND liên tiếp, giải phóng các đối tượng trung gian và sử dụng đối tượng HWNDClass.

  3. Sử dụng địa chỉ handle kernel rò rỉ trong bộ nhớ heap để kiểm soát chính xác cách sắp xếp đối tượng.

  4. Sử dụng GetMenuBarInfo() để thực hiện đọc tùy ý, SetClassLongPtr() để thực hiện ghi tùy ý.

  5. Cuối cùng, quyền hạn được nâng cao thông qua việc sửa đổi địa chỉ token.

Numen độc quyền: Lỗ hổng 0day của Microsoft có thể lật đổ hệ thống + mặt vật lý trong trò chơi Web3

Numen độc quyền: Lỗ hổng 0day của Microsoft có thể lật đổ hệ thống + mặt vật lý trong cuộc chơi Web3

Numen độc quyền: Lỗ hổng 0day của Microsoft có thể lật đổ hệ thống + mặt vật lý của Web3

Numen độc quyền: Lỗ hổng 0day của Microsoft có thể lật đổ hệ thống + cấp độ vật lý trong trò chơi Web3

Tóm tắt

  1. Microsoft đang sử dụng Rust để tái cấu trúc mã liên quan đến win32k, trong tương lai, các lỗ hổng như vậy có thể sẽ giảm.

  2. Quá trình khai thác lỗ hổng này tương đối đơn giản, chủ yếu phụ thuộc vào việc rò rỉ địa chỉ tay cầm ngăn xếp trên máy tính để bàn.

  3. Phát hiện lỗ hổng này có thể phụ thuộc vào việc kiểm tra độ bao phủ mã hoàn thiện hơn.

  4. Phát hiện các bố trí bộ nhớ bất thường và các thao tác đọc ghi sẽ giúp phát hiện các lỗ hổng tương tự.

Xem bản gốc
This page may contain third-party content, which is provided for information purposes only (not representations/warranties) and should not be considered as an endorsement of its views by Gate, nor as financial or professional advice. See Disclaimer for details.
  • Phần thưởng
  • 3
  • Chia sẻ
Bình luận
0/400
ApeWithNoChainvip
· 23phút trước
Hệ quả của việc không nâng cấp hệ thống quá lâu
Xem bản gốcTrả lời0
Rekt_Recoveryvip
· 5giờ trước
mất 90% do đòn bẩy nhưng vẫn còn sống... chia sẻ những câu chuyện chiến tranh từ chiến tuyến thật lòng
Xem bản gốcTrả lời0
TokenTherapistvip
· 5giờ trước
Đừng lúc nào cũng làm những thứ phức tạp trong web3.
Xem bản gốcTrả lời0
  • Ghim
Giao dịch tiền điện tử mọi lúc mọi nơi
qrCode
Quét để tải xuống ứng dụng Gate
Cộng đồng
Tiếng Việt
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)