红队渗透在过程中会用到很多工具,下面介绍一些核心常用的。
Metasploit 框架:
尽管 Metasploit 框架最初是从 2003 年开发的,但它现在仍然是 一个非常棒的工具。这是由于最初的开发者 H.D. Moore 和非常活跃的社区为它提供持续支持。这个社区驱动的框 架,似乎每天更新,拥有所 有最新的公开漏洞的利用、后渗透利用模块、辅助模块等等。
对于红队项目,我们可能使用 Metasploit 通过MS17-010永恒之蓝漏洞危害内部系统,以获得我们的第一个内网 shell,或者我们可能使用 Metasploit 为我们的社会工程攻击生成一个 Meterpreter payload。
具体使用会在后面详细介绍。
Cobalt Strike:
Cobalt Strike 是迄今为止我最喜欢的红队模拟工具之一。什么是 Cobalt Strike 呢?它是一种用来后期持久渗透, 横向移动,流量隐藏、数据窃取的工具。 Cobalt Strike 并没有直接的漏洞利用,也没有通过 最新的 0-Day 漏洞来 破坏系统。当你已经在服务器上执行了 CS 的恶意代码或者将 CS 用作网络钓鱼活动的一部分时,你就能感受到 CS 的功能是多么广泛并且强大。 一旦你可以在机器上执行 Cobalt Strike 的 payload,它创建一个 Beacon(远控木马 功能)连接回连到 C2 服务器(teamserver)。
新的 Cobalt Strike 许可证的费用为3500美元(单用户一年),所以它并不是一个便宜工具。 不过该软件有免费的限 量试用版。(后面的教程会提供破解版)
Cobalt Strike 的 Aggressor 脚本
Cobalt Strike 项目有很多贡献者。Aggressor 脚本是一种面向红队操作和对手模拟的脚本语言,其灵感来源于可脚 本化的 IRC 客户端和机器人。开发它的目的有两个:
1. 你可以创建长时间运行的机器人来模拟虚拟红队成员,并与你并肩进行黑客攻击
2. 你还可以根据你的需要使用它来扩展和修改 Cobalt Strike 客户端的功能 官方介绍页面:https://www.cobalt strike.com/aggressor-script/index.html
例子:HarleyQu1nn 将不同的 Aggressor 脚本放在一个项目中提供给你用于后续漏洞利用: http://bit.ly/2qxIwPE
PowerShell Empire
Empire 是一个后期漏洞利用的框架,包含一个纯 PowerShell2.0 的 Windows 代理和一个纯 Python 2.6/2.7 的 Linux/OS X 代理。它是以前的 PowerShell Empire 和 Python EmPyre 项目的合并。 该框 架提供了加密安全通信 和灵活的架构。在 PowerShell 方面,Empire 实现了无需 powershell.exe 就可运行 PowerShell 代理的功能。并 且 Empire 有很多可以快速部署的后期漏洞利用模块,从键盘记录 器到 Mimikatz。Empire 还可以调整通信,躲避 网络检测。所有的这些功能都封装在一个以实用性为重点的 框架中。
对于红队人员来说,PowerShell 是我们最好的朋友之一。在初始化有效 payload 之后,所有随后的攻击都保存在 内存中。Empire 最好的地方就是它被开发者积极地维护和更新中,以便你可以使用最新的 后期漏洞利用模块进行 攻击。 它们还具有适用于 Linux 和 OS X 的 C2 连接。因此,你仍然可以创建基于 MAC 的 Office 宏,当执行之 后,在 Empire 中拥有一个全新的代理
dnscat2
内网出口一般对出站流量做了严格限制,但是通常不会限制 DNS 请求,也就是 UDP 53 请求。dnscat2 就是一款 利用 DNS 协议创建加密 C2 隧道来控制服务器的工具,所以说这种隧道几乎在每个网络中 都可以使用。
dnscat2 由客户端和服务端两部分组成。 基于 DNS 的 C2 服务器连接的渗透方案提供了一种很好的机制来隐藏你的流量,规避网络传感器并绕过网络限 制。在许多限制性环境或生产环境中,我们遇到的网 络要么直接不允许出站流量,要么流量也会被严格的限制或监 控。为了绕过这些保护,我们可以使用像 dnscat2 这样的工具。我们关注 dnscat2 的原因是因为它不需要 root权 限就允许shell访问和数据传 输。 在许多安全环境中,直接使用 UDP 或 TCP 出站会受到限制。 为什么不利用基础架构中已经内置的服务呢?许多受 保护的网络包含一个 DNS 服务器来解析内部主机,同时还允许解析外部资源。通过 为我们拥有的恶意域名设置一 个权威服务器,我们可以利用这些 DNS 解析来对我们的恶意软件进行命令执行和控制。
Nishang
Nishang 是一个脚本和 payload 的框架和集合,可以使用 PowerShell 进行进攻型安全测试,渗透测试和红队测 试。 Nishang 在渗透测试的所有阶段都很有用。 虽然 Nishang 实际上是一系列令人惊叹的 PowerShell 脚本的集合,但也包含一些轻量级的 C2 脚本
总结:
整个红队过程可能会用到很多神器,以上列举了常用的一部分,欢迎补充:)