T1574.008: 通过搜索顺序劫持进行路径拦截
摘要
攻击者可能通过劫持用于加载其他程序的搜索顺序来执行自己的恶意载荷。由于某些程序在调用其他程序时不使用完整路径,攻击者可能将自己的文件放置在调用程序所在的目录中,导致操作系统在调用程序请求时启动其恶意软件。 当攻击者滥用 Windows 搜索未给出路径的程序时所使用的顺序时,就发生了搜索顺序劫持。与 [DLL](https://attack.mitre.org/techniques/T1574/001) 搜索顺序劫持不同,搜索顺序因用于执行程序的方法而异。(Citation: Microsoft CreateProcess) (Citation: Windows NT Command Shell) (Citation: Microsoft WinExec) 然而,Windows 通常会在搜索 Windows 系统目录之前,先搜索发起程序所在的目录。发现某个易受搜索顺序劫持影响的程序(即未指定可执行文件路径的程序)的攻击者,可以通过创建一个以未正确指定的程序命名的程序并将其放置在发起程序的目录中来利用此漏洞。 例如,"example.exe" 使用命令行参数 <code>net user</code> 运行 "cmd.exe"。攻击者可以将一个名为 "net.exe" 的程序放置在 example.exe 所在的同一目录中,"net.exe" 将被运行,而不是 Windows 系统实用工具 net。此外,如果攻击者将一个名为 "net.com" 的程序放置在 "net.exe" 所在的同一目录中,那么由于 PATHEXT 下定义的可执行扩展名顺序,<code>cmd.exe /C net user</code> 将执行 "net.com" 而不是 "net.exe"。(Citation: Microsoft Environment Property) 搜索顺序劫持也是劫持 DLL 加载的常见做法,并在 [DLL](https://attack.mitre.org/techniques/T1574/001) 中有所涵盖。
来源归属
来源:MITRE ATT&CK · 置信度:high
平台
- Windows
战术
Stealth
参考来源
- https://attack.mitre.org/techniques/T1574/008
- https://docs.microsoft.com/en-us/previous-versions//fd7hxfdd(v=vs.85)?redirectedfrom=MSDN
- https://learn.microsoft.com/en-us/windows/win32/api/processthreadsapi/nf-processthreadsapi-createprocessa
- https://learn.microsoft.com/en-us/windows/win32/api/winbase/nf-winbase-winexec
- https://docs.microsoft.com/en-us/previous-versions//cc723564(v=technet.10)?redirectedfrom=MSDN#XSLTsection127121120120