利用metasploit进行信息收集

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

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

被动信息收集

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

主动信息收集

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

启动msfconsole

首先启动数据库

启动msfsploit服务

启动msfconsole

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

nmap扫描结果导入到Metasploit

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

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

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

从MSFconsole中启动nmap

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

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

使用metasploit自带的端口扫描

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

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

Server Message Block Scanning

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

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

收集MS SQL server信息

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

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

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

获取SSH版本信息

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

扫描FTP版本

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

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