配置metasploit进行远程攻击的基本步骤和利用metasploit进行基本扫描

对metasploit的介绍

        当完成前期的情报侦察工作以后,通过隐蔽的探测扫描识别到了系统的脆弱点,作为渗透测试人员要进一步的利用漏洞突破目标,获取利益和成就感。

        Metasploit框架主要用于攻击工具的开发,漏洞工具的利用和攻击过程的辅助支撑,这个框架最大的优点在于它以研究的理念进行攻击工具的开发。因此,它非常容易开发和使用自己的metasploit模块,攻击人员无需具备太的ruby知识,只需掌握基本的脚本利用技巧就可以轻松的使用整个平台。

对渗透测试人员的要求

        Metasploit不是万能的,他没有收录的exploit代码不计其数。因为每个漏洞都对应着某个程序的特定版本信息,大多数情况下,渗透测试人员通常会借助抓取的旗标信息搜索漏洞,然后在其他地方找到这个漏洞的exploit程序。Exploit程序多数是python、C++、Ruby、Prel、bash或者其他类型的脚本语言程序(或代码)。

        渗透测试人员应当熟悉编辑、修改、执行 exploit脚本的方法,并且要理解exploit的工作原理。在真正应用这些脚本之前,进行充分的测试。所以应当尽可能地使用自己的shellcode;如果真的要使用他人的payload脚本,至少也要对其进行仔细的审查。

        只会使用现成的攻击工具、漏洞利用代码并非总能成功,只有理解攻击原理,找到漏洞存在的问题,才能掌握利用漏洞的方法。这样一来,即使工具失效,还可以自己修改exploit程序,解决问题。

配置metasploit进行远程攻击的基本步骤

  1. 选择要使用的攻击代码或者模块
  2. 设置该模块的参数

*Set命令可配置模块的输入变量

*设置目标主机的端口和ip

*设置本地主机的端口和ip

*如果有确凿的信息,可设置系统版本,用户账号及其他信息

*运行show options命令查看需要设置的其他选项

3.  配置有效负载(payload)

*负载(payload)是在利用漏洞之后运行的实施具体操作行为的程序

*有关负载的详细介绍,参见:

http://www.sffensive-security.com/metasploit-unleashed/Payload_Types

    *运行show payloads命令可查看payload的全部类型

    *使用set payloads命令可设置有效负载

4.  设置编码器

    *编码器是metasploit隐匿攻击程序特征的一种基本方法。遗憾的是即使使用了编码技术,payload仍然经常被反病毒软件拦截。

    *使用show encoders命令可以查看封装负载的各种编码器,使用set encoders命令可对payload进行实际的封装。

5.  设置其他选项

6.  用exploit命令可启动事先指定好也配置好的攻击程序

Metasploit基本扫描

扫描端口

返回上一步:quit  直接退出:exit

一:调用nmap进行扫描 nmap -v –sV  ip

二:使用MSF的扫描模块进行扫描

search portscan 回车

配置metasploit进行远程攻击的基本步骤和利用metasploit进行基本扫描

然后在下面选一个,使用use利用,例如:

use auxiliary/scanner/portscan/syn

配置metasploit进行远程攻击的基本步骤和利用metasploit进行基本扫描

配置metasploit进行远程攻击的基本步骤和利用metasploit进行基本扫描

上述步骤分别为,设置网卡,设置端口,设置扫描的ip地址范围以及线程,最后run,启动运行

SMB扫描 获取系统信息

前提是被扫描IP已经开启了445端口,现在在虚拟机中的windows7中演示

use auxiliary/scanner/smb/smb_version

调用 smb模块

show options

显示需要设置的参数

 

配置metasploit进行远程攻击的基本步骤和利用metasploit进行基本扫描

根据要求设置好相关参数

配置metasploit进行远程攻击的基本步骤和利用metasploit进行基本扫描可以看到,被检测系统的系统版本

上边这个例子是检测一个IP的时候,如果想检测同网段下多个IP的系统版本信息,可以这样操作

set RHOSTS 192.168.119.1-200

配置metasploit进行远程攻击的基本步骤和利用metasploit进行基本扫描

上边只显示192.168.119.129有结果,是因为同网段下,只用这个ip开启着445端口,没有开启445端口的不会扫描出系统的版本信息。

步骤:调用模块(例如:use auxiliary/scanner/smb/smb_version)à显示需要设定的参数(show options)à根据上一步显示的设定参数àrun运行

Msf服务识别(ssh,ftp)

ssh

use auxiliary/scanner/ssh/ssh_version

ftp

调用模块

use auxiliary/scanner/ftp/ftp_version

显示需要设置的参数:

show options

设置参数

配置metasploit进行远程攻击的基本步骤和利用metasploit进行基本扫描

可以看到,已经扫出ftp服务器的版本来了

技术有限,文章比较基础,希望可以帮到像我一样的技术小白一同进步。

本文仅用作学习交流,请勿进行非法操作。