使用Empire自动获取域管理员
译:backlion
前言
自从和被应用来,对AD渗透已经可以获取到内网环境95%的信息量。作者发现自己一遍又一遍地在做同样重复的事情,当发生这种情况时,就应该考虑到自动化,毕竟一个自动获得域管理员的自动化脚本是提高工作效率最好的办法。此外,刚刚推出了一个RESTful API的接口,可以轻松创建与之交互的第三方脚本。
项目目标和实施
最初,作者本来想要的是通过BloodHounds输出信息,并解析它,将其提供输入到Empire中,使其成为流程化。可是,BloodHound并没有使用域特权升级(如SYSVOL中的GPP密码。所以作者想要一个更灵活的BloodHound版本的“攻击模板”。 此外,Empire拥有BloodHound的大部分核心功能,它包含了BloodHound上的所有功能。作者坚持使用Empire,并使用RESTful API自动化所有内容。 这也使得能够自由地解析模块的输出,并且对整体的逻辑和用户反馈有更多的输出控制。
设计流程图
以下展示了DeathStar项目的设计流程:
环境配置
DeathStar -
Empire -
1.下载empire并且安装运行:
git clone https://github.com/EmpireProject/Empirecd Empire/setup && ./install.sh && cd ..# Start the Empire console and RESTful APIpython empire --rest --username backlion --password Password@123
2.启动empier的控制台和RESTful API服务,并启动运行DeathStar:
git clone https://github.com/byt3bl33d3r/DeathStar# Death Star is written in Python3pip3 install -r requirements.txt# Supply the username and password you started Empire's RESTful API with./DeathStar.py -u backlion -p Password@123
3.如果一切顺利,DeathStar会创建一个http侦听,应该可以看到"Polling for Agents"状态:这意味着已经通过了empire的RESTful API接口验证,而且DeathStar正在监听第一个代理。这里需要的只是你在代理上加入域主机即可。现在需要的只是域主机连接机器上的代理,如何做到这一点已超出本文的范围。作者建议你使用crackmapexec。
视频演示
一旦得到第一个代理,DeathStar将接管,将开始自动化提权。以下是两个不同情况下获取域管理员的DeathStar视频
1.在第一个视频中,它使用SYSVOL漏洞中的GPP密码来提升域权限,使用解密的凭证横向扩展到应用GPO的机器上,并最终登录到已登录域管理员的计算机上,然后枚举正在运行的进程和 进入一个在Domain Admin帐户下运行的进程(默认情况下是explorer.exe):
2.第二个视频,它实际上获得域管理员的凭据是使用Mimikatz和利用本地管理员的关系:
小结
DeathStar演示了如何使用现有的开源工具集自动获取Active Directory环境中的域管理员权限.