将 Metasploit Framework 更新至最新版本

Kali LinuxBeginner
立即练习

引言

Metasploit Framework 是一个强大的工具,用于渗透测试、漏洞利用开发和漏洞研究。保持其更新至关重要,以确保你能够使用最新的漏洞利用、payloads 和功能,以及重要的安全补丁。过时的框架可能对现代系统无效,并且可能缺少关键的错误修复。

在本实验中,你将逐步完成在 Linux 系统上更新 Metasploit Framework 的完整过程。你将学习如何正确管理相关的数据库服务,运行更新命令,并验证更新是否成功。

停止 PostgreSQL 数据库服务

在开始 Metasploit 更新之前,最佳实践是停止 Metasploit 使用的 PostgreSQL 数据库服务。这可以防止在更新过程中替换文件时可能发生的数据库损坏或冲突。

在此步骤中,你将使用 service 命令停止 PostgreSQL 服务。由于你正在修改系统服务,因此需要使用 sudo 来执行具有管理员权限的命令。

在终端中运行以下命令来停止 PostgreSQL:

sudo service postgresql stop

如果命令成功执行,你可能不会看到任何输出,这对于 Linux 中的服务管理命令来说是正常的。

运行 msfupdate 命令开始更新

数据库服务已安全停止,你现在可以继续进行更新。Metasploit Framework 提供了一个名为 msfupdate 的专用命令行工具来完成此任务。此脚本负责整个更新过程,从从官方仓库获取最新更改到安装任何新的依赖项。

在此步骤中,你将执行 msfupdate 命令。此命令也需要管理员权限,因此你必须使用 sudo

在终端中运行以下命令。请耐心等待,因为此过程可能需要几分钟,具体取决于更新的大小和你的网络速度。

sudo msfupdate

你将看到指示更新过程已开始的输出,例如检查更新和应用它们。

[*]
[*] Attempting to update the Metasploit Framework...
[*]

[*] Checking for updates via the APT repository
[*] You are running the latest version of the Metasploit Framework

注意:输出可能会有所不同。如果有可用更新,它将继续下载并安装它们。

监控更新过程直至完成

此步骤是关于观察更新过程。运行 sudo msfupdate 后,终端将显示一系列信息,因为它会更新各种组件。这包括更新系统软件包、Ruby gems 和核心框架模块。

在此步骤中,你无需输入任何新命令。只需等待并监控终端中的输出。当脚本完成执行并返回到命令提示符 (labex@labex:~/project$) 时,表示过程已完成。

成功的更新通常会以确认更新已完成的消息结束。

... (various update messages) ...
[*] Metasploit Framework update complete

一旦你再次看到命令提示符,就可以进行下一步了。

重启 PostgreSQL 数据库服务

现在 Metasploit Framework 文件已更新,你需要重启 PostgreSQL 数据库服务。这使得新更新的框架能够连接到其数据库并正常运行。

在此步骤中,你将再次使用 service 命令,这次使用 start 参数将 PostgreSQL 服务重新上线。

在终端中运行以下命令:

sudo service postgresql start

stop 命令类似,成功时你可能不会看到任何输出。这表示服务已启动。

启动 msfconsole 并验证新版本

最后一步是验证更新是否成功。最直接的方法是启动 Metasploit 控制台 msfconsole。启动横幅会显示框架版本,让你确认更新。

首先,启动 Metasploit 控制台。首次启动可能需要一点时间,因为它会连接到数据库。

msfconsole

启动后,你将看到一个带有 ASCII 艺术的横幅。查找版本号,它应该反映最新版本。

                         _---------.
                     ,' ########   ;."
   .---.           ,' ############  ."
  /.'"'.\        ,' ##############  ."
  \:  ."'"'.\    ,' ################  ."
   \c   ."'"'"'.\,' ##################  ."
    \   ."'"'"'"'."##################  ."
     \    ."'"'"'"'."#############." ."
      \     ."'"'"'"'."#########." ."
       \      ."'"'"'"'."####." ."
        \       ."'"'"'"'."." ."
         \        ."'"'"'." ."
          \         ."." ."
           \          ."
            \        ."
             \      ."
              \    ."
               \  ."
                \."

       =[ metasploit vX.X.XX-dev                          ]
+ -- --=[ 2300 exploits - 1200 auxiliary - 400 post       ]
+ -- --=[ 950 payloads - 47 encoders - 11 nops            ]
+ -- --=[ 9 evasion                                       ]

Metasploit tip: Use the -q flag to start msfconsole
without showing the banner

msf6 >

你也可以在控制台中输入 version 命令来再次显示版本信息。

version

输出将显示 Framework 和 Console 的版本。

msf6 > version
Framework: X.X.XX-dev.YYYYMMDD01
Console  : X.X.XX-dev.YYYYMMDD01

验证版本后,你可以通过输入 exit 来退出 Metasploit 控制台。

exit

总结

恭喜你完成了本次实验!

你已成功掌握了更新 Metasploit Framework 的基本流程。此过程涉及几个关键步骤:停止 PostgreSQL 服务以确保数据完整性,运行 msfupdate 命令以获取并应用最新更新,重启数据库服务,最后启动 msfconsole 以验证新版本是否已激活。

保持你的安全工具最新是网络安全领域的一项基本实践。你现在已经掌握了维护 Metasploit 安装的知识,确保它在你工具箱中仍然是一个强大而有效的工具。