Notepad++는 무료 오픈 소스 소스 코드 편집기입니다. 8.9.6.1 이전에는 config.xml의 <GUIConfig name="commandLineInterpreter"> 태그를 NppXml::value()(Parameters.cpp:6430)에서 읽고 유효성 검사, 화이트리스트 또는 디지털 서명 확인 없이 _nppGUI._commandLineInterpreter에 저장했습니다. 사용자가 IDM_FILE_OPEN_CMD(파일 → 포함 폴더 열기 → cmd)를 트리거하면 NppCommands.cpp:228은 이 값을 사용하여 Command 개체를 생성하고 run()을 호출합니다. 이는 ShellExecute(RunDlg.cpp:221)를 호출합니다.
Notepad++는 무료 오픈 소스 소스 코드 편집기입니다. 8.9.6.1 이전에는 config.xml의 태그를 NppXml::value()(Parameters.cpp:6430)에서 읽고 유효성 검사, 화이트리스트 또는 디지털 서명 확인 없이 _nppGUI._commandLineInterpreter에 저장했습니다. 사용자가 IDM_FILE_OPEN_CMD(파일 → 포함 폴더 열기 → cmd)를 트리거하면 NppCommands.cpp:228은 이 값을 사용하여 Command 개체를 생성하고 공격자가 제어하는 문자열을 실행 경로로 사용하여 ShellExecute(RunDlg.cpp:221)를 호출하는 run()을 호출합니다. 이 취약점은 8.9.6.1에서 수정되었습니다.
왜 이 VPI인가 (설명가능 · 실험적)
VPI 산정 기준
| 영향도 | 78.00 |
| 악용 신호(PoC 존재) | ×1.20 |
| VPI | 93.60 |
VPI 공식 vpi-v1 기준