# 十、构建实验室 在网络安全领域学习开发和渗透测试的艺术对学生和专业人士来说都是令人兴奋和迷人的。黑客的想法很酷,但是当学习网络安全时,比如渗透测试,一个机构,比如技术学院或大学,通常会建立一个物理实验室环境来进行培训。学习道德黑客和渗透测试只能使用为此类培训设计和构建的系统进行教学;换言之,渗透测试绝对不应使用互联网上可用的系统或不提供此类测试许可的系统进行教学。 为了开始渗透测试,你应该建立一个实验室。拥有自己的实验室将消除某些限制,例如在培训机构内进入实验室。此外,实验室的可用性和可移植性将不受限制。 在本章中,我们将介绍以下主题: * 渗透测试实验室建设要求 * 虚拟化简介 * 设置易受攻击的系统 让我们潜水吧! # 技术要求 在建造任何东西时,最重要的考虑因素之一是完成它所需的成本。然而,在 IT 世界中,有许多合法的方法可以在不花钱的情况下建立渗透测试实验室。我们这里不是说盗版,因为这是非法的,但是,有很多免费软件应用程序是按照企业标准运行的。我们将使用各种应用程序来组装我们自己的便携式渗透测试实验室。 要开始,您需要从 internet 下载一些项目来实现这一切: * 管理程序 * 易受攻击的系统 * 渗透测试分布 # 管理程序 我们 IT 领域的一些人喜欢使用服务器,Windows 或 Linux。服务器和它的其他所有东西一样,都非常好用。当今最重要的技术之一是虚拟化。虚拟化允许您在任何类型的硬件上安装几乎任何类型的**操作系统**(**操作系统**)。这是什么意思?有些操作系统(如 Android、Windows Server、Linux Server 和 macOS)需要专用硬件,如特定类型的处理器,如果系统没有所需的硬件资源,则不会安装该操作系统。虚拟化通过使用称为**虚拟机监控程序**的虚拟机管理器来节省时间。 虚拟机监控程序创建并模拟虚拟环境,以满足操作系统的需要。虚拟机监控程序允许管理员(如您)配置处理器的内核和线程数量、RAM 和硬盘驱动器分配量以及**输入/输出**(**I/O**)如 USB 控制器和串行控制器。因此,在安装过程中,来宾操作系统认为它被安装在物理硬件上,但实际上它被安装在虚拟环境中。这些被称为虚拟机。 主机操作系统是当前在笔记本电脑或台式机上的操作系统,而来宾操作系统是虚拟机或虚拟机监控程序中的操作系统。 有两种类型的虚拟机监控程序。让我们在接下来的部分中逐一讨论。 # 类型 1 类型 1 虚拟机监控程序称为裸机虚拟机监控程序。这种类型的虚拟机监控程序直接安装到硬件上,并成为主机操作系统: ![image](img/e70d0e08-f857-4119-8433-12b540467fc5.png) # 类型 2 类型 2 虚拟机监控程序安装在主机操作系统的顶部。这种类型的虚拟机监控程序使用主机操作系统提供的 CPU、RAM 和存储等资源: ![image](img/896a001f-f95b-416d-a5dc-a6d6531a724c.png) 我们将使用 2 型虚拟机监控程序来建立我们的渗透测试实验室。使用虚拟机进行技术培训的一个好处是,如果来宾操作系统中发生任何事情,都不会影响主机操作系统。 以下是类型 2 虚拟机监控程序: * Oracle VM VirtualBox(免费) * VMware Workstation Player(免费和商用) * VMware Workstation Pro(商用) * Microsoft 虚拟 PC(免费) # 脆弱系统 建立渗透实验室最重要的组成部分之一是其易受攻击的系统。我们不能在没有事先同意的系统上尝试实践,因为这将是非法和侵入性的。 用于渗透测试培训和实践的常见易受攻击机器称为 Metasploitable 2 和 Metasploitable 3。这些由 Rapid 7([www.rapid7.com](http://www.rapid7.com)上的开发团队创建,供学生和专业人士使用 Rapid 7 自身的开发框架 Metasploit([www.rapid7.com/products/Metasploit](http://www.rapid7.com/products/metasploit)开发渗透测试技能。 练习和添加到实验室的其他易受攻击系统来源包括 VulnHub([www.VulnHub.com](http://www.vulnhub.com)和 Pentesterlab([www.Pentesterlab.com](http://www.pentesterlab.com))。 # 建立实验室 在本节中,我们将组装所有部件,使我们的渗透测试实验室全面运行。 # 步骤 1–安装虚拟机监控程序 首先,从 Oracle VM VirtualBox 的官方网站下载:[www.VirtualBox.org](http://www.virtualbox.org)。 下载 Oracle VM VirtualBox 后,请完成安装过程并将所有选项保留为默认选项。一旦安装成功,您将看到以下窗口: ![image](img/eb1b2e87-e151-4770-bfcc-9a153deea759.png) 另一个非常流行的虚拟机监控程序是 VMware Workstation。但是,与 Oracle VM VirtualBox(免费)不同,此产品是商业(付费)产品。 # 步骤 2–获取易受攻击的系统 如前所述,在互联网上可以找到许多易受攻击的系统。我们将部署*Metasploitable*和*OWASP 断开的 Web 应用程序项目*——这两个项目都是虚拟机,旨在为学生和专业人士提供真实的动手体验。 Metasploitable 2 目前可在其官方存储库[中获得 https://information.rapid7.com/download-metasploitable-2017.html](https://information.rapid7.com/download-metasploitable-2017.html) ,或者在[处 https://sourceforge.net/projects/metasploitable/](https://sourceforge.net/projects/metasploitable/) 。 OWASP 断开的 Web 应用程序项目可在[找到 https://sourceforge.net/projects/owaspbwa/files/](https://sourceforge.net/projects/owaspbwa/files/) 。确保您已下载`.ova`文件,因为它将使安装过程无缝。 # 步骤 3–设置 Metasploitable 从 Metasploitable 2 开始,转到包含文件`metasploitable-linux-2.0.0.zip`的文件夹。确保已提取压缩文件夹的内容。这些文件构成一个虚拟硬盘,以后可以添加到虚拟机监控程序中: ![image](img/8b35d837-9fc6-4c3b-bfe8-3ea497f4b370.png) 打开 VirtualBox,单击新建。向导以引导模式打开,但是,我们将使用专家模式: ![image](img/576c619c-1ae0-4d21-adaf-20902836060b.png) 对于硬盘选项,我们将使用 Metasploitable 2 虚拟硬盘;这些是上一步提取的文件。选择使用现有虚拟硬盘文件选项,然后单击文件夹图标 单击添加以连接虚拟硬盘。在窗口中显示后,单击“选择”将其选中: ![image](img/6f14d7e2-db5d-46f8-a86a-7d72712f10dc.png) 单击“选择”将返回主窗口,我们可以看到文件已附加: ![image](img/a5831fe5-a31b-4caa-bdea-7a6dfe55c7fd.png) 单击“创建”完成此过程: ![image](img/906697f3-a614-4f69-85e6-8f9452c5f563.png) 让我们在这个新创建的虚拟机上配置网络适配器。选择虚拟机并单击设置。 接下来,选择网络类别,应用以下配置,完成后单击确定: ![image](img/02ff8f76-573e-48f5-ae5e-56961f740732.png) **仅主机适配器**设置将允许在虚拟机和主机操作系统之间的专用虚拟网络上进行通信。不建议将易受攻击的系统连接到 internet。 **网桥模式**将允许虚拟机直接连接到您的物理或真实网络。 现在,是使用 VirtualBox 建立虚拟网络的时候了。要在主机系统上配置虚拟适配器,请确保顶部的 VirtualBox 处于打开状态,单击工具|创建: ![image](img/5b7c3a41-4f40-46fb-b535-c35975828765.png) 如果适配器已经存在,请选择它并单击属性。我们将在虚拟实验室网络中使用`10.10.10.0/24`网络。此 IP 方案将提供从`10.10.10.1`到`10.10.10.254`的可用范围,但是,这些 IP 地址将由内置在 VirtualBox 中的 DHCP 服务器分发: ![image](img/12b7bea2-93a1-46a7-8ba3-52d71b434c0e.png) 完成这些配置后,单击应用。 现在是打开*Metasploitable*的时候了。用户名为`msfadmin`,密码为`msfadmin`: ![image](img/f99a5991-3d64-48f2-9f28-97d41ea8ae59.png) 登录后,使用`ifconfig`命令检查**虚拟机**(**虚拟机**的 IP 地址): ![image](img/7aeff7fa-a177-4cd0-bb89-bb55dc73e08f.jpg) # 步骤 4–设置 OWASP 断开的 web 应用程序项目 打开 VirtualBox 并单击导入: ![image](img/d170de4f-cd4d-4c72-9b27-2637fbd8a157.png) “导入虚拟设备”窗口将打开,单击右侧的文件夹图标。选择`OWASP_Broken_Web_Apps_VM_1.2.ova`文件: ![image](img/0633d9a3-6eec-4b15-b3ff-4e5636c5c55b.png) 现在应该在窗口中填充设备配置,因此单击导入: ![image](img/d739ad5d-7a1c-42bc-8e69-ffaaf7e651da.png) 一旦导入,就可以启动新的虚拟机并获取其 IP 地址。用户名为`root`,密码为`owaspbwa`: ![image](img/86e7db50-1f97-4e29-b90e-a87ff8671baf.png) OWASP 断开的 Web 应用程序项目的资源,该项目是一个 VM,可以通过 Web 界面进行访问。 现在,我们的虚拟化渗透测试实验室中有几个易受攻击的系统,我们可以方便地使用它们。请记住:以后可以将其他易受攻击的系统添加到您的实验室中,以促进您的实践并培养您的技能。 # 总结 在本章中,我们介绍了组装虚拟化实验室以进行渗透测试的要求、选择每个组件的原因,最后在组装阶段将各个部分组装在一起。我希望本章内容丰富,您能够添加更多虚拟机以增加实验室的规模,同时更好地进行渗透测试。现在,您可以在家中构建自己的实验室。 在下一章中,我们将了解如何为 Kali 设备和硬件选择各种选项。