
Windows 메모장의 마크다운 렌더링에서 발생하는 명령 주입 취약점에 대한 기술 분석 및 개념 증명으로, 조작된 링크를 Control+Click으로 클릭할 때 트리거되며, 악용 시나리오와 완화 방안에 대한 논의를 포함합니다.
*이 콘텐츠는 PatchPoint 구독자를 위한 월간 보고서를 통해 제공되는 내용의 일부에 해당합니다.
Microsoft는 2026년 2월 메모장의 RCE 취약점에 대한 패치를 공개했습니다. 이 취약점은 Windows 메모장의 마크다운 렌더링에서 Control 버튼과 함께 링크를 클릭할 때 트리거되는 명령 주입 취약점입니다. 이 취약점은 간단히 설명할 수 있습니다. 마크다운에서 Control+클릭을 통해 링크에 접근할 때 URI 스킴에 대한 필터링이 없어 해당 프로토콜의 처리기 애플리케이션이 실행되며 이에 대한 경고 대화상자가 표시되지 않습니다. 취약점의 영향 범위는 다음과 같습니다.
이미 패치된 버전과 패치되지 않은 버전은 다음과 같이 확인할 수 있습니다.
MSRC의 FAQ는 다음과 같이 설명합니다.
Q. 공격자가 이 취약점을 어떻게 악용할 수 있나요?
A. 공격자는 사용자가 메모장에서 열린 마크다운 파일 내의 악성 링크를 클릭하도록 속여, 검증되지 않은 프로토콜을 실행하여 원격 파일을 로드하고 실행하게 할 수 있습니다.
Q. CVSS 지표에 따르면 공격 벡터는 네트워크(AV:N)이고 사용자 상호작용이 필요합니다(UI:R). 원격 코드 실행의 대상 컨텍스트는 무엇인가요?
A. 악성 코드는 마크다운 파일을 연 사용자의 보안 컨텍스트에서 실행되며, 공격자에게 해당 사용자와 동일한 권한을 부여합니다.
위 내용에는 가능한 시나리오와 불가능한 시나리오가 있습니다. 결론부터 말하자면, "일반적인 상황"에서는 쉽지 않습니다.



결론부터 말하자면, 공격이 성공하려면 추가 취약점이 필요하므로 비효율적인 공격 벡터입니다. 제한된 버전 + 다운로드 -> 실행 -> 마크다운 보기 -> Control+클릭을 포함한 사용자 상호작용이 필요한 환경을 찾고, 여기에 또 다른 취약점을 연쇄적으로 연결하여 공격하는 것은 매우 비효율적이기 때문입니다.
일반적인 상황에서 어렵다고 말한 부분에 대한 자세한 설명은 아래와 같습니다. 일반적으로 RCE라고 하면 피해자가 파일을 다운로드하여 실행할 때 원격으로 코드가 실행되는 문제가 있을 수 있습니다. 일반적으로 이 시점에서 문제가 되는 것은 MoTW(웹 표시)입니다.
인터넷에서 다운로드한 경우 dir /r 명령으로 확인하면 다음과 같이 ADS를 통해 MoTW 설정(ZoneID=3)이 등록됩니다.


이렇게 MoTW가 설정되면 다음과 같이 일종의 보안 경고 메시지에 해당하는 사용자 상호작용 창이 표시됩니다.

경고 대화상자를 클릭하면 다음과 같이 실행됩니다.

그런 다음 이를 위해 MoTW를 우회하는 방법을 고려해야 합니다. 이 취약점은 LPE가 아니므로 동일한 권한으로 생성되며, 그렇다면 로컬 환경에서 제작된 공격 페이로드는 의미가 없습니다.
MoTW를 우회하는 방법은 여러 가지가 있습니다. 일반적으로 사용되는 방법은 WebDAV와 UNC 경로를 통한 SMB를 사용하는 방법입니다.
가능하지만 어려운 방법은 Follina 취약점과 같은 네이티브 스킴을 사용하는 것입니다. 가장 기본적인 ms-* 스킴이 좋은 방법입니다. (단, ms-* 취약점이 더 유용한 방식으로 작동할 수 있다고 생각합니다.) 요즘 Teams도 기본 설치되므로 msteams: 스킴도 작동하며, OneDrive의 odopen 스킴도 작동합니다.

위와 같이 ms-mmsys를 실행하면 별도의 인증 대화상자 없이 레지스트리에 등록된 방식대로 작동합니다.

이는 가능하다는 의미이지만 실제로는 새로운 취약점의 영역에 속하므로 방법론만 제시한다는 점을 유의하시기 바랍니다.
사용자가 구성하는 경우 또 다른 시나리오가 있을 수 있습니다. ActiveX/VBScript를 사용한 HTML을 통한 방법입니다. "IE.HTTP:" 스킴을 사용할 수 있지만 문제는 IE가 기본값으로 설정되어 있지 않다는 것이 큰 문제입니다. 😂 IE로 리디렉션하려면 별도의 설정을 구성해야 하며, IE에서 ActiveX가 작동하도록 설정해야 합니다. 😁

위와 같이 Edge에서는 ActiveX가 작동하지 않기 때문입니다. 결론적으로 매우 제한적입니다.
마찬가지로 요즘 앱을 설치하면 다양한 스킴을 사용할 수 있게 됩니다. 예를 들어 WinSCP 사용자의 경우 sftp: 스킴이 적용되고, Adobe Acrobat을 설치한 사람은 acrobat: 스킴에 접근할 수 있습니다. 이러한 스킴에서 유용한 명령을 실행할 수 있다면 문제가 될 수 있습니다.
요약하자면, 이 취약점은 원격 코드 실행의 벡터가 될 수 있습니다. 새로운 기능이 나올 때마다 모든 제품은 공격과 검증의 대상이 되어 왔으며, 이번에 나온 버그도 그러한 취약점 중 하나에 해당합니다. 😀