使用的有效载荷

Metasploit有大量为各种场景设计的有效负载。

反向shell的目的很简单:获取shell。这很可能是每个人的第一选择。有许多不同的反向shell可用,最常见和最稳定的是windows/meterpreter/reverse_tcp有效负载。然而,windows/meterpreter/reverse_https实际上是一个更强大的选择,因为它有加密的通道,而且它允许您断开有效负载(并退出msfconsole),而不需要终止它。当你再次设置处理程序时有效载荷会自动返回给你。

现在,让我们稍微谈谈download-exec。关于download-exec的问题是,它给攻击者提供了一个选项,可以在目标机器上安装任何他想要的东西:键盘记录器、rootkit、持久性shell、广告软件等,这是我们在野外看到的很多东西。Metasploit repo中有几个版本的download-exec,其中一个非常流行的版本是windows/download_exec。

单级和分段有效载荷

如果您查看Metasploit的有效负载列表,您还会注意到一些有效负载实际上具有完全相同的名称,但格式不同。例如:windows/shell/reverse_tcp和windows/shell_reverse_tcp。带斜杠的表示这是一个“分段的”有效负载,带下划线的表示它是“单一的”。那么有什么区别呢?

分段有效负载意味着您的有效负载由两个主要组件组成:一个小存根加载器和最后一个阶段有效负载。例如,当您将windows/shell/reverse_tcp传递到目标计算机时,实际上您首先发送的是加载程序。然后当加载器被执行时,它会请求处理程序(在攻击者的一端)发送最后阶段(较大的有效负载),最后你会得到一个shell。

单一有效载荷意味着它是一种发射后就忘记的有效载荷。这可以在目标没有网络访问时使用。

通常,Meterpreter是Metasploit最流行的有效负载类型。如果您正在测试Windows漏洞,最好使用Windows /meterpreter/reverse_tcp。如果您使用的是Linux,请尝试Linux /meterpreter/reverse_tcp。如果可以,您应该始终选择本机Meterpreter,但如果不能,您应该尝试一个跨平台的,如java/ Meterpreter /reverse_tcp。

查看有效载荷

在Metasploit中有大量可用的有效负载,所以要弄清楚哪些有效负载可以用于特定的exploit可能是非常困难的。幸运的是,您可以很容易地查看漏洞所支持的有效负载。

选择一个exploit后,可以运行以下命令查看可用的有效载荷:

         
1
MSF >使用/windows/smb/ms08_067_netapi
2
3.
MSF exploit (ms08_067_netapi

手动选择有效负载

要手动选择攻击的有效载荷,可以运行以下命令:

         
1
MSF >使用/windows/smb/ms08_067_netapi
2
3.
MSF exploit (ms08_067_netapi) >设置有效负载windows/meterpreter/reverse_tcp

自动选择有效载荷

你不需要为利用设置有效载荷。您可以让Metasploit为您完成这些工作。Metasploit使用一个首选项列表来选择一个有效负载,如果没有为利用设置一个有效负载。

以下是列表,按照它们将被选中的顺序排序:

  • windows / meterpreter / reverse_tcp
  • java / meterpreter / reverse_tcp
  • php / meterpreter / reverse_tcp
  • php / meterpreter_reverse_tcp
  • ruby / shell_reverse_tcp
  • cmd / unix /交互
  • cmd / unix /反向
  • cmd / unix / reverse_perl
  • cmd / unix / reverse_netcat_gaping
  • windows / meterpreter / reverse_nonx_tcp
  • windows / meterpreter / reverse_ord_tcp
  • windows /壳/ reverse_tcp
  • 通用/ shell_reverse_tcp