안녕하세요 여러분?
이번 블로그는 RCE 취약점 분석으로 돌아왔습니다 .
아시다시피 이 스프가게에서는...
다양한 스프를 끓입니다.
이번엔 맛없는 브로콜리 스프를 끓여보겠습니다
브로콜리 취약점 스프를요...
(취약점 분석하겠다는 뜻)

자자. 그러면 시작해볼게요
일단 RCE란?
Remote Code Execution
원격 코드 실행
이라고 합니다.
공격자가 네트워크를 통해 취약한 시스템에서 임의의 명령어나 코드를 원격으로 실행할 수 있게 하는 보안 약점이라고 하는데요?
한마디로 공격자가 멀리 떨어진 곳에서도
네트워크로 대상 컴퓨터나 서버에 본인이 원하는 명령어나 코드를 실행시키는 취약점입니다 !!
대표적인 유형으로는
Command Injection : 명령어 주입
=> 가장 클래식한 방법 !
웹사이트가 사용자에게 입력받은 값을 그대로 시스템 명령어로 쓸 때 발생 !!
Unsafe Deserialization : 안전하지 않는 역직렬화
=> 프로그래밍 언어에서 데이터를 객체로 변환하는 과정을 노림
즉 서버가 데이터를 읽어들이는 순간에, 내부에 은닉된 코드가 터지면서 실행하게 됨
File Upload Vulnerability : 파일 업로드 취약점
=> 사용자로 하여금 공격 파일에 접근하게끔 유도함!!!
Buffer Overflow : 버퍼 오버플로우
=> 데이터가 넘치게 되면, 돌아가야 할 주소까지 침범해서 공격자가 원하는 주소로 바꿔버림!
결국 RCE의 핵심은 "강제성"에 있게 됩니다..!
조금 더 정확히 말하면 제어 흐름을 가로채는 것입니다.
CVE-2026-20841 분석
https://asec.ahnlab.com/ko/92556/
MS 제품군 2026년 2월 정기 보안 업데이트 권고 - ASEC
MS 제품군 2026년 2월 정기 보안 업데이트 권고 ASEC
asec.ahnlab.com
안랩의 보안 권고문에 따르면,

금년 2월에 보고된 RCE 취약점 중 하나라고 합니다 !
저는 그리구 일단
취약점 분석?! 에 있어서 정말 뉴비이기 때문에 처음부터 끝까지 하나하나 알아볼게요 !
참고 문헌
(2019). 스프링 서버 원격코드 실행 취약점(CVE-2018-1270)을 이용한 응용 공격 시나리오의 대응 방안. 한국전자통신학회 논문지, 14(2), 303-308.
CVE란?
Common Vulnerablities and Exposures!
즉 정보보안 취약점 표준 코드의 약자입니다!
그래서 취약점이 발견 될 때마다 고유한 코드를 붙이는 것 !!
그래서 이 취약점은 어떤 부분에 대한 취약점일까요?
일단 마이크로소프트사에서 작성한 취약점 보고서를 살펴볼까요?
https://msrc.microsoft.com/update-guide/vulnerability/CVE-2026-20841
Security Update Guide - Microsoft Security Response Center
msrc.microsoft.com

보시다시피 이런 내용들이 담겨있습니다 .
여기서 중요한 정보가 뭘까요?
바로 취약점의 고유한 성격과 위험도를 나타내는 문자열인
벡터 문자열입니다 !
CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H/E:U/RL:O/RC:C
일단 요 문자열은 슬래시를 기준으로 끊어 읽어야 합니다
앞쪽부터 살펴보도록 합시다.
CVSS:3.1
Common Vulnerability Scoring System으로,
보안 취약점이 얼마나 위험한지 점수로 매기는 전 세계 공통 표준 가이드라인입니다.
주관적으로 취약점을 평가하게 되면,
취약점의 위험도를 보는 기준이 모호해지겠지요?
그래서 국제적으로 가이드라인을 세운 것입니다!
아무튼 , 이 가이드라인의 점수체계를 살펴보자면,
| 점수 범위 | 심각도 |
| 0.0 | 없음 |
| 0.1-3.9 | 낮음 |
| 4.0-6.9 | 중간 |
| 7.0-8.9 | 높음 |
| 9.0-10.0 | 중요 |
요렇게 되는데요?
Metrics 측정된 내용을 보면
발견 당시 7.8이었으나
현재는 6.8로 내려간 상태이네요 !
즉, 발견 당시엔 심각도가 높은 수준의 취약점이었으나,
현재는 마이크로소프트사가 공식 패치를 내놓았고, 아직 다행히 해킹 툴이 퍼지진 않았기에
심각도가 중간으로 내려간 상태입니다 ! 하지만 여전히 낮다고도 볼 순 없겠지요
기본 지표
| 항목 문자열 | 항목별 설명 | 수준 문자열 | 수준별 설명 |
| AV | Attack Vector 공격 경로 | L | Local 컴퓨터 안에서 실행되어야 함 |
| AC | Attack Complexity 공격 난이도 | A | Low 공격하는 방법 쉬움 |
| PR | Privileges Required 권한 수준 | N | None 아무나 공격할 수 있음 |
| UI | User Interaction 사용자 개입 | R | Required 사용자 유도형 |
| S | Scope 영향 범위 | U | Unchanged 메모장 권한 안에서만 피해를 받음 |
| C | 기밀성 (데이터 털리는 정도) | H | High 높음 |
| I | 무결성 (파일 변조되는 정도) | H | High 높음 |
| A | 가용성 (프로그램 망가지는 정도) | H | High 높음 |
시간 지표
| 항목 문자열 | 항목별 설명 | 수준 문자열 | 수준별 설명 |
| E | Exploit Code Maturity 공격 코드 성숙도 | U | Unproven (공격자 입장) 공격도구 없는 상태! |
| RL | Remediation Level 대응 수준 | O | Official Fix 공식 패치 유, 업데이트만 하면 안전함! |
| RC | Report Confidence 신뢰도 | C | Confirmed 취약점 인정받음! |
여기서 한 가지 의문점이 생겼습니다
Scope가 Unchanged인데도,
즉 영향 범위가 메모장 권한 안에서만 피해를 받는 건데도 왜 이 취약점이 높은 위험도로 평가되는 것일까요?
일단 피해 범위와 권한의 전이를 같다고 생각하는 부분에서 오해가 생긴 겁니다.
여기서 말하는 Scope는 권한의 전이를 의미하구요,
메모장을 해킹했다 한들, 그 해킹 코드가 자동으로 윈도우 시스템 전체를 장악하지는 못한다는 것입니다.
하지만, 메모장의 권한 탈취로 인해 생기는 이후 피해들이 크다 판단해서 CIA 영역에서는 위험도 점수를 높이 평가한 것이구요.
이것은 보안 평가의 핵심적인 모순이라고도 평가되는데요!!!
많은 보안 전문가와 기관에서 지적한 CVSS 3.1의 scope의 핵심적인 모순은,
피해는 크지만 최종 위험도 점수가 낮아지기 때문에
이 보안 지표를 만든 FIRST운영주체 또한 이러한 혼란성을 인정했습니다 !
따라서 2023년 말에는 CVSS 4.0이 정식적으로 나오게 되었구요,
이 CVSS 4.0에서는 Scope 지표가 사라지게 되었답니다?

네 보시다시피 Scope지수가 사라지게 되었답니다....!
혹시나 궁금해하실 분들을 위해 링크도 첨부해 둘게요!
https://www.first.org/cvss/v4.0/
Common Vulnerability Scoring System
Common Vulnerability Scoring System Version 4.0 CVSS version 4.0 is the next generation of the Common Vulnerability Scoring System standard. Some of the changes incorporated into CVSS v4.0 include: Reinforce the concept that CVSS it not just the Base score
www.first.org
CVE-2026-20841 Notepad RCE: MSRC Confidence and Urgent Patch Guide
Microsoft’s Security Update Guide has recorded CVE-2026-20841 as a Remote Code Execution (RCE) vulnerability affecting the Windows Notepad app, and the vendor’s terse advisory combined with its “report confidence” metadata demands immediate, measur
windowsforum.com
이번엔 윈도우 포럼에서 발표한 해당 취약점에 대한 내용입니다!
요약하자면,
기술이 발전하면서 메모장도 현대화되기 시작하였지요!?
예전엔 단순한 텍스트 기록용이었다면,
요즘 메모장은 탭 기능, 마크다운 미리보기 기능, 또 요즘에는 클라우드 기반 AI기능까지 탑재되고 있다고 하니
취약점이 늘어날 수 밖에 없겠죠.
그래서 기능이 점점 추가되다보니...공격 표면이 넓어질 수 밖에 없었다는 내용이 있습니다!
기능이 추가될 수록 보안적인 방면에서는 취약점이 늘어날 구석이 많아진다는 것과 같으니까요..ㅠㅅㅠ
또한 보고서 신뢰도 지표의 필요성도 강조하였는데요?
MSRC 메타데이터 같은 경우 신뢰도와 악용성의 지표가 되는 데이터인데,
일단 여기서 Comfirmed라는 평가를 내렸다는 것 자체에서부터
시급하게 처리해야 할 취약점이라는 것을 의미합니다
여기서 발생할 수 있는 공격 벡터들에는 어떤 것이 있을까요!
마이크로소프트사가 공식적으로 발표한 내용들에는

- 조작된 파일 및 미리보기 컨텐츠
- 이메일이나 클라우드 공유를 통해 특수하게 제작된 파일을 사용자가 열거나 미리보기 할 때 코드가 실행되는 형식!!
- 사용자 유도형
- 메모장의 마크다운 지원이나 이미지 혹은 메타데이터 파싱 로직에 결함이 있을 경우 발생
- 파일 전달은 원격에서 이루어지나, 실제 파싱은 로컬에서 수행되기 때문에 AV:L (Local)임에도 원격 코드 실행이라는 결과로 이어지게 됨!! ⭐⭐⭐⭐⭐
- 핸들러 및 프로토콜 연관 공격
- 특정 파일 형식이나 url을 처리하도록 등록된 메모장의 핸들러기능을 악용 !
- 윈도우 운영체제가 썸네일을 생성하거나 미리보기를 실행하려면 미리 자동으로 파일을 읽어야 하는데, 이때 사용자가 파일을 열지 않아도 탐색기에서 파일을 선택하거나, 폴더 자체를 여는 것 자체만으로도 공격 코드가 자동 실행될 수 있음! ⭐⭐⭐⭐⭐
- 업데이트 및 공급망 조작
- 프로그램의 업데이트 경로를 탈취하여 악성코드를 배포하는 방식
- 업데이트 서버를 장악해서 가짜 업데이트 파일을 배포하는 시나리오
- 컴포넌트 체이닝 및 DDL 하이재킹
- 메모장이 실행 시 호출하는 외부 시스템 파일의 로드 경로를 가로채는 공격 !!!
- 메모장이 미리보기 기능을 위해 특정 렌더링 DLL을 부를 때, 공격자가 미리 준비한 악성 DLL을 로드하도록 유도
개념을 잘 정리했다면 취약점의 PoC도 살펴보아야겠죠?!
PoC란 앞서 정리했던 개념을 증명하는 문서라구 할 수 있슴다
이론이 실제로 어떻게 돌아가는지 보여주는 실행 가이드라고 생각하심 됩니다
제가 참고한 PoC 링크를 첨부하겠슴니다 ~~!!
https://github.com/BTtea/CVE-2026-20841-PoC
GitHub - BTtea/CVE-2026-20841-PoC: PoC
PoC. Contribute to BTtea/CVE-2026-20841-PoC development by creating an account on GitHub.
github.com
일단우분투에서 해당 PoC를 이용해서 실습을 하기로 했답니다?

짜잔 이렇게 제 컴퓨터로 파일이 옮겨진 거 보이시나요?
이거를 다시 윈도우 VM으로 옮겨야하는데 ...
제가 윈도우 VM이 없는지라

결국 다운로드 엔딩. ...
ㅠㅠㅠㅠ
새로운 VM환경을 열기 위해 iso파일을 받아줍니다.
https://www.microsoft.com/ko-kr/software-download/windows10ISO
Windows 10 디스크 이미지(ISO 파일) 다운로드
Windows를 설치할 때 동일한 언어를 선택해야 합니다. 현재 사용 중인 언어를 확인하려면 PC 설정에서 시간 및 언어 또는 제어판의 지역으로 이동합니다.
www.microsoft.com
여기서 일단 windows 10을 다운받았어요 !
우분투에서 iso파일로 다운받고, 공유파일 생성한 뒤
제 본 pc에도 다운받은 다음
그 iso파일로 새로운 window vm을 만들었답니다?!

기다림 끝에 완성된 설치환경
이 아니었고 한참뒤에 완성된 설치환경....

꺄아아 완성 ~
잠만
완성이 아니었음
생각해보니 취약점 발생한 window버전이 11인데 10깔고
...^_^
나 확실히 문제있다
심지어 vitual machine까지 말 안듣길래
vmware로 갈아타느라 애좀 먹었습니다 ㅠㅠ
미친것 ㅉ

드디어 다 됐다



일단 다양한 방법으로 시도해보려고 했으나
패치가 되어있어서 ..
일반 텍스트로 열리게 되네요
윈도우에서 메모장이 링크를 실행하거나 다른 앱을 실행시킬까봐
텍스트로 열게끔 하는 방어작업을 볼 수 있었습니다!
실습 환경을 최대한 구성해보려고
여기서두 파일을 찾아보고
Microsoft Store - Generation Project (v1.2.3) [by @rgadguard & mkuba50]
Online link generator for Microsoft Store. You can use it to get links to almost all apps, games, themes from the Microsoft Store.
store.rg-adguard.net
여기서도 실습환경에 맞는 구버전 노트패드를 찾아봤는데
윈도우에서 이미 손을 썼는지
문제가 있는 버전만 싹 지웠더라구요
ㅠㅠㅠ
아무튼 실습은 여기까지...
가 아니고
선배님께 자문을 구해서 링크를 얻었습니다 !
다시해볼게요

기존 버전을 삭제해줍니다
PoC에 나온 버전 11.2510을 먼저 다운로드 받아줍니다 !!
그 다음
계산기가 열리게끔 텍스트를 작성해주고
마크다운으로 열어주면


클릭링크를 클릭할 시,
이렇게 파일이 열리는 것을 확인할 수 있습니다 !
PoC에 있던 것도 한 번 열어볼까요?


마크다운 구문 말고 텍스트포맷으로 봤을때는 오른쪽 화면과 같은 내용이 담겨있습니다 !
이걸 결국 열면 어떻게 될까요?


이렇게 자동으로
패키지 다운로드가 뜨고 CMD창이 열리는 것을 확인하실 수 있어요!
결국 그래서 이 버전의 노트패드는
사용자가 링크를 열게끔 유도해서, 악성 파일 혹은 cmd창을 실행하게 만들 수 있겠지요?
아무튼 빠른 패치 작업으로 현재는 취약점을 잡은 상태이니
모두들 염려마시길....
좌충우돌 실습은 이제 끝 ~!
모두들 수고많으셨습니다
다음게시물로 또 돌아올게엽
