기타 Hacker News · 2026-10-08

윈도우 개발자가 밝힌 "재부팅 없는 핫패치" 공간에 다른 놈이 끼어들면 생기는 대참사

핵심 요약
  • MS 개발자 레이먼드 첸이 윈도우 핫패치(재부팅 없는 업데이트)는 설계상 오직 '윈도우 업데이트' 하나만을 위해 만들어졌다고 설명했습니다.
  • 만약 비인가 프로그램이 핫패치 공간을 먼저 건드리면 패치가 꼬이거나 강제 재부팅을 해야 하는 심각한 문제가 발생합니다.
  • 그는 이를 두고 '소방차 전용 구역에 불법 주차했다가 불을 못 끄는 꼴'이라며 서드파티의 무단 개입을 경고했습니다.
요약 마이크로소프트의 베테랑 개발자 레이먼드 첸(Raymond Chen)이 윈도우의 핫패치(Hot-patching, 시스템 재부팅 없이 메모리 상에서 실행 중인 코드를 즉각 수정하는 기술) 메커니즘과 충돌 문제에 대해 설명했습니다. 핫패치는 윈도우 업데이트 시 시스템을 재부팅하지 않고 취약점이나 버그를 수정하기 위해 고안된 기능으로, 현재 윈도우 서버 및 윈도우 11 엔터프라이즈 환경 등에서 관리자 설정에 따라 작동합니다. 하지만 이 핫패치 설계는 오직 '단 하나의 패처(Windows Update)'만을 수용하도록 설계되어 있습니다. 마이크로소프트 공식 윈도우 업데이트 외에는 해당 핫패치 전용 공간을 사용할 권한이 있는 주체가 전혀 없다는 전제하에 만들어졌기 때문입니다. 만약 서드파티 프로그램이나 허가받지 않은 악성/비인가 코드가 먼저 특정 함수를 후킹하거나 변조(detour)해 둔 상태라면 심각한 문제가 발생합니다. 핫패치 엔진이 사전 검사(prescan) 단계에서 이를 감지할 경우 핫패치 불가 판정을 내리고 일반 업데이트처럼 시스템 재부팅을 요구하게 되며, 이는 관리자들의 불만을 초래합니다. 더 위험한 시나리오는 사전 검사를 마친 직후 다른 코드가 함수를 가로채는 레이스 컨디션(경쟁 상태)입니다. 이 경우 핫패치 작업 도중 비인가 패치를 발견하게 되며, 전진도 롤백도 불가능한 채 메모리에 반쯤 패치된 바이너리가 갇히는 아수라장이 벌어질 수 있습니다. 레이먼드 첸은 애플리케이션이 윈도우 핫패치 영역을 무단으로 침범하는 행위를 '소방차 전용 구역에 불법 주차하는 것'에 비유했습니다. 소방차가 오기 전까지는 문제가 없어 보이지만, 진짜 화재가 났을 때 소방차가 진입하지 못해 집이 전소되는 참사로 이어질 수 있다는 경고입니다.
해외 반응 번역
업데이트 두 번마다 한 번씩은 무조건 재부팅해야 한다는 필수 규칙이 있던 걸로 아는데, 맥락을 보니 이제 이해가 가네. (답글: 매 세 번째마다 그럼, 맞음.)
만약 그 '다른 사람'이 과거의 윈도우 업데이트 자신이라면? 윈도우는 같은 파일에 대해 핫패치 업데이트 두 개를 못 한다는 뜻인가?
윈도우 업데이트는 자기 자신에 대해서는 문제없이 잘 처리할 거라 꽤 확신함. 두 가지 방식이 떠오르는데: 1) 패치 기록을 확인해서 자기가 패처임을 확인하고 점프 타깃을 업데이트하거나, 2) 자기가 쓰는 형식인지 확인하고 점프 타깃을 갱신하는 식일 듯.
Sponsored · 광고