在攻击链中(很好地描述这里) html 中的 javascript 被执行并调用 ms-msdt:// url。在此 url 中嵌入了 powershell,如示例所示:
window.location.href = "ms-msdt:/id PCWDiagnostic /skip force /param "IT_RebrowseForFile=cal?c IT_SelectProgram=NotListed IT_BrowseForFile=h$(IEX('calc.exe'))i/../../../../../../../../../../../../../../../Windows/System32/mpsigstub.exe "";
我的问题是:为什么要执行此 powershell,究竟是谁执行的?这是与 msdt 相关的错误吗?还是仅与办公应用程序/文档一起发生?我想了解导致此执行的根本原因/错误是什么。
答案1
这里使用 MS Word 作为传递有效载荷的方法。由于 msdt 中的错误,Powershell 脚本被执行。ms-msdt 协议将给出的字符串直接传递给 msdt.exe 并执行脚本。无需使用 word 文件即可执行 powershell 脚本。为此,您必须将恶意 html 页面本地托管。接下来,不要使用浏览器打开 html 文件,而是使用 powershell 中的 wget 或 iwr 命令调用本地主机 url。此方法将帮助您在不使用 word 的情况下调用 powershell 脚本。