☠
🐛
📝
Notepad++ RCE 漏洞笔记
跨平台双杀 · Windows 编辑器篇
(节奏切换:稍缓,但暗含危机感)
接下来换个平台,看 Windows。
编号 CVE-2026-48778 CVSS 7.8
影响 Notepad++ 8.9.6 及之前 所有版本
注意!是所有版本!
这个漏洞从 Notepad++ 最初加入 commandLineInterpreter 配置项的那天起就存在了,可能也潜伏了十几年。
又一个十年级老洞...
Notepad++ 是什么?
Notepad++ 应该很多人都用过吧。轻量、免费、插件多,开发者的装机必备。
但他们可能没注意过它菜单栏里有个功能:
点一下,在当前文件目录打开命令提示符。
但这个「cmd」到底是什么程序执行的呢?
配置解析
Notepad++ 启动的时候会读一个配置文件叫 config.xml,里面有个字段叫 commandLineInterpreter,默认值是 cmd.exe。
config.xml
<GUIConfig name="commandLineInterpreter">cmd.exe</GUIConfig>
点那个菜单功能的时候,Notepad++ 拿这个字段的值构造一个命令,然后丢给 Windows 的 ShellExecute 执行。
ShellExecute 直接执行!
然而...
Notepad++ 读完这个字段之后,不做白名单校验,不做路径合法性验证。
cmd.exe 可以,powershell.exe 可以,甚至攻击者放在任意目录里的恶意程序也可以
信任边界再次失效!
—— 核心问题:配置文件里的程序路径,被无条件信任了。