🇰🇷 한글 설명
Notepad++ 8.9.6.1 미만 버전에서 shortcuts.xml 파일의 <UserDefinedCommands> 내 <Command> 태그에 대한 검증 미흡으로 인해 발생합니다. 공격자가 조작된 명령어를 삽입하면 사용자가 실행 메뉴를 클릭할 때 ShellExecute를 통해 임의의 명령어가 실행될 수 있습니다.
💡 쉬운 설명
메모장 프로그램의 설정 파일에 악성 명령어를 몰래 숨겨두는 공격입니다. 사용자가 메뉴를 클릭하는 순간 해커가 의도한 프로그램이 실행되어 컴퓨터를 장악할 수 있습니다.
🇺🇸 원문 (English)
Notepad++ is a free and open-source source code editor. Prior to 8.9.6.1, the <Command> tag text content inside <UserDefinedCommands> in shortcuts.xml is read by NppXml::value(aNode) (Parameters.cpp:3658) in the feedUserCmds() function and stored in UserCommand._cmd without any validation. When the user clicks the corresponding entry in the Run menu, NppCommands.cpp:4264 creates a Command object with string2wstring(ucmd.getCmd()) and calls run(), which invokes ShellExecute (RunDlg.cpp:221) with the attacker-controlled string as the executable path. The injected command appears as a normal menu item in the Run menu, making it a viable persistence mechanism. This vulnerability is fixed in 8.9.6.1.
📍 영향받는 시스템
Notepad++ 8.9.6.1 미만 모든 버전
⚔️ 공격 벡터
조작된 shortcuts.xml 파일을 통한 명령 주입 및 사용자 메뉴 클릭 유도
🛡️ 대응 방법
Notepad++를 최신 버전인 8.9.6.1 이상으로 업데이트하십시오.
🔧 검증 코드
출력된 버전 번호가 8.9.6.1보다 낮으면 취약한 상태입니다.
notepad++ --version 2>/dev/null || powershell -command "(Get-Item 'C:\Program Files\Notepad++\notepad++.exe').VersionInfo.FileVersion"
🇰🇷 KISA(한국인터넷진흥원) 보안 권고
이 CVE에 대한 한국 공식 권고 (1건)
Notepad++ 제품 보안 업데이트 권고
P4
📅 2026-06-01 · sec_notice
Notepad++ 제품에서 Out-of-bounds Read 및 OS Command Injection 취약점이 발견되었습니다. 영향을 받는 버전의 사용자는 원격 코드 실행 등의 위험을 방지하기 위해 최신 보안 버전으로 즉시 업데이트해야 합니다.