1️⃣、Auxiliary模块
情报搜集阶段,这一阶段主要是尽可能多的收集目标的各种信息。这里主要用到Msf里auxiliary里边的Modules,这里的Modules都是些渗透前期的辅助工具。一般的收集信息可以使用Whois(这个是Linux自带的),db_nmap(这个是Msf的一个插件),如果要使用到其他的一些收集信息的方法,比如使用Syn(一种不建立头层皮连接的扫描)扫描,可以在Msfconsole里边Search syn然后根据返回结果来确定使用哪个模块。
Whois信息探测:在Msfconsole下使用Whois查看域名信息。
msf>whois www.baidu.com
查看IP信息
利用辅助模块查找邮箱
msf5 > use auxiliary/gather/search_email_collector
DNS枚举,使用auxiliary模块下的DNS枚举模块:
msf5 > use auxiliary/gather/enum_dns
2️⃣、端口扫描模块
Msfconsole下的Nmap和kali内置的Nmap效果其实是一样的,首先我们来看下内置的Nmap。
root@alienware:~# nmap ·sV 192.168.60.112
①、syn扫描
扫描器向目标主机的一个端口发送请求连接的SYN包,扫描器在收到SYN/ACK后,不是发送的ACK应答而是发送RST包请求断开连接。这样,三次握手就没有完成,无法建立正常的TCP连接,因此,这次扫描就不会被记录到系统日志中。这种扫描技术一般不会在目标主机上留下扫描痕迹。但是,这种扫描需要有root权限。
TCP connect端口扫描服务端与客户端建立连接成功(目标端口开放)过程:
① Client端发送SYN;
② Server端返回SYN/ACK,表明端口开放;
③ Client端返回ACK,表明连接已建立;
④ Client端主动断开连接。
TCP connect端口扫描服务端与客户端未建立连接成功(目标端口关闭)过程:
① Client端发送SYN;
② Server端返回RST/ACK,表明端口未开放。
端口开放:
1、Client发送SYN ;
2、Server端发送SYN/ACK ;
3、Client发送RST断开(只需要前两步就可以判断端口开放)。
端口关闭:
1、Client发送SYN ;
2、Server端回复RST(表示端口关闭)。
优点:
SYN扫描要比TCP Connect()扫描隐蔽一些,SYN仅仅需要发送初始的SYN数据包给目标主机,如果端口开放,则相应SYN-ACK数据包;如果关闭,则响应RST数据包;
②、Tcp扫描
msf5 > use auxiliary/scanner/portscan/tcp
3️⃣、服务版本信息探测
①、SMB版本扫描
②、SSH版本扫描
msf5 > use auxiliary/scanner/ssh/ssh_version
③、FTP版本扫描
msf5 > use auxiliary/scanner/ftp/ftp_version