Metasploit中也有专门的模块可以用来进行四层发现(端口发现):
# 四层发现的模块(基于tcp)
auxiliary/scanner/portscan/ack
auxiliary/scanner/portscan/syn
auxiliary/scanner/portscan/xmas
auxiliary/scanner/portscan/ftpbounce
auxiliary/scanner/portscan/tcp
可以看到Metasploit也逼供了比较多的四层发现模块,如果对nmap的四层发现还有记忆的话,可以发现这些模块和nmap中几种四层发现方式基本都能对应上。
前面也介绍过一些四层发现的工具,感兴趣也可以翻过去看看。这里主要介绍通过Metasploit内部自带的模块进行四层发现。
实操演示(syn)
先开启Metasploit,演示扫描tcp端口,执行使用具体的扫描模块的命令,这里为了隐蔽一些使用syn这个模块:
进入模块后查看一下需要设置的参数:
从参数列表中可以看到,设置的参数中只有一个INTERFACE参数是选填的,其他都是必填参数,但是只有RHOSTS没有默认值,其他参数都有默认值,一般直接使用默认值也不会出问题。具体要不要改,看实际需求。
设置一下RHOSTS:
默认的端口扫描范围是1-10000,执行起来会比较消耗时间,这里改小一些范围:
默认的线程数是1,这边根据电脑配置修改一下:
可以再检查一下当前参数是否是需要的值:
确认没有需要修改的端口后,就可以执行模块了:
执行结果在控制台会直接显示。至于被扫描出来的端口,是我在目标主机随意开的。
总结
Metasploit中的端口扫描模块好像都是基于tcp的,没看到通过udp对端口进行扫描的模块。不清楚是我没找到,还是的确没有,如果有同学知道其中使用udp做四层发现的模块请告诉我一下。
Metasploit的确集成了很多使用的工具,但要成为一个好的安全工程师就不能只啃这个测试平台。有些常用的扫描工具还是需要多熟悉一下,既是为了比对测试结果的准确性,也是为了丰富自己的武器库。