在获取的靶机IP之后,接下来我们继续扫描这台靶机开放了哪些端口。
端口扫描通常是shentou测试要做的第一步操作。为什么要扫描端口呢?因为端口对应了服务,所以扫描端口的目的就是去探测这台靶机提供了哪些网络服务可以供我们访问,从而再从中寻找可以利用的机会。
这就要求我们对一些在信息安全中用到的比较多的端口要熟悉,比如下面是针对Web服务的一些常见敏感端口:
下面是针对系统服务的一些常见敏感端口:
对于一些不熟悉的端口,也可以通过/etc/services文件进行查询:
下面继续用Nmap扫描靶机开放的端口,可以看到这台靶机开放了TCP22和TCP80端口,分别对应了SSH和Web服务。
在这条命令中使用了-sV选项,这个选项的作用是在探测开放端口的同时,检测该端口对应的服务以及版本信息。
另外需要说明一个问题,nmap默认情况下其实只是对1000个最常使用的端口进行了扫描,而端口号的范围是1~65535,所以如果要扫描靶机开放的所有端口,就需要用-p选项指定端口号范围。
另外为了加快扫描速度,就不需要探测端口对应的服务和版本信息了,因而可以使用-sS选项来代替-sV选项。
-sS选项是指采用TCP SYN扫描,SYN是TCP三次握手过程中在第一次握手所发出的数据,这样只要接收到对方返回的第二次握手的信息,就可以确定端口是开放的,因而在对端口扫描时通常都会使用这个选项。