CVE

CVE-2025–49144

dbs1339 2026. 3. 21. 15:56

CVE-2025-49144는 전세계적으로 사용되는 프로그램인 notepad++ 인스톨러(설치 프로그램)에서 발생한 취약점이다.

해당 취약점은 notepad++ 인스톨러 8.8.1 이하 버전에서 발생하게 된다.

원리

notepad++ 인스톨러는 실행 시  윈도우 내장 유틸리티인 regsvr32.exe를 실행하게 된다. 하지만 인스톨러가 regsvr32.exe의 절대 경로(예: C:\Windows\System32\regsvr32.exe)를 명시하지 않고 단순히 파일명으로 호출하게 된다. 이렇게 실행될 경우 regsvr32.exe의 원래 경로가 아닌 인스톨러 기준 가장 가까운 곳부터 탐색하여 regsvr32.exe를 실행하게 된다.

공격자는 이를 악용하여 인스톨러와 공격자가 제작한 악성 프로그램의 이름을 regsvr32.exe로 변경하여 같은 폴더 내에 위치하게 하여 실행을 유도한다. 인스톨러가 실행되면 공격자가 제작한 regsvr32.exe가 실행되어 악성 행위를 하게 된다.

권한 상승

해당 취약점의 위험한 점은 해당 취약점으로 권한 상승(Privilege Escalation)이 가능하다는 것이다. Notepad++ 같은 프로그램을 "C:\Program Files"에 설치하고 우클릭 메뉴를 레지스트리에 등록하기 위해서는 관리자 권한이 필수적이다.

이러한 이유로 인스톨러 파일 안에는 실행 시 권한 상승을 요구하도록 설정(Manifest)이 되어 있다. 사용자가 파일을 더블클릭하면 UAC 창을 실행하고 관리자 권한으로 실행하게 된다. 이러한 점을 이용하여 관리자 권한으로 프로그램을 실행시킬 수 있다.

실습

절대 해당 내용을 악용하면 안됩니다. 악용 시 책임을 지지 않습니다.

먼저 피해자의 PC에 취약한 버전의 notepad++ 인스톨러와 공격자가 직접 제작한 regsvr32.exe를 위치시킨다.

 

이후에 칼리 리눅스에서 리버스 쉘 연결을 위해 4444번 포트로 리스닝을 시작한다.

 

이후에 피해자의 PC에서 인스톨러를 실행하면 UAC 화면이 실행되어 관리자 권한으로 실행되는 것을 확인한다.

 

계속해서 설치를 진행한다.

 

설치를 진행 시 칼리 리눅스에서 피해자의 PC로 쉘이 연결된 것을 확인할 수 있다.

 

이어서 권한을 확인하기 위해 "whoami" 명령어를 실행한 결과 test 계정임을 확인한 수 있다.

 

권한 상승이 된다고 하였는데 "whoami" 명령어 입력 시 SYSTEM이나 Administrator 계정으로 출력이 되지 않는다. 윈도우에서 관리자 권한을 가진 사용자(test)가 UAC 프롬프트에서 "예"를 눌러 인스톨러를 '관리자 권한으로 실행'하더라도, 프로세스의 소유자는 여전히 사용자(test)로 남아있다.

해당 계정의 권한을 확인하기 위해 "whoami /groups" 명령어를 실행한 결과 High Mandatory Level임을 알 수 있다. High Mandatory Level이라는 것은 관리자 권한이라는 뜻이다.

 

Mandatory Integrity Control

Mandatory Integrity Control은 윈도우 Vista부터 도입된 Windows Vista부터 도입된 보안 메커니즘으로, 프로세스나 개체(파일, 레지스트리 키 등)에 무결성 수준(Integrity Level) 을 부여해 접근을 제어한다.

수준 레벨 대표 예시
SYSTEM 0x4000 SYSTEM 프로세스
High 0x3000 관리자 권한 프로세스
Medium 0x2000 일반 사용자 프로세스
Low 0x1000 브라우저, 샌드박스, 임시파일
Untrusted 0x0000 극도로 제한 프로세스

 

대응 방안

해당 CVE 취약점은 사용자 측면에서 대응할 수 있는 것은 notepad++ 인스톨러 실행 시 시 안전한 버전으로 설치하는 것이다. 또한 해당 CVE를 악용하기 위해서는 사회공학 기법(피싱 등)이 필요하다. 즉 출처를 알 수 없는 곳에서 받은 인스톨러는 실행하지 않는 것이 좋다.