1.3 Metasploit基础
到现在为止我们已经回顾了渗透测试的基础内容,也完成了Kali Linux的建立。接下来介绍一下重点部分:Metasploit。Metasploit是一种安全框架,为渗透测试工程师提供了大量的渗透模块和扫描模块。2003年H.D Moore创建了Metasploit,从那之后Metasploit便快速发展起来,如今被公认是最为流行的渗透测试工具之一。Metasploit是一个完全的Ruby驱动项目,提供了大量的漏洞渗透、攻击载荷(payload)、编码技术以及后渗透模块。
Metasploit提供了以下多种版本。
❏ Metasploit Pro版:这是Metasploit的一个商业化版本,提供了大量的功能,例如Web应用程序扫描工具、渗透模块、自动化渗透工具,十分适合专业渗透测试工程师和IT安全团队使用。Pro版主要用来实现专业的、高级的、大型渗透测试和企业安全项目。
❏ Metasploit Express版:这是一个为初级渗透测试工程师设计的版本。这个版本的Metasploit包含了智能化渗透、密码的自动化暴力破解等功能,十分适合中小型企业的IT安全团队使用。
❏ Metasploit Community版:这是Metasploit Express精简后的免费版本。对于小企业和学生来说,这是一个不错的选择。
❏ Metasploit Framework版:这是一个完全在命令行中运行的版本。这个版本的所有任务都在命令行下完成,比如说手动渗透、第三方模块导入等。该版本适合开发人员和安全研究人员。
本书中采用的是Metasploit Community版和Framework版。Metasploit还提供了下面几种类型的用户界面。
❏ GUI(graphical user interface,图形用户界面):在图形化工作模式下,往往轻点一下鼠标就能完成所有的任务。这种工作方式提供了友好的操作模式和简单快捷的漏洞管理方式。
❏ 控制台界面:最为普遍也最为流行的工作方式。这种界面提供了一种统一的工作方式来管理Metasploit的所有功能。这种管理方法通常也被认为是最稳定的控制方法之一。在本书中,这种管理方式是最常用的。
❏ 命令行界面:命令行界面是功能最为强大的界面,它支持对渗透模块的所有操作(例如,攻击载荷的生成)。然而在使用命令行界面时,记住每一条命令是十分困难的。
❏ Armitage:Armitage是Raphael Mudge编写的一个充满了黑客风格的GUI。Armitage提供轻松的漏洞管理、内置的Nmap扫描、渗透攻击推荐,并通过使用Cortana脚本实现自动化功能。本书后半部分用了一整章来细致地讲解Armitage和Cortana脚本语言。
有关Metasploit Community版的更多信息,请访问https://community.rapid7.com/community/Metasploit/blog/2011/12/21/Metasploit-tutorial-an-introduction-to-Metasploit-community。