Skip to content

Latest commit

 

History

History
274 lines (151 loc) · 34.9 KB

File metadata and controls

274 lines (151 loc) · 34.9 KB

二、虚拟环境的选择

在本章中,我们将讨论可供选择的不同虚拟环境平台。我们将介绍现有的大多数主要虚拟技术平台。我们将讨论以下主题:

  • 商业环境
  • 图像转换
  • 从物理环境转换为虚拟环境

我们必须做的最具挑战性的事情之一是决定要使用的虚拟化软件。我们不仅要决定对所选软件要做什么,还需要决定是要构建专用虚拟平台还是在现有系统上运行软件。在本书中,我们将重点介绍在现有系统上创建虚拟环境。但是,至少简要讨论一下创建裸机环境的选项仍然很重要。

当我们安装裸机环境(也称为虚拟环境的 1 型安装)时,操作系统由产品以虚拟机监控程序的形式提供。尽管这是创建强大而复杂的体系结构的一种非常有用的方法,但它需要硬件的投入,因此在大多数情况下,我们无法随身携带。如果你在实验室环境中建造实验室,那么这是你绝对应该探索的东西,因为你在创建机器时拥有强大的能力和选择。

以下屏幕截图显示了类型 1 裸机架构的示例:

Choosing the Virtual Environment

如前面的屏幕截图所示,在类型 1 或裸机体系结构中,虚拟机监控程序安装在系统硬件中,虚拟化资源由虚拟机监控程序提供。使用虚拟裸机解决方案时,可以配置大量选项以包括资源分配。

1 型虚拟化 ToR0T0 提供了一个健壮的和非常强大的解决方案来考虑当你正在建立你的笔试实验室。然而,让部署成为挑战的一件事是,操作系统是由已经安装在硬件中的虚拟机监控程序提供的,这可能会对某些硬件版本造成挑战;此外,在大多数情况下,这种类型的解决方案最好在桌面或服务器类型的机器上实现。虽然它可以在笔记本电脑上实现,但在其他平台上更为常见。一个可能的选择是创建您的实验室环境,然后远程访问它。从虚拟化的角度来看,它不会影响我们创建的机器;类型 1 或类型 2 就足够了。在本书中,我们将使用类型 2 虚拟化。下面的屏幕截图显示了类型 2 虚拟化的示例:

Choosing the Virtual Environment

可以看出,在类型 2 虚拟化中,虚拟机监控程序运行在操作系统上,操作系统运行在系统硬件上。同样,这是我们将在本书中使用的架构。现在,我们将研究类型 1 和类型 2 解决方案。从第 3 章开始规划范围,我们将继续关注类型 2 解决方案。

开放源代码和自由环境

有许多免费开源虚拟环境;我们将在这里看一些比较流行的。在本节中,我们将讨论以下产品:

  • VMware 播放器
  • 虚拟机
  • Xen
  • 虚拟化
  • vSphere 虚拟机监控程序

VMware 播放器

VMware 的团队创建了许多免费的不同产品。在撰写本书时,VMware Player 仍然是免费的,但不幸的是,它只面向家庭用户。过去最大的限制之一是无法使用 VMware Player 构建和创建虚拟机。谢天谢地,最新版本允许您创建计算机。当前版本的局限性在于网络部门;这是因为您无法使用 VMware Player 工具创建其他交换机。为了构建虚拟 pentesting 实验室,这是我们真正需要的,如果您决定使用它,那么您只能将 VMware Player 用于基本的网络体系结构。它是免费的,这就是为什么我们要报道它。你要做的第一件事就是下载它。您可以从下载 https://my.vmware.com/web/vmware/free#desktop_end_user_computing/vmware_player/6_0 。下载后,您必须通过在网站注册获得许可证密钥。拥有密钥后,您可以在安装期间或以后输入密钥,这样您就可以使用该工具。作为参考,要使用该工具,《用户指南》是一个很好的来源,互联网上也有一些教程。同样,它提供给我们的功能有限,但一个可行的解决方案是使用它来测试您构建的机器以及其他机器,而无需为该软件购买另一个许可证。

虚拟箱

OracleVirtualBox 是一个非常强大的工具,在选择虚拟化解决方案时是最受欢迎的工具之一。事实上,它是如此强大和自由使它成为一个伟大的选择。该工具在各种平台上运行良好,并提供桌面和企业级功能。撰写本书时的当前版本为 4.3.2;您可以从下载 https://www.virtualbox.org/wiki/Downloads 。有适用于 Windows、Mac、Linux 和 Solaris 的版本。VirtualBox 第 3 版的审查报告了该工具的一些问题,但自从第 4 版发布以来,就没有以前版本的问题报告。

由于它是如此流行和可行的选择,我们将使用此工具创建一个虚拟机。如果您以前没有使用过 VirtualBox,那么用户指南也非常有用。您可以从下载 https://www.virtualbox.org/wiki/Documentation

一旦您安装了软件,程序将自动启动,您应该看到一个类似于以下屏幕截图所示的屏幕:

VirtualBox

我们需要一个 ISO 映像来用于我们的虚拟机。为此,我们将使用优秀的工具 SamuraiWeb 测试框架WTF。这是一个 web 应用测试框架,它是一个实时 Linux 环境,已预配置为 web 测试框架。这张 CD 包含了一些最好的开源和免费工具,可以用来测试和攻击网站。您可以从下载 ISO 图像 http://www.samurai-wtf.org/

要开始创建虚拟机,请单击新建开始该过程。在打开的创建虚拟机窗口中,在名称字段中输入Samurai并选择Linux作为操作系统。然后,选择所需版本并点击下一步

在弹出的下一个窗口中,您将为虚拟机选择 RAM;您可以将设置保留为默认值256 MB或将其更改为最适合您的另一个值。此窗口的示例显示在以下屏幕截图中:

VirtualBox

下一步我们想做的是为我们的虚拟机创建一个硬盘,但出于我们的目的,我们不打算使用硬盘;因此,我们将选择不添加虚拟硬盘设置并点击创建。您将被警告不要创建没有硬盘的虚拟机,但这没关系,因为这是我们想要做的。因此,阅读警告并点击继续

祝贺如果一切顺利,那么您刚刚在 VirtualBox 中创建了一个虚拟机。现在,您应该有一个窗口显示您创建的机器,它看起来类似于以下屏幕截图:

VirtualBox

我们现在准备启动我们的虚拟机!点击启动设置,启动虚拟机。在这里,您将收到一条消息,说明您需要如何选择要从中引导的光学映像,这就是我们下载的映像的来源。所以,我们现在就要这样做。在提示下,导航到已下载的 ISO 映像并引导 Samurai WTF 虚拟机。这是使用 VirtualBox 的过程,我们将不再在此继续。欢迎你自己进行实验和实践。需要注意的一点是,有时,在某些机器上,VirtualBox 软件在键盘和输入方面会有困难。如果发生这种情况,建议您加载可在找到的扩展 https://www.virtualbox.org/wiki/Downloads 。这就是为什么 VirtualBox 不是本书所选软件的原因之一。

Xen

无秘密是,多年来,i386 市场一直由 VMware 提供的解决方案占据主导地位,但随着时间的推移,市场上有大量的解决方案,这些解决方案继续扩大其追随者的规模。这就是 Xen 的用武之地。随着人们对它的了解和产品的不断改进,它越来越受欢迎,并将继续这样做。如果你是 Xen 的新手,你可能会问这个问题:什么是 Xen?这是一个很好的问题,详细解释它超出了本书的范围。有整本书都是关于 Xen 的,所以我们这里只介绍基本知识。Xen 是从英国剑桥大学开始的。从那时起,Xen 游戏中有许多玩家,这为该工具增加了特性和功能,从而提高了它的受欢迎程度。

Xen 项目启动后,正如 IT 界的典型情况,创始人创建了自己的公司 XenSource,然后该公司被 Citrix 接管。Citrix 扩展了该项目,并将其作为 VMware ESX 系列的解决方案提供。此外,其他供应商已将 Xen 添加到其产品供应商中,如 Red Hat 和 Novell。

欲了解最新信息或下载 Xen,请访问网站www.citrix.com。对于一个非常好的教程,即在 SUSE Linux 机器上设置 Xen 的分步指南,您可以参考 URLhttp://searchservervirtualization.techtarget.com/tip/Xen-and-virtualization-Preparing-SUSE-Linux-Enterprise-Server-10-for-virtualization 。请注意,需要免费注册,包括提供您的电子邮件地址以阅读文档。这是值得的,因为他们会在新论文发表时向你发送链接,所以它成为一个很好的、快速的参考,以保持更新。

当我还是一名本科生时,我有一位大学教授,他给了我一些合理的建议,我继续遵循,并建议其他人也这样做:每天花一个小时阅读一些东西或做一些与 IT 行业相关的事情。阅读本书的读者可能知道,IT 行业处于不断变化的状态,数据是易逝的,因此我们必须采取措施保持其新鲜。对我来说,25 年来,每天一小时已经成为我日常生活的一部分,并帮助我保持更新。

最后,当我们结束关于 Xen 的本节时,我们在构建复杂环境时需要的一个特性是能够从一种格式转换为另一种格式。这是我们将在本章后面介绍的内容,但对于 Xen,我们将与您共享一个参考资料,详细说明如何获取 Xen 虚拟机并将其转换为 Hyper-V 格式。您可以在中找到该信息 http://technet.microsoft.com/en-us/library/hh427283.aspx 。您会注意到参考资料来自 Microsoft,您还会注意到这仅适用于特定版本的 Microsoft System Center 软件,但很高兴知道这是可能的。因此,如果您曾经发现或拥有 Xen VM,并希望将其转换为在 Hyper-V 中使用,那么这是可能的。

Hyper-V

这是微软的虚拟化工具,是其虚拟 PC 产品的延续。虽然对虚拟化领域来说还比较陌生,但微软正在快速追赶。我发现他们工具中缺少的一个方面是在 Linux 和 Unix 上与桌面接口的联网和集成。一旦他们弄明白了这些,在为 pentesting 实验室选择虚拟环境时,他们将值得认真考虑。最初,Hyper-V 仅作为 Microsoft 服务器产品的一部分提供,从 Windows server 2008 开始,目前是 Windows server 2012。

现在,可以选择在 Windows 8 上安装该功能。微软的这一决定是基于这样一个事实,即该工具在其软件的服务器版本中非常流行,以至于他们希望扩展该工具,以便在虚拟化方面为客户提供更多选择。

Hyper-V 有两个主要要求,第一个要求是操作系统必须为 64 位。第二个经常被忽略的需求是机器中处理器的能力。Hyper-V 技术要求芯片支持二级地址转换SLAT)。要在服务器以外的平台上运行 Hyper-V,您需要具备以下条件之一:

  • Windows8 专业版
  • Windows 8 企业版

一旦您选择了平台,您可以将其添加为一项功能(如果您正在使用其中一台服务器),或者如果您选择了 Windows 8 平台之一,则可以从下载 Hyper-Vhttp://www.microsoft.com/en-us/download/details.aspx?id=36188 。Microsoft 将非服务器产品的 Hyper-V 版本称为客户端 Hyper-V。

无论平台如何,安装和配置都遵循相同的顺序。既然您有了 Hyper-V,我们将创建一个虚拟机,以便您可以完成创建一个虚拟机的过程。使用 Hyper-V,我们必须建立一个网络,并将其连接到该网络。我们可以在开始时设置,也可以在创建虚拟机后设置。出于我们的目的,我们将在开始虚拟机创建过程之前创建网络。在基本架构中,我们需要两个网络,一个连接到外部世界(例如,互联网),另一个连接到内部机器。为了简单起见,我们将它们称为外部网络内部网络

您需要做的第一件事是为 DHCP 服务器定义一个 DHCP 作用域192.168.177.0/24。这是一个用于外部访问的网络,如果您要使用这台机器,实验室将被要求以这种方式设置。如果您使用的是服务器平台,设置网络的步骤如下:

  1. 导航至启动管理工具Hyper-V 管理器

  2. 点击 Hyper-V 右侧窗格中的虚拟网络管理器,出现虚拟网络管理器窗口。

  3. Select New Virtual network on the left-hand pane and select External as the type of network, then click on Add. This is shown in the following screenshot:

    Hyper-V

创建 InternalNet 的过程是相同的,因此我们在这里不再重复。我们将完成使用 Hyper-V 创建虚拟机的步骤,直至成功引导,然后继续本章。

您将需要一个 ISO 图像,如果您有一个想要使用的图像,那么就可以了。我们将使用流行的 pentesting 框架,该框架来自攻击性安全性 Kali Linux。您可以从位置下载 ISO 图像 http://www.kali.org/downloads/ 。打开此链接后,选择要使用的版本并下载。下载后启动 Hyper-V。如果您使用的是服务器平台,步骤如下:

  1. 导航至启动管理工具Hyper-V 管理器

  2. 当程序打开时,导航到操作新建虚拟机,当新建虚拟机向导打开时,点击下一步

  3. 输入虚拟机的 Kali 名称,然后单击下一步。在内存部分,输入可以输入的最大 RAM,它至少应为 1024KB。Kali 需要至少 1GB 的内存才能高效运行。输入 RAM 后,单击下一步

  4. 这将带来网络连接选择;点击未连接,然后点击下一步两次。

  5. In the Installation Options window, select the radio button Install an operating system from a boot CD/DVD-ROM and then select the image file (ISO) and browse to the Kali image. Refer to the following screenshot:

    Hyper-V

    这是安装选项屏幕,供您参考

  6. 导航到 ISO 图像后,单击下一步。验证您的设置是否正确,然后单击完成

  7. We now want to configure our network adapter. Within the Hyper-V environment, this can be a tricky process; so, the safest way when you are dealing with machines that are not from the Windows family is to select the legacy card. Right-click on the Kali virtual machine you have created and select Legacy Network Adapter. Then, click on Add as shown in the following screenshot:

    Hyper-V

  8. 现在我们已经选择了网络适配器类型,我们必须将其连接到网络。在下拉窗口中,选择外部网络,点击应用,然后点击确定

  9. A new virtual network will appear on the left-hand side of the window. Select it and then enter the name as ExternalNet in the right-hand pane of the window. Ensure that the External radio button is selected, click on the network adapter of your computer, and then click on Apply, as shown in the following screenshot:

    Hyper-V

  10. 如果您收到与下一个屏幕截图类似的警告消息,请单击将其清除。只是为了让您知道您可能会失去连接,如果您确实失去了网络连接,则必须重新输入静态网络配置数据。

  11. If you do not want to be bothered by the alert again, then select the Please don't ask me again checkbox before you click on Yes, as shown in the following screenshot:

![Hyper-V](img/477-1_02_07.jpg)
  1. 我们现在已经准备好启动虚拟机。右键点击 Kali 虚拟机并选择启动。然后,再次右击并选择连接。您的虚拟机应该启动,您可以输入startx,这将启动环境。在这一点上,这取决于您对这个虚拟机的探索程度。我们将继续这一章,这样我们就可以通过虚拟化的不同选择,继续进行更大、更光明的事情。

vSphere 虚拟机监控程序

这是商业 To.T1 实体的免费版本,这是你应该为你的实验室环境考虑的东西。有一些版本可以在笔记本电脑上工作,并使其成为其移动实验室环境的一部分,但在我看来,这不是利用这种 1 型虚拟化解决方案功能的方法。

如前所述,类型 1 解决方案在系统本身的实际硬件上具有虚拟机监控程序功能。没有需要的仿真例程或与操作系统的交互;这是一个纯裸金属环境,在大多数情况下,相当于原始功率。

虽然安装非常容易执行,而且大多数安装都可以在无需帮助的情况下完成,但 VMware 站点有优秀的资源可供您使用,以帮助您进行安装。您可以在以下网站查看这些资源,包括如何执行设置的视频:

http://www.vmware.com/products/vsphere-hypervisor/gettingstarted.html

当您访问该站点时,您将看到,VMware 团队为您提供了大量参考资料,帮助您安装、配置和部署他们的虚拟化解决方案。这里最后要提到的是站点上列出的硬件要求;其中大多数都被认为是建议,最好在将产品作为首选解决方案之前测试其硬件。同样,这也是我们不建议在您的移动或笔记本电脑平台上使用此解决方案的另一个原因;在大多数情况下,当涉及到裸机虚拟解决方案时,笔记本电脑并没有我们想要的功能。

商业环境

与免费产品一样,我们想在本书中讨论许多商业环境。我们将研究类型 1 和类型 2 虚拟化解决方案。

vSphere

这是与 VMware 虚拟机监控程序讨论的功能的极其强大的延续;添加的功能和特性使得部署复杂的虚拟体系结构非常值得投资。该工具在自由变量之上和之外提供了许多附加选项。这些选项如下所示:

  • 跨多个物理主机共享计算和存储资源
  • 使用 VMware vCenter Server 集中管理多台主机™
  • 提供改进的服务级别和运营效率
  • 执行虚拟机的实时迁移
  • 利用虚拟机的自动负载平衡、业务连续性以及备份和恢复功能

如您所见,该工具有许多优化选项;但是,除非您正在构建一个复杂而复杂的测试实验室,否则此工具将超出我们作为解决方案所需的范围。如果你发现自己经营着庞大的全球团队,那么这绝对是一个你应该考虑的选择,如果它在你的预算之内。

VMware Player Plus

在撰写本文时,VMware Player Plus 是 VMware 集团推出的一款相对较新的产品。我们已经讨论了 VMware Player 工具。此版本所做的是提供附加功能。该工具旨在提供交付托管桌面的功能,允许您将 Player Plus 与配置有桌面映像的虚拟机一起交付。这减轻了向客户或任何其他组运送硬件的任何要求。

VMware Player Plus 的另一个功能是,它可以用于运行由其他商用 VMware 产品创建的受限虚拟机。这意味着您可以使用密码保护机器,如果用户没有密码,则他们无法运行机器。下面的屏幕截图显示了密码保护机器的示例:

VMware Player Plus

在撰写本书时,该工具并未提供试用下载,但您可以从中阅读更多信息 http://www.vmware.com/products/player/

XenServer

Citrix 的团队已经开发出了一个强大的竞争对手,可以与 VMware 提供的解决方案抗衡,这一点在他们的 XenServer 产品中表现得很明显。他们声称自己是云和桌面解决方案的领先数据中心平台;此外,根据他们的说法,最大的托管云中有五分之四是由 XenServer 托管的,这确实是一种说法。该产品可提供解决方案的一些示例如下:

  • 高度安全和灵活的网络结构
  • 创建和委派权限
  • 高可用性和负载平衡支持

与 vSphere 商业解决方案一样,这并不是我们构建实验室的真正需要,但对于那些希望使用 VMware 产品以外的产品的人来说,这是一种可能性。您可以找到更多信息,也可以从下载 http://www.citrix.com/products/xenserver/how-it-helps.html

VMware 工作站

位于 VMware 的团队已经参与虚拟化游戏一段时间了,它显示了您何时使用他们的工作站产品。对我来说,VMware Workstation 与大众的区别在于,您可以相对无缝地与插入主机的大多数(如果不是全部)设备集成。虽然使用 VMware Workstation 确实需要成本,但成本相对较低,而且它提供了创建极其多样化和复杂的体系结构的强大功能。到目前为止,它是我最喜欢的工具,我将在下一章和后续章节中使用它。正如我所提到的,微软的产品只出现了一小段时间,它肯定在改进,随着产品的不断成熟,这将是一场有趣的竞赛。这对我们来说是件好事!作为消费者,我们只能从这些试图超越对方的供应商中获益。

如前所述,强烈建议您考虑购买该软件。您可以从下载最新版本的 VMware Workstationhttp://www.vmware.com/products/workstation/workstation-evaluation 。与其他版本的软件一样,您必须注册并获得一个密钥才能启动虚拟机。

一旦你下载了它,你就可以安装这个软件了,这非常简单。如果您确实有任何疑问,《VMware Workstation 用户指南》编写得很好,是您的最佳参考资料。您也可以通过以下链接下载:

http://www.vmware.com/pdf/desktop/ws1001-using.pdf

有一个大型的社区论坛,也是关于该工具信息的极好参考。支持是 VMware 继续在主要虚拟化类别中领先的另一个原因。安装并打开程序后,您应该会在屏幕上看到与以下屏幕截图类似的显示:

VMware Workstation

正如您在前面的屏幕截图中所看到的,我们可以从许多选项开始。正如我们前面使用的 ISO 映像一样,我们将继续这一趋势,并添加另一项创建虚拟机的任务。为简单起见,我们将使用之前使用的相同 ISO Samurai WTF 映像,但欢迎您下载您选择的 ISO 映像并从此映像创建机器。一旦您选择了要使用的 ISO 映像,我们就可以开始安装了。要开始使用此虚拟机,我们将执行以下步骤:

  1. 点击新建虚拟机。这将启动新虚拟机向导。接受典型的默认设置,点击下一步

  2. In the next window, select the radio button Installer disc image file (iso) and browse to the location of the ISO file. Then, click on Next, as shown in the following screenshot:

    VMware Workstation

    在上一个屏幕截图中,您可能注意到操作系统没有被自动检测到;因此,我们必须手动输入详细信息。如果检测到,向导将在大多数情况下执行安装,而无需用户交互。

  3. 在来宾操作系统窗口中,选择Linux,在下拉菜单中点击其他****Linux 2.6.x 内核。完成选择后,单击下一步。接受默认设置并单击下一步

  4. 指定磁盘容量屏幕上,通读拆分磁盘的优缺点信息。如果您希望更改默认设置,您可以这样做,但对于大多数情况,默认设置是可以接受的,除非您打算使用大型计算机。

  5. Once you have made your decisions, click on Next. This should be the last screen; take a moment and review the information. Then, click on Finish and create your virtual machine. You should see the machine you created and the information for the machine configuration, as shown in the following screenshot:

    VMware Workstation

  6. 唯一要做的就是打开虚拟机的电源。点击打开此虚拟机电源,您的机器将启动。

现在,我们将为本书其他章节中使用的其中一台机器创建一个虚拟机。我们将要使用的机器已经创建,并且可以作为 VMware VMDK 文件格式的虚拟机使用。我们将在本章后面介绍虚拟硬盘驱动器的不同格式。我们想从www.OWASP.org上的开放式 Web 应用安全组OWASP)下载破碎的 Web 应用项目虚拟机。该虚拟机由 Mandiant 赞助,是实践 web 应用测试的优秀教程。您可以从下载虚拟机 http://sourceforge.net/projects/owaspbwa/files/

下载虚拟机后,将虚拟机解压缩到计算机上的文件夹中。一旦文件被提取,我们需要启动 VMware Workstation 并启动访问过程。以下是需要执行的步骤:

  1. 点击打开虚拟机。导航到提取文件的文件夹,并找到已损坏的 Web 应用项目 VM 的配置文件。

  2. Once you have located the file, select it and click on Open to open the file. This will open the VM and you should be in the configuration screen, as shown in the following screenshot:

    VMware Workstation

    正如您在前面的屏幕截图中所看到的,VM 被配置为在 NAT 接口上启动,我们将在启动 VM 后使用它。在本节的最后,我们将了解这个 NAT 接口在 VM 环境中的意义。

  3. 我们现在想要启动机器;点击打开此虚拟机电源,您的机器将启动。

  4. Once the machine has booted, you will see the login information for the machine to access it across the Internet. We could log in to the machine locally, but there really is no reason to do this. You are welcome to do this if you want to check the machine out or look around, but for our purposes, we will access it from the network. This is the preferred way to access it because it provides us with a GUI to all of the different tools within the VM. The VM screen that shows the status after the boot is shown in the following screenshot:

    VMware Workstation

这里我们需要的信息是分配给虚拟机的 IP 地址,这样我们就可以访问并查看它!打开您选择的浏览器,输入显示的 IP 地址,并打开断开的 web 应用项目 VM 的 web 界面。呈现给您的网页示例如以下屏幕截图所示:

VMware Workstation

如屏幕截图所示,在这个 VM 发行版中有许多工具,任何测试人员都可以从中受益。此处包含的教程和应用允许用户练习他们的技能和挑战,这些技能和挑战设置在不同的技能级别。我们鼓励你花很多时间在这里,并经常回来。当情况需要时,我们将在整本书中使用它。同样,自 Mandiant 赞助以来,VM 增加了许多额外的挑战。阅读本书的一些人可能熟悉 OWASP 的优秀教程 Web Goat。这个项目只是本教程的一个扩展,它还添加了 Irongeek 工具 Mutillidae。你可以在上阅读更多关于水母科的信息 http://www.irongeek.com/i.php?page=mutillidae/mutillidae-故意-vulnerable-php-owasp-top-10甚至在www.irongeek.com上观看一些信息视频。

在继续本章之前,我们还有一个主题要看;它是 VMware Workstation 内联网的强大功能。这是我购买并继续购买 VMware Workstation 的主要原因之一。在 VMware 工作站中,导航到编辑****虚拟网络编辑器。当窗口打开时,您将看到在 VMware 中配置的当前交换机。默认情况下,VMware 配置三个虚拟交换机,它们是 Vmnet0(用于桥接接口)、Vmnet1(用于仅主机接口)和 Vmnet8(用于 NAT 接口)。我们在此不作详细介绍,因为我们可以从许多来源了解有关网络及其含义的更多信息,其中最好的一个来源是我们在本章前面提到的《VMware Workstation 用户指南》。VMware Workstation 的强大功能是我们最多可以拥有 10 个虚拟交换机!这意味着我们可以有效地构建 10 个不同的网段。VMware 网络配置允许我们设置所需的 IP 地址范围,并提供 DHCP 服务器。在大多数情况下,10 超出了我们的需要,对于 10x 及更高版本,我们现在可以在 Windows 和 Linux 主机上分别拥有 20 个和 255 个网段。这是一个很大的网络!正是这一点和其他因素使它成为我们的首选软件。当我们构建分层和分段的体系结构时,我们需要交换能力。我的机器上的网络配置示例如以下屏幕截图所示:

VMware Workstation

在前面的屏幕截图中,您可以看到在我的机器中,10 个可能的网络中的大多数都是可见的。我在一段时间内构建了许多复杂的体系结构,并添加了多个自定义网络。

很可能您有三个由软件安装的默认开关。如果您想了解流程是如何完成的,可以随意添加一个开关。这使我们能够构建一个真正的分层体系结构,模拟我们在交战中看到的东西。事实上,您正在测试的单段或平面架构很少,特别是在任何类型的外部测试中。因此,在我们构建和测试先进技术时,我们必须具备提供多层保护的能力,以便我们能够通过黑客攻击或以某种方式绕开以达成妥协。

图像转换

最近,在为广泛使用虚拟环境的客户开发实验室时,我被要求将虚拟机从 VMware 迁移到 Hyper-V。由于我对 Hyper-V 的经验很少,这是一项具有挑战性的任务,需要三周时间才能完成。满足感是生活的一个方面,当我们接受挑战并克服挑战所带来的障碍时,我们就会获得满足感。

此外,有些东西在 VMware 中运行得非常好,但在 Hyper-V 中无法实现;一件不起作用的事情是路由器仿真软件。迁移的主要问题与虚拟硬盘格式有关。Hyper-V 需要 VHD,VMware 对其虚拟机硬盘使用 VMDK 格式。为了克服图像转换的障碍,我正在寻找一种工具来帮助图像转换。

幸运的是,这样的工具存在,而且是免费的!在构建虚拟机时,如果您想使用其他工具,或者更常见的情况是,您创建或下载了一种格式,但它与您尝试使用的工具不匹配,那么此工具非常适合您!我经常使用的工具是 Starwind 软件的 Starwind V2V 转换器,可在上找到 http://www.starwindsoftware.com/

这里需要注意的是:根据我的经验,该工具并不完美,但它已将大多数 VMDK 文件转换为 Hyper-V 的 VHD 格式,没有任何问题。只有“FreeBSD”操作系统在转换过程中出现问题,然后让它在 Hyper-V 上运行。具有讽刺意味的是,版本 9x 之前的 FreeBSD 版本似乎工作正常。

您可以从下载软件 http://www.starwindsoftware.com/converter 。请注意,您需要注册并且应用在 Windows 中运行。下载软件后,安装软件,然后运行程序。这是一个易于使用的工具;您可以通过导航到文件图像来选择要转换的文件图像。随后,该工具将显示格式输出的选项。以下屏幕截图显示了一个示例:

Image conversion

一旦选择了输出格式,转换过程将运行,一旦转换完成,您只需对您所选择的工具执行我们之前介绍的步骤。如前所述,该工具运行良好,节省了大量时间,并使您能够选择任何您喜欢的平台来构建 pentesting 环境。

从物理环境到虚拟环境的转换

当我们创建机器时,许多工具中可以用来帮助我们的另一个选项是物理到虚拟功能,有时称为 P2V 概念;此外,这使我们能够构建任何机器,运行转换过程以获取物理机器,然后将其转换为虚拟机。此功能允许您构建定制的 pentesting 平台机器,然后执行转换并将机器带到野外的任何地方。我们将讨论几个选项。我们可以使用 VMware 提供的名为 vCenter Converter 的免费选项。使用此工具,您不仅可以转换物理 Windows 机器,还可以转换 Linux。要试用并了解其工作情况,您可以从下载 http://www.vmware.com/products/converter/ 。我们还有另一个选择,即使用 VMware Workstation 安装中的功能。这是我们的首选。如果您打开软件,您将看到有一个将物理机转换为虚拟机的选项,该选项称为虚拟化物理机…。请注意,在这里,您必须在首次在 VMware Workstation 中选择该选项时安装转换器,如以下屏幕截图所示:

Converting from a physical to virtual environment

总结

在本章中,我们讨论了不同类型的虚拟化,其中类型 1(也称为裸机虚拟化)提供可直接访问并安装在硬件中的虚拟机监控程序,类型 2(安装在操作系统中的虚拟机监控程序)。类型 1 解决方案的优点之一是,直接安装在硬件中的虚拟机监控程序提供了改进的性能;这样做的一个缺点是,硬件必须与产品的虚拟机监控程序集成,并且您必须确保检查它是否这样做。

我们研究了各种可能的开源虚拟化产品,并在许多工具中安装、配置了基本设置和创建了虚拟机。我们下载并使用 ISO 映像来创建虚拟机,并在虚拟机创建后启动它。此外,我们下载了 OWASP 断开的 Web 应用项目虚拟机,并使用现有配置运行该机器。

我们还介绍了一些与虚拟化相关的商业产品,正是在这里,我们解释了从现在开始我们将使用虚拟化产品 VMware Workstation 的原因。此外,我们还讨论了 XenServer 和 vSphere 产品的强大功能。

我们面临的一个挑战是使用旧的和现有的机器,并将它们与现有的不同虚拟化产品一起使用,因此我们讨论了 Starwind 软件集团提供的一种工具,该工具可用于从 VMDK 转换为 VHD 文件和从 VHD 转换为 VMDK 文件,除某些之外,转换效果非常好。

本章以 P2V(物理到虚拟的转换)的概念作为结束,P2V 为我们提供了一种方法,可以将现有的或新的物理机转换为虚拟机。在下一章中,我们将探讨规划和建设我们的产品系列所面临的挑战。