metasploit 读书笔记-信息收集

三、信息收集

  1. 被动信息收集

    在不接触目标系统时进行的信息收集,包括使用工具Yeti、Whois

    (1)Whois

    msf > whois secmaniac.net

   (2)Netcraft:find the IP address of a server hosting a particular website

(3)nslookup

2.主动信息收集:与目标系统主动交互

(1)使用nmap进行端口扫描

推荐选项-sS,执行一次隐秘的TCP扫描

推荐选项-Pn,告诉nmap不要使用ping命令判断主机是否存活,而默认所有主机都是存活状态,因为在internat上大多数网络均不允许ping命令所使用的ICMP协议通行,如果预先使用了ping进行判断,那么会漏掉很多真实存在的主机。但是,如果在内网里,进行nmap扫描,可以忽略这个选项以加快扫描速度。

-A,尝试进行深入的服务枚举和旗标获取

3.在metasploit中使用数据库:记录操作

metasploit支持MySQL、PostgreSQL和SQLite3数据库,默认为PostgreSQL。

4.高级Nmap扫描,TCP空闲扫描:冒充网络上的另一个主机进行扫描

msf > use auxiliary/scanner/ip/ipidseq

msf auxiliary(ipidseq) > set RHOSTS 192.168.1.0/24

RHOSTS => 192.168.1.0/24

msf auxiliary(ipidseq) > set THREADS 50

THREADS => 50

msf auxiliary(ipidseq) > run

msf auxiliary(ipidseq) > nmap -PN -sI 192.168.1.109 192.168.1.155

5.使用Metasploit内置工具进行端口扫描

查看内置的端口扫描工具msf > search portscan


6.针对性扫描

(1)服务器消息块协议扫描(SMB):可以使用smb_version来遍历一个网络,查看Windows系统版本号

msf > use scanner/smb/smb_version

(2)配置不当的Microsoft SQL Server:通常是进入主机的第一个后门,很多人不知道自己的主机上安装了SQL,因为在其他程序安装时装载到系统里面的,也很少安装补丁

MS SQL安装后,默认监听TCP1433端口或使用随机的动态TCP端口,Metasploit的模块mssql_ping可以获取随机的TCP端口号。

msf > use scanner/mssql/mssql_ping

由于mssql_ping使用UDP协议,速度可能会很慢,在局域网里将线程数设为255将很大的提高扫描速度。

(3)SSH服务器扫描:一些主机运行着SSH(安全shell),应对对SSH版本进行扫描,因为SSH存在漏洞。

可以利用Metasploit的ssh_version模块来识别目标服务器上运行的SSH版本。

(4)FTP扫描:FTP服务器经常是进入一个目标网络最便捷的途径。

模块scanner/ftp/ftp_version可以对FTP服务进行扫描;

模块scanner/ftp/anonymous可以检查FTP服务器是否允许匿名用户登录;

(5)简单网管协议SNMP扫描

SNMP通常用于网络设备中,用来报告带宽利用率、冲突率等信息。

内置模块scanner/snmp/snmp_enum,为SNMP扫描专门设计。开始扫描之前请注意,如果能够获取只读(RO)或者读/写(RW)权限的团体字符串,将对你从设备中提取信息发挥重要作用。基于Windows操作系统的设备中,如果配置了SNMP,通常可以使用RO或RW权限的团体字符串,提取目标的补丁级别、运行服务、用户名、持续时间、路由等信息。团体字符串(Community strings)基本等同于查询设备信息或写入设备配置参数时所需的口令。

SNMP的v1和v2天生便有安全权限,SNMP的v3中添加了加密功能增强了安全性。为了获取管理一台交换机的权限,首先要找到它的SNMP团体字符串,利用Metasploit框架中的scanner/snmp/snmp_login模块,可以尝试对一个IP(段)使用字典猜解SNMP团体字符串。


posted @ 2014-03-31 19:33  vicyang  阅读(357)  评论(0编辑  收藏  举报