CVE-2026-48800
Notepad++:通过 shortcuts.xml 用户命令注入实现任意代码执行
- 已发布
- 2026年6月26日
- 已更新
- 2026年6月30日
- 分配 CNA
- GitHub_M
- 观察到的证据
- 2026年8月8日
初级CVSS
nvd · CVSS 3.1
CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H低 · 未来 30 天
- 百分位
- 11.4%
- 型号日期
- 2026年9月21日
EPSS 是统计估计,而不是确定性或影响衡量标准。将其与 CVSS、KEV 状态、暴露程度和您的环境相结合。
总结
Notepad++ 是一个免费开源的源代码编辑器。在 8.9.6.1 之前,shortcuts.xml 中 <UserDefinedCommands> 内的 <Command> 标签文本内容会被 feedUserCmds() 函数中的 NppXml::value(aNode)(Parameters.cpp:3658)读取,并存储在 UserCommand._cmd 中,且没有任何验证。当用户点击“运行”菜单中的对应条目时,NppCommands.cpp:4264 会使用 string2wstring(ucmd.getCmd()) 创建一个 Command 对象并调用 run(),后者会以攻击者控制的字符串作为可执行文件路径调用 ShellExecute(RunDlg.cpp:221)。注入的命令会作为普通菜单项出现在“运行”菜单中,从而成为一种可行的持久化机制。该漏洞已在 8.9.6.1 中修复。
来源
2针对Notepad++ <= 8.9.6中的三个漏洞的概念验证脚本,已在v8.9.6.1(2026-05-26)中修补:CVE-2026-48770 / CVE-2026-48778 / CVE-2026-48800
CVE-2026-48800的概念验证漏洞利用,演示了通过恶意shortcuts.xml在Notepad++ ≤ 8.9.6中执行任意代码。包括触发说明和官方公告链接。
负责任的使用
仅在您拥有或有权测试的系统上使用漏洞信息。 Kitploit 链接到公共研究元数据,并且不存储漏洞代码或恶意负载。