Commando VM 是什么?
Commando VM 是一个测试平台,Mandiant FireEye 为那些更熟悉 Windows 操作系统的渗透测试人员创建。
本质上,Commando VM 是 Kali 的姊妹产品——Kali 是一个广泛应用于渗透测试领域的 Linux 测试平台。这些测试平台都打包了测试人员在执行渗透测试任务时会使用的常见工具和脚本。测试人员可以在 Windows 7 SP1 或 Windows 10 上安装 Commando VM,且该程序可在 GitHub 上轻松获取。
为什么这很重要?
理解这些测试平台是什么以及如何使用它们,对红队和蓝队来说都很重要。在与客户合作时,我经常会问一个问题:他们是否熟悉诸如 Mimikatz 或 Bloodhound 这样的工具。令人惊讶的是,许多客户并不熟悉。这个事实让我有些担忧,因为我在学校学到的一个核心观点是:像攻击者一样思考对于保护自己免受攻击至关重要。与其说还有什么比使用攻击者可能对你和你正试图保护的环境加以利用的所有工具更好的方式?
Commando VM 让你更容易像攻击者一样思考。它打包了最新且最优秀的工具和脚本,以帮助蓝队学习这些工具的工作方式。
它可以用来做什么?
Commando VM 预装了许多用于各种用途的工具。Commando VM 可协助的部分类别包括:
- 信息收集
- 利用
- Web 应用测试
一旦安装 Commando VM,下面列出的所有工具都将可供使用。
信息收集
信息收集是评估你环境的重要组成部分。识别在不具备权限的情况下攻击者可能看到哪些暴露内容,是理解你需要加固和保护哪些方面的关键。请记住:如果你能借助这些工具和脚本看到它们,那么攻击者也同样能够看到。
- Nmap——扫描与枚举是理解环境的关键。Nmap 扫描结果可以确定网络中有哪些主机可用、这些主机运行哪些服务,以及这些主机上哪些端口是开放的。
- BloodHound——扫描 Active Directory 环境,并理解可能由于权限配置而存在的复杂攻击路径,是所有蓝队人员必须要做的事情。像 Bloodhound 这样的工具可以帮助你识别这些路径存在于哪里,并高效地对整改步骤进行优先级排序。
利用
完成一定程度的侦察之后,下一步就是尝试利用你所发现的内容。比如,如果你已经确认某台机器上存在会话,或某个用户拥有相应权限,那么就有工具可以帮助你利用这些权限或会话来获得优势。
- Invoke-ACLpwn – 该工具利用 Bloodhound 的部分功能来发现 AD 中现有的权限关系。它会发现这些权限,并自动尝试通过一连串的方式对其进行利用,以将权限提升到 Domain Admin。
- Mimikatz – 该工具利用 Windows 和 Active Directory,最常用于类似 Pass-the-Hash 或 DCSync 这样的攻击。通过信息收集进行的会话枚举,可能会帮助识别可用于 权限提升 的目标。如果具有管理员权限或更高权限的用户在你可以访问的机器上存在会话,那么你可以使用 Mimikatz 访问其账户,并在整个环境中实现权限提升或横向移动。
Web 应用测试
如果贵公司或您的环境使用内部 Web 应用程序,那么进行渗透测试对您而言会更有利。一旦有人进入您的环境,如果他们发现这些应用程序的存在,就很容易使用 Commando VM 工具来查找漏洞。本节内容至关重要,因为有些容易被发现的漏洞可以在任何正式介入之前就先行加以修复。
- Burp Suite——这款工具可帮助发现并利用 Web 应用程序中的漏洞。只需在您浏览应用程序的所有网页时设置代理/监听器,就可以立即启动许多自动扫描,从而识别并说明漏洞。如果通过一次简单的 Burp Suite 扫描就能找到它,那么经验丰富的攻击者也同样可以。
下载 Commando VM 后,您就可以访问这些工具;并且必须了解每一款工具的用途以及适用范围。如果不了解的话,您将很难识别漏洞、理解权限关系并评估您的环境——这些都会让您暴露在攻击之下。然而,第一步是知道如何访问它们,接下来我们将对此进行说明。
Commando VM 安装与配置
到这里,我们已经从高层概述了 Commando VM、它为何重要,以及安装后可以访问的一些现有工具。接下来,我们将按步骤讲解该平台的安装与配置。
先决条件
您可以在虚拟机或物理机上安装 Commando VM。不过,我建议使用虚拟机,以便于部署、管理和使用.. 虚拟机还允许您在过程中创建快照,并从遇到的任何问题中回滚。
要运行 Commando VM,您需要满足一些最低要求。就我的测试而言,我使用了以下配置:
- 60 GB 的存储空间
- 内存 2 GB
不过,如果查看 GitHub page,他们建议:
- 80+ GB 的存储空间
- 4+ GB 内存
- 2 个网络适配器
如前所述,Commando VN 包可以安装在 Windows 7 SP1 或 Windows 10 上,尽管 Windows 10 允许安装更多功能。无论哪种情况,都请确保系统已完全打上补丁。另外,在开始安装过程之前,请先创建快照。
Commando VM 安装
你可以从 GitHub here 下载 Commando VM。
下载完成后,Commando VM 仅需三个简单步骤即可安装:
- 以提升权限启动 PowerShell。
- 使用以下命令将执行策略设置为 unrestricted(默认情况下该选项处于禁用状态):Set-ExecutionPolicy unrestricted。
- 在 commando-vm-master 包中运行 ps1installation 脚本:
Commando VM 配置
如您所见,安装脚本执行时会先进行一些检查,并询问您是否希望在安装前创建快照。每次重启之后,它都会请求您的凭据以登录并继续安装。在此过程中,PowerShell 窗口会向您更新当前正在安装的内容。您还会看到多种弹窗,用于显示正在自动安装的软件。由于用于渗透测试的机器不需要 Windows 预装的许多功能,Commando VM 会删除或禁用其中的很多功能。
从开始到结束,整个过程大约需要一个半小时,并且会重启五次或更多次。每次重启大约需要 10 到 15 分钟,随后系统会重新启动、自动登录,并继续安装更多应用程序。根据虚拟机的资源和网络速度不同,整个过程可能会更短或更长。等到它使用新的背景和命令提示符再次为您登录时,就表示完成了。再次创建一个快照,这样在需要时您就可以从头开始。
完成安装和重启过程后,您可以查看各种工具。然后,您可以根据自己的需求和关注点来配置设置。
所包含工具概览
如前所述,Commando VM 包含了很多工具。事实上,在安装过程中,我们的硬盘上安装了超过 2GB 的工具。幸运的是,工具列表被按类别划分,因此很容易找到你需要的那一项:
以下是我觉得特别有意思的一些工具:
- Active Directory 工具
- 远程服务器管理工具(RSAT)
- SQL Server 命令行实用工具
- Sysinternals
- 信息收集
- BloodHound
- nmap
- ADACLScanner
- 网络工具
- WireShark
- 利用
- PrivExchange
- Invoke-ACLPwn
- metasploit
- 密码攻击
- DSInternals
- hashcat
- 域密码喷射
- mimikatz
- ASREPRoast
- 漏洞分析
- Grouper2
- zBang
- Web 应用程序
- OWASP ZAP
- BurpSuite
FAQ
FireEye Commando VM 是什么?
Commando VM 是由 Mandiant FireEye 创建的测试平台,面向更习惯使用 Windows 操作系统的渗透测试人员。
安装 Commando VM 需要多长时间?
安装 Commando VM 大约需要一个半小时。
分享到
了解更多
关于作者
Kevin Joyce
产品管理总监
Netwrix 产品管理总监。Kevin 对网络安全充满热情,尤其致力于理解攻击者为利用组织环境所采用的策略与技术。凭借八年的产品管理经验,并专注于 Active Directory 和 Windows 安全,他将这种热情投入到帮助构建解决方案中,助力组织保护其身份、基础设施和数据。