7 điểm bởi mastotron 2025-04-21 | 5 bình luận | Chia sẻ qua WhatsApp
  • Từ ngày 11 tháng 3 năm 2025, rất nhiều người dùng PC trên toàn thế giới bắt đầu nhận được cảnh báo mã độc từ Windows Defender (ứng dụng chống virus tích hợp sẵn trong Windows).
  • Nguồn gốc của các cảnh báo này chủ yếu đến từ phần mềm điều khiển PC, bao gồm Razer Synapse, SteelSeries Engine, MSI Afterburner và nhiều ứng dụng khác.
  • Sau đó người ta phát hiện điểm chung của các phần mềm này là đều đang sử dụng thư viện WinRing0.

Mô hình bảo mật của hệ điều hành hiện đại

  • Hệ điều hành sử dụng cấu trúc "protection ring" để bảo vệ hệ thống. Có các ring từ 0 đến 3, nhưng trong các hệ điều hành hiện đại chỉ dùng ring 0 và 3.
  • Ring 0 là vùng kernel, có thể truy cập trực tiếp không giới hạn vào mọi thành phần của máy tính như phần cứng, bộ nhớ, thanh ghi CPU.
  • Ring 3 là vùng ứng dụng, nơi mọi chương trình ứng dụng thông thường ngoài phần mềm hệ thống đều hoạt động.
  • Các ring ở ngoài không thể nhìn thấy ring ở trong, và để truy cập vùng kernel từ vùng ứng dụng thì cần có trình điều khiển thiết bị.

Thực trạng thị trường thiết bị ngoại vi PC

  • Khi cạnh tranh trong thị trường thiết bị ngoại vi PC ngày càng khốc liệt, các nhà sản xuất ngày càng thường xuyên cung cấp phần mềm riêng để tạo khác biệt về tính năng.
    • Ví dụ, với tản nhiệt CPU, có thể trực tiếp điều khiển tốc độ quạt theo nhiệt độ CPU, và việc này có thể được thiết lập qua phần mềm.
  • Nhiều phần cứng được thiết kế để giao tiếp với hệ điều hành thông qua giao thức SMBus (System Management Bus).
  • Tuy nhiên, không thể truy cập SMBus ở cấp ứng dụng mà chỉ có thể làm điều đó thông qua trình điều khiển thiết bị.

Mô hình trình điều khiển Windows (WDM) và WinRing0

  • Để điều khiển phần cứng qua SMBus, cần có trình điều khiển ở chế độ kernel chạy trên ring 0.
  • Do trình điều khiển kernel mode đòi hỏi mức độ bảo mật rất cao, chúng phải có chữ ký điện tử EV (Extended Validation), đồng thời Microsoft phải trực tiếp kiểm tra và ký số cho trình điều khiển.
  • Vì quy trình này phức tạp và tốn kém, các nhà sản xuất thiết bị ngoại vi đã bắt đầu lách qua bằng WinRing0.
  • WinRing0 là một trình điều khiển và thư viện do Miyazaki Noriyuki, tác giả của CrystalDiskMark, phát triển vào năm 2007; nó có chức năng phơi bày nhiều thành phần ở ring 0 cho tầng ứng dụng ở cấp ứng dụng.
  • Các nhà sản xuất thiết bị ngoại vi đã xây dựng phần mềm theo cách cho phép tầng ứng dụng truy cập trực tiếp vào ring 0 thông qua WinRing0 để điều khiển phần cứng.
  • Có vẻ WinRing0 đã được ký điện tử bằng cross-signing từ trước khi quy trình chứng nhận trình điều khiển Windows bị siết chặt.
  • Tác giả cho biết ông tạo WinRing0 như một dạng dự án thử nghiệm để khám phá lập trình mức thấp, nhưng khi ngày càng có nhiều trường hợp áp dụng nó vào sản phẩm thực tế, ông đã dừng phát triển vào năm 2010 và khuyến cáo không nên tiếp tục sử dụng nữa.
  • Tuy nhiên, do đặc tính mã nguồn mở, nó vẫn tiếp tục được phân phối và sử dụng ở nhiều nơi ngay cả sau khi tác giả ngừng bảo trì.

Rủi ro bảo mật của WinRing0

  • Vì mục đích của WinRing0 là phơi bày nguyên trạng cho tầng ứng dụng những vùng lẽ ra phải do kernel quản lý, điều đó đồng nghĩa với việc vô hiệu hóa nền tảng bảo mật cốt lõi của hệ điều hành, và từ lâu đã có nhiều lo ngại về vấn đề này.
  • Nhiều CVE đã được đăng ký liên quan đến nó (CVE-2019-6333, CVE-2020-14979, CVE-2021-44901).
  • Đã có các trường hợp tấn công thực tế bị phát hiện, chẳng hạn mã độc "SteelFox" — được cho là đã đánh cắp số thẻ tín dụng, lịch sử duyệt web và cookie trình duyệt — đã lợi dụng thành phần này.
  • Không chỉ các phần mềm dùng trực tiếp WinRing0, mà còn có rất nhiều phần mềm phụ thuộc gián tiếp vào WinRing0 thông qua OpenHardwareMonitor (https://github.com/openhardwaremonitor/openhardwaremonitor) và LibreHardwareMonitor (https://github.com/LibreHardwareMonitor/LibreHardwareMonitor) cũng bị ảnh hưởng.
    • Phần mềm Touchpoint Analytics của HP sử dụng OpenHardwareMonitor, nên vào năm 2019, toàn bộ laptop HP đang lưu hành trên thị trường khi đó đều bị ảnh hưởng.
  • Ngày 11 tháng 3 năm 2025, Microsoft đã thực hiện biện pháp chặn toàn bộ trình điều khiển WinRing0.

Phản ứng của các nhà sản xuất

  • Các lo ngại về lỗ hổng bảo mật của WinRing0 đã được nêu ra từ lâu và các bản vá liên quan cũng đã từng được thực hiện.
    • Tuy nhiên, để phát hành trình điều khiển đã cập nhật thì cần quy trình ký điện tử, nên họ không thể phát hành bản vá.
    • Ngoài ra, cũng có ý kiến chỉ ra rằng nội dung bản vá chỉ dừng ở việc đổi sang yêu cầu quyền quản trị để truy cập trình điều khiển, nên không giải quyết được lỗ hổng bảo mật mang tính căn bản.
  • Razer và SignalRGB đã phát hành bản cập nhật loại bỏ phụ thuộc vào WinRing0.
  • Một số phần mềm như CapFrameX hướng dẫn người dùng thêm các chương trình đó vào danh sách ngoại lệ của Windows Defender.
  • iBuyPower, công ty phát triển Hyte Nexus, cho biết họ sẵn sàng tự thực hiện quy trình ký điện tử cho WinRing0 đã được vá để phát hành, nhưng nói rằng hiện vẫn chưa nhận được phản hồi đáng kể nào từ Microsoft.
  • Steelseries đã xóa tính năng giám sát hệ thống khỏi phần mềm của mình.

Những điểm tranh luận khác

  • Dù WinRing0 về bản chất là phần mềm nguy hiểm, vẫn có ý kiến lo ngại — đặc biệt từ các nhà phát triển ứng dụng bên thứ ba — vì hiện không có giải pháp thay thế.
    • Ví dụ, các ứng dụng bên thứ ba như Fan Control hay OpenRGB sẽ không còn cách nào để giao tiếp với phần cứng nếu không có WinRing0.
    • Điều này xuất phát từ việc WinRing0 là một trường hợp hiếm hoi vừa là mã nguồn mở vừa đã được ký số.
  • Cũng có ý kiến về gánh nặng của quy trình chứng nhận trình điều khiển Windows.
    • Chữ ký EV đắt đỏ và phải gia hạn định kỳ, tạo ra gánh nặng không nhỏ.

5 bình luận

 
huiya 2025-04-22

Trước đây tôi từng vào làm ở một công ty phần mềm bảo mật tài liệu dùng driver kernel, và tôi vẫn nhớ khi đó cả công ty đã phải lao vào chỉ để lấy được cái chứng chỉ đó.

 
bungker 2025-04-22

Tôi đã thử cái đó hồi trước rồi, hình như họ yêu cầu mua chứng chỉ EV, ký cho mô-đun rồi nộp lên MS. Khi mua chứng chỉ EV còn phải xác minh công ty, nên để cá nhân phát hành driver thì khá là áp lực ghê.

 
regentag 2025-04-22

Ngay cả khi không bắt buộc phải là driver, chi phí chứng chỉ EV vẫn là gánh nặng với cá nhân.
MS Defender SmartScreen đang gây hại cho các nhà phát triển indie

 
ndrgrd 2025-04-21

Chuyện một số hãng sản xuất HID làm phần mềm như hạch đâu phải ngày một ngày hai.

 
savvykang 2025-04-22

Có vẻ ngành thiết bị âm thanh cũng tương tự. Trên laptop Dell có chương trình hiệu ứng âm thanh đi kèm là Waves MaxxAudio, không thể tắt hiệu ứng, mà nếu xóa chương trình thì lại không có tiếng. Chỉ có thể lách qua bằng cách cài driver Realtek gốc.