Metasploit框架

Metasploit框架是一个基于ruby的模块化渗透测试平台,允许您编写、测试和执行利用代码。Metasploit框架包含一套工具,可用于测试安全漏洞、枚举网络、执行攻击和逃避检测。Metasploit框架的核心是一组常用工具,它们为渗透测试和利用开发提供了一个完整的环境。

访问MSFconsole

MSFconsole提供了一个命令行接口来访问和使用Metasploit框架。MSFconsole是使用Metasploit框架最常用的接口。控制台允许您执行扫描目标、利用漏洞和收集数据等操作。

在Linux上访问MSFconsole

要在Linux上运行MSFconsole,请打开终端,cd进入框架目录并输入:

         
1
美元。/ msfconsole

如果一切顺利,您将看到以下提示:

但是,如果这是您第一次访问控制台,您可能会看到一个错误,表明您缺少一些gems。要修复此错误,请运行包安装去抢那些宝石。

要运行bundle install,只需输入:

         
1
美元包安装

运行bundle install之后,可以通过重新输入尝试再次启动控制台。/ msfconsole

如果您正在使用Metasploit的商业版本,例如Metasploit Pro,则可以运行。/ msfpro启动控制台。

在Windows上访问MSFconsole

如果你是Windows用户,启动MSFconsole真的很容易。转到开始菜单并选择所有程序> Metasploit > Framework > Metasploit Console

如果您喜欢从命令行运行控制台,请打开终端并运行以下命令:

         
1
$ cd / metasploit
2
console.bat美元

如果控制台成功加载,您将看到以下提示:

获取MSFconsole命令帮助

在控制台中查看帮助,使用以下命令:

  • 类型帮助显示当前模式的有效命令列表。在主模式下,系统将显示可用的全局命令的帮助信息。当您进入模块模式时,系统将显示该模块可用的命令和选项的帮助。
  • 类型信息<模块名称>查看模块的选项。

发现模块

模块是Metasploit框架的核心组件。模块是可以执行特定操作的软件,如扫描或利用。使用Metasploit框架可以执行的每个任务都在模块中定义。

您可以在以下目录中定位模块:/道路/ / metasploit /应用程序/ pro / msf3 /模块如果您使用二进制文件或/ / metasploit-framework-repo /模块/路径如果你从GitHub克隆了这个库。模块按类型分类,然后按协议分类。

有几种类型的模块。模块类型取决于模块的用途和模块执行的操作类型。以下是Metasploit框架中可用的模块类型:

  • 利用- exploit模块执行一系列命令,针对系统或应用程序中发现的特定漏洞。exploit模块利用漏洞提供对目标系统的访问。Exploit模块包括缓冲区溢出、代码注入和web应用程序Exploit。
  • 辅助—辅助模块不执行有效载荷。它可以用来执行可能与利用没有直接关系的任意操作。辅助模块的例子包括扫描器、fuzzer和拒绝服务攻击。
  • Post-Exploitation-利用后模块使您能够收集更多的信息或获得进一步访问被利用的目标系统。使用后模块的示例包括散列转储和应用程序和服务枚举器。
  • 有效载荷-有效载荷是在攻击成功危及系统后运行的shell代码。有效负载使您能够定义想要如何连接到shell,以及在控制目标系统之后想要对它做什么。有效负载可以打开Meterpreter或命令shell。Meterpreter是一种高级有效负载,允许您编写DLL文件来动态创建所需的新特性。
  • NOP发电机—NOP生成器生成一系列随机字节,您可以使用这些字节绕过标准的IDS和IPS NOP撬签名。使用NOP发电机来填充缓冲器。

数据存储

数据存储是Metasploit框架的核心组件。数据存储是一个包含命名值的表,允许您配置Metasploit框架内组件的行为。数据存储使接口能够配置设置,使有效负载能够修补操作码,并使利用能够定义参数。数据存储还允许Metasploit框架在模块之间内部传递选项。

数据存储有两种类型:

  • 全球数据存储—要定义一个全局数据存储选项,请使用setg.所有模块都可以使用数据存储选项。
  • 数据存储模块—要定义模块级数据存储选项,请使用setgydF4y2Ba.只有为其定义数据存储选项的模块可以使用它。