WinRing0: 왜 Windows가 각종 PC 모니터링 앱을 악성코드로 인식하기 시작했는가

13 hours ago 1

  • 2025년 3월 11일부터 전세계 수많은 PC 유저들이 Windows Defender(Windows에 내장된 안티바이러스 앱)로부터 악성 코드 경고를 받기 시작함.
  • 악성 코드의 진원지는 대부분 PC 제어용 소프트웨어로, Razer Synapse, SteelSeries Engine, MSI Afterburner 등이 포함되어 있음.
  • 이들 소프트웨어들의 공통점이 모두 WinRing0이라는 라이브러리를 사용하고 있었다는 것이 밝혀짐.

현대 OS의 보안 모델

  • 운영체제는 시스템을 보호하기 위해서 "protection ring" 구조를 채용하고 있음. Ring 0부터 3까지 있지만 현대 OS에서는 0과 3만 사용하고 있음.
  • Ring 0은 커널 영역으로 하드웨어와 메모리, CPU 레지스터 등 컴퓨터의 모든 부분에 무제한적인 직접 접근이 가능함.
  • Ring 3은 응용 영역으로 시스템 소프트웨어를 제외한 일반적인 응용 프로그램들은 모두 여기에서 동작함.
  • 바깥쪽 ring은 안쪽 ring을 볼 수 없는 구조로 되어 있으며, 응용 영역에서 커널 영역에 접근하기 위해서는 장치 드라이버가 필요함.

PC 주변기기 시장의 현주소

  • PC 주변기기 시장의 경쟁이 치열해지면서 제조사들은 기능 차별화를 위해 전용 소프트웨어를 함께 제공하는 경우가 많아졌음.
    • 가령 CPU 쿨러의 경우 CPU의 온도에 따라 팬의 속도를 직접 제어할 수 있으며, 이를 소프트웨어를 통해 설정할 수 있음.
  • 다수의 하드웨어들은 SMBus(System Management Bus) 라는 프로토콜을 통해 운영체제와 통신하도록 설계됨.
  • 하지만 응용 레벨에서 SMBus에 접근하는 것은 불가능하며 장치 드라이버를 통해서만 가능함.

윈도 드라이버 모델(WDM)과 WinRing0

  • SMBus를 통해 하드웨어를 제어하기 위해서는 ring 0 위에서 동작하는 커널 모드 드라이버가 필요함.
  • 커널 모드 드라이버는 고도의 보안성이 요구되기 때문에 EV (Extended Validation) 전자서명이 되어 있어야 하며, MS가 직접 검수 후 드라이버를 전자서명하는 절차가 요구됨.
  • 이 절차가 까다롭고 많은 비용이 들기 때문에 주변기기 제조사들은 WinRing0을 통해 이를 우회하기 시작함.
  • WinRing0은 CrystalDiskMark를 만든 Miyazaki Noriyuki가 2007년 개발한 드라이버 및 라이브러리로, 응용 레벨에서 ring 0에 존재하는 여러 부분들을 응용 계층에 노출시키는 기능을 함.
  • 주변기기 제조사들은 WinRing0을 통해 응용 계층에서 ring 0에 직접 접근하여 하드웨어를 제어하는 방식으로 소프트웨어를 제작함.
  • WinRing0은 Windows 드라이버 인증 절차가 강화되기 이전에 cross-signing을 통해 전자서명된 것으로 보임.
  • 제작자는 WinRing0을 저수준 프로그래밍을 탐구하기 위한 일종의 토이 프로젝트의 성격으로 만들었다고 밝혔으나, 이를 실제 제품에 적용하는 사례가 계속 나오면서 2010년 더 이상 사용하지 말 것을 권고하면서 개발을 중단함.
  • 그러나 오픈 소스의 특성상 개발자가 관리를 중단한 이후에도 계속 배포되며 여러 곳에서 쓰여 옴.

WinRing0의 보안 위협

  • WinRing0의 목적이 커널에서 관리해야 하는 영역을 응용 계층에 그대로 노출시키는 것이기 때문에 이는 즉 OS의 근본적인 보안을 무력화한다는 의미이며, 관련하여 우려가 제기되어 옴.
  • 관련하여 여러 건의 CVE가 등록됨 (CVE-2019-6333, CVE-2020-14979, CVE-2021-44901)
  • 신용카드 번호, 브라우징 기록, 브라우저 쿠키 등을 탈취한 것으로 알려진 "SteelFox" 멀웨어가 이를 이용하는 등 실제 공격이 이루어진 사례 역시 발견됨.
  • WinRing0을 직접 사용하는 소프트웨어 뿐만 아니라 OpenHardwareMonitor (https://github.com/openhardwaremonitor/openhardwaremonitor) LibreHardwareMonitor (https://github.com/LibreHardwareMonitor/LibreHardwareMonitor) 를 통해 간접적으로 WinRing0에 의존하는 수많은 소프트웨어들이 이에 영향을 받음.
    • HP의 Touchpoint Analytics 소프트웨어가 OpenHardwareMonitor를 사용하고 있어서 2019년 당시 시중에 유통되는 모든 HP의 노트북 컴퓨터가 영향을 받음.
  • 2025년 3월 11일 MS는 WinRing0 드라이버를 전부 차단하는 조치를 내림.

제조사들의 대응

  • WinRing0의 보안 취약점에 대한 우려는 오래 전부터 제기되어 왔으며, 관련하여 이미 패치가 이루어짐.
    • 하지만 업데이트된 드라이버를 배포하려면 전자서명 절차가 필요하여 패치를 배포하지 못하고 있음.
    • 거기다 패치의 내용이 드라이버가 관리자 권한에서만 접근 가능하도록 바꾼 정도라서 근본적인 보안 취약점을 해결하지는 못한다는 지적이 있음.
  • Razer와 SignalRGB는 WinRing0 의존성을 제거하는 업데이트를 배포함.
  • CapFrameX 등 일부 소프트웨어들은 Windows Defender에 해당 프로그램들을 예외로 추가하라고 안내함.
  • Hyte Nexus의 제작사 iBuyPower는 패치된 WinRing0에 전자서명 절차를 직접 진행해서 배포할 의향이 있다고 밝혔으나, MS로부터 별다른 응답을 받지 못한 상황이라고 밝힘.
  • Steelseries는 소프트웨어에서 시스템 모니터링 기능을 삭제함.

그 외 논점들

  • WinRing0이 태생적으로 위험한 소프트웨어이지만 대체재가 없어서 서드파티 앱 제작자들을 중심으로 우려하는 의견이 있음
    • 가령 Fan Control, OpenRGB과 같은 서드파티 앱들은 WinRing0이 없으면 하드웨어와 통신할 수단이 없음.
    • 이는 WinRing0이 오픈 소스인데다 서명까지 되어 있는 희귀한 케이스라는 점에서 기인함.
  • 윈도 드라이버 인증 절차의 부담에 대한 의견이 있음
    • EV 서명이 비싸고 주기적으로 갱신해야 해서 이에 대한 부담이 있음.

Read Entire Article