Windows快捷方式作为恶意软件载体的利用可能被终结
一家第三方补丁管理公司正在缩短攻击者利用LNK文件夹带恶意命令的行为,而微软则倾向于讲述完整的故事。
攻击者多年来一直滥用Windows处理LNK快捷方式文件的方式,将恶意命令隐藏在显而易见的“目标”字段中,这个长期存在的问题可能终于得到了修复,现在已有不止一个补丁可供用户使用。
问题在于,威胁行为者可以将有害的有效载荷隐藏在从互联网下载的LNK文件的“目标”字段中,并添加空白填充,使得任何检查该字段的人都无法看到有效载荷。
微软一直不愿将此问题归类为漏洞。
“我们已经调查了这份报告,并确定它不符合归类为漏洞的标准,”微软在2025年11月的一份公告中表示。“Microsoft Defender 具备检测并阻止此类威胁活动的功能,智能应用控制通过阻止来自互联网的恶意文件提供了额外的保护层。”
然而,第三方补丁提供商0patch在其博客文章中指出,最近的Windows更新通过强制“目标”字段显示所有参数,悄悄地解决了这个问题。即便如此,该公司表示,该漏洞利用仍然可能成功。该公司表示,其自身的微补丁提供了更有效的解决方案。
这两种修复措施是在多年报告LNK文件被来自朝鲜、伊朗、俄罗斯的APT组织利用,以及最近针对欧洲外交官的与中国有关联的活动之后出现的。
微软的补丁 Windows快捷方式文件(.lnk)长期以来一直是攻击者的便利藏身之处,因为Windows资源管理器在快捷方式的属性中只显示命令的前260个字符。在长串空格之后附加的任何内容对用户来说都是不可见的。
该问题被追踪为CVE-2025-9491,安全分析师为其分配了高严重性CVSS评分7.0。
“.lnk文件结构允许目标参数是非常长的字符串(数万个字符),但‘属性’对话框只显示前260个字符,默默地截断其余部分,”0patch研究人员说。“因此,可以构造一个运行非常长的PowerShell或BAT脚本的.lnk文件,但查看其属性的用户只会看到前260个字符。”这些显示的字符可以大部分是空白,从而将恶意元素完全推出视线。
对于受害者来说,.lnk文件看起来像是打开了一个文件夹或启动了一个受信任的应用程序,但实际上,它可以执行任意脚本、投放器或“无文件攻击”命令。
0patch研究人员确认,在微软“悄悄地”将修复程序捆绑到其11月的Windows更新中后,问题已得到一定程度的解决。“在其修补的63个漏洞中,没有提及任何与此问题相关的内容,”研究人员补充说,修复很可能是以功能错误而非安全漏洞的名义应用的。
“现在,.lnk文件的‘属性’对话框会显示包含参数的整个目标命令,无论它有多长,”研究人员补充道。微软没有立即回应CSO的置评请求。
0patch声称其补丁更优 0patch对微软的补丁存在问题,它表示微软只修复了用户界面(可见性)部分,而没有修复底层的Windows行为(执行恶意命令)。微软补丁背后的假设是,一旦恶意命令在较长的.lnk目标字段中完全显示,用户可以手动发现它们。
0patch认为这很可能在两个方面失败。首先,只有经验丰富的IT用户才能通过查看目标字段来判断是否携带了恶意可执行文件。其次,在大多数合法情况下,目标字段超过260个字符的.lnk文件是通过编程(使用Windows API)创建的,默认由Windows资源管理器自动处理,而非手动处理。
因此,如果用户未能识别并阻止,微软的补丁仍然允许隐藏的恶意脚本执行。
为了解决这个问题,0patch为其Windows 7到11 22H2版本以及Windows Server 2008 R2到2022版本提出了自己的微补丁。如果一个进程通过Windows资源管理器打开.lnk文件,并且目标字段超过260个字符,它就会将目标截断为260个字符,并显示一个警告,提示可疑快捷方式已被缩短。这既警告了用户,又防止了恶意执行,0patch声称该修复成功处理了此前被Trend Micro识别出的1000多个恶意快捷方式。