移动安全 安全管理 应用案例 网络威胁 系统安全应用安全 数据安全 云安全
当前位置: 主页 > 信息安全 > 应用安全 >

利用metasploit进行信息收集

时间:2014-05-19 15:36来源:TuZhiJiaMi企业信息安全专家 点击:
在进行信息收集的时候,我们既要全面详细的获取目标的信息,又要尽量隐藏自己不被发现。Metasploit作为一个非常全面的渗透工具,用来收集信息也非常好用。本文会详细的介绍如何利用Met
Tags应用安全(1006)Metasploit(3)信息收集(1)  

  在进行信息收集的时候,我们既要全面详细的获取目标的信息,又要尽量隐藏自己不被发现。Metasploit作为一个非常全面的渗透工具,用来收集信息也非常好用。本文会详细的介绍如何利用Metasploit进行信息收集。

利用metasploit进行信息收集

  信息收集分为主动和被动两种方式。

  被动信息收集

  被动信息收集是指在不直接接触没目标系统的情况下寻找信息。比如,通过搜索引擎等方式可以获得目标的操作系统,开放的端口,web服务器软件等信息。

  主动信息收集

  主动信息收集中,我们可以直接和系统交互,从而获得更多的信息。比如通过扫描目标系统开放的端口来确定对方开放的服务。每一个开放的服务都可能给我们提供了入侵的机会。需要注意的是,主动的信息收集很可能被IDS和IPS抓住踪迹。

  启动msfconsole

  首先启动数据库

  service postgresql start

  启动msfsploit服务

  service metasploit start

  启动msfconsole

  msfconsole

  使用db_status确认数据库是否正确连接

利用metasploit进行信息收集

  将nmap的扫描结果导入到Metasploit

  当一个团队同时做事的时候,会有针对不同目标,不同时间的扫描结果。这时候知道如何把xml格式的nmap结果导入到metasploit框架里有助于高效的工作。

  首先,使用-oX参数扫描我们的windows虚拟机,生成扫描结果的xml格式文件。

  #nmap -Pn -sS -A -oX Target 192.168.20.0/24

利用metasploit进行信息收集

  使用db_import命令导入扫描结果到数据库中。使用hosts命令查看刚刚 导入的数据。

  msf > db_import Subnet1.xml

  msf> hosts

利用metasploit进行信息收集

  从MSFconsole中启动nmap

  在msfconsole中使用db_nmap命令启动扫描,可以将结果自动存储在数据库中。

  #msf > db_nmap -sS -A 172.16.32.131

利用metasploit进行信息收集

  使用db_services命令查看存储在数据库中的扫描结果。

  #msf > db_services

利用metasploit进行信息收集

  使用metasploit自带的端口扫描器

  metasploit自带了多个端口扫描器,我们也可以利用这些端口扫描器来寻找目标。查看端口扫描器列表可以使用search命令。

  #msf > search portscan

利用metasploit进行信息收集

  我们来使用SYN端口扫描器进行一次简单的扫描练习一下,使用 scanner/portscan/syn,设置RHOSTS为192.168.20.0/24,设置线程THREADS为100,然后使用run命令开始扫描。

  #msf > use scanner/portscan/syn

利用metasploit进行信息收集

  Server Message Block Scanning

  metasploit可以通过smb_version模块来尝试识别windows的版本。

  #msf > use scanner/smb/smb_version

利用metasploit进行信息收集

  扫描结果会存储在metasploit的数据库中,使用hosts命令可以查看。

  #msf auxiliary(smb_version) > hosts

利用metasploit进行信息收集

  收集MS SQL server信息

  很多系统管理员自己都没有意识到自己的服务器上可能已经安装了MS SQLserver。因为安装一些软件需要预装数据库,比如Miscrosoft Visual Studio。默认MS SQL server会监听1433端口或者一个随机的TCP端口。如果监听的是随机端口的话,可以通过UDP在1434端口查询具体监听的是哪个端口。

  metasploit有一个模块可以自动实现这些事情。叫做mssql_ping。

  #msf > use scanner/mssql/mssql_ping

  msf auxiliary(mssql_ping) > set RHOSTS 192.168.1.0/24

  RHOSTS => 192.168.1.0/24

  msf auxiliary(mssql_ping) > set THREADS 255

  THREADS => 255

  msf auxiliary(mssql_ping) > run

利用metasploit进行信息收集

  如上图所示,metasploit除了可以获得监听的端口,还可以获得实例的名字,服务器版本。

  获取SSH版本信息

  ssh是一种安全协议,有很多ssh的实现都被发现过漏洞。所以我们需要先识别ssh使用的软件版本。采用ssh_version模块。

  msf > use scanner/ssh/ssh_version

利用metasploit进行信息收集

  扫描FTP版本

  FTP服务器通常都是一个网络中最薄弱的地方,一定要仔细的扫描目标网络中的FTP服务器。可以使用ftp_version模块来寻找目标网络中的FTP server。

利用metasploit进行信息收集

  我们幸运的找到了一台FTP服务器,现在试试能不能匿名登陆。使用scanner/ftp/anonymous模块。扫描器结果显示,可以匿名登陆,但是只有读的权限。

利用metasploit进行信息收集

  使用metasploit进行信息收集主要的方法就是上文所述了,接下来可以开始开始利用metasploit进行漏洞扫描和利用。

------分隔线----------------------------

推荐内容