注意: 本博文中引用的技术和工具可能已过时,不适用于当前情况。然而,这篇博文仍可作为学习机会,并可能更新或集成到现代工具和技术中。
使用受信任的证书和非默认的Empire选项将有助于增加您在网络中成功获取会话的机会。请按照以下说明进行设置。
首先,使用Let’s Encrypt为您的服务器获取签名的数字证书。
访问 https://certbot.eff.org/ 获取说明。此处还展示了在Debian上运行Apache的过程。首先,选择您的服务器软件和操作系统,本例中为Apache和Debian 8。
Certbot起始页
通过添加以下行,将Jessie Backports Repo添加到您的sources.list文件中(本例中为 /etc/apt/sources.list
):
|
|
然后使用以下命令更新:
|
|
安装Certbot包:
|
|
运行apache插件:
|
|
这将提示您回答一些问题。请注意,您需要有一个指向您服务器的域名(域名很便宜,只需购买一个),因为Let’s Encrypt不会为裸IP地址颁发证书。或者,您可以使用自签名证书,如 https://attackerkb.com/Powershell/Powershell_Empire 所述,这将不需要域名。
通过Let’s Encrypt成功设置
现在,将您的cert.pem和privkey.pem合并到同一个文件中,以供Empire使用(感谢Joff):
|
|
停止Apache,以便端口80和443可用于您的Empire监听器:
|
|
在Empire中,使用类似以下的选项。请注意,更改抖动和默认配置文件是为了尝试避免会话检测并增加成功获取会话的机会(感谢Derek):
|
|
注意: 有关编写监听器启动脚本的提示,请参见此处 – https://www.blackhillsinfosec.com/how-to-script-startup-of-empire-listeners/。
您现在在端口443上有一个HTTPS监听器。您可以使用以下Empire命令生成一个PowerShell命令,在受害者机器上运行以建立会话:
|
|
使用Empire启动器
将长长的PowerShell命令复制并粘贴到受害者的cmd.exe中,通过受信任的证书建立HTTPS会话。哇哦,哇哦!
*感谢Joff Thyer和Derek Banks的想法和帮助,使其得以实现。