由上面可以知道,在整个过程当中对操作系统类型的判断识别是最基本也是很关系的一步。可想而知,如果你连对方的操作系统是什么都不知道,要想入侵跟本无从谈起。
也许很少人问过自己,我们为什么要先了解对方的操作系统呢?其实,我们了解操作系统的原因是因为我们要了解系统内存的工作况态,了解它是以什么方式,基于什么样的技术来控制内存,以及怎么样来处理输入与输出的数据的。世上任何东西都不可能是尽善尽美的(当然这也是我们人类不断追求的动力所在),作为复杂的计算机系统更如此,它在控制内存与处理数据的过程中总是有可能出错的(特别是在安装了其它的应用程序以后),系统本身也会存在各种各样的弱点与不足之处。黑客之所以能够入侵,就是利用了这些弱点与错误。现在网上流行的各种各样的入侵工具,都是黑客在分析了系统的弱点及存在的错之后编写出来的。(其中以“缓冲区溢出”最为常见)
作为一般的黑客,我们只要善于使用现成的入侵工具,就可以达到我们入侵的目的。但是因为不同的系统,其工作原理不一样,所以不同的入侵工具只能针对相应的操作系统。因此,对操作系统的识别是必不可少的,这就需要我们对操作系统有相当的了解,对网络有一定的基础识(要作黑客还是不那么容易的),关于各类操作系统的介绍,在网上有成堆的文章,大家可以自己去查阅。
在此介绍一此简单的操作系统识别方法给大家,希望对大家有用。
一、用ping来识别操作系统
C:\>ping 10.1.1.2
Pinging 10.1.1.2 with 32 bytes of data:
Reply from 10.1.1.2: bytes=32 time<10ms TTL=128
Reply from 10.1.1.2: bytes=32 time<10ms TTL=128
Reply from 10.1.1.2: bytes=32 time<10ms TTL=128
Reply from 10.1.1.2: bytes=32 time<10ms TTL=128
Ping statistics for 10.1.1.2:
Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 0ms, Maximum = 0ms, Average = 0ms
C:\>
C:\>ping 10.1.1.6
Pinging 10.1.1.6 with 32 bytes of data:
Request timed out.
Reply from 10.1.1.6: bytes=32 time=250ms TTL=237
Reply from 10.1.1.6: bytes=32 time=234ms TTL=237
Reply from 10.1.1.6: bytes=32 time=234ms TTL=237
Ping statistics for 10.1.1.6:
Packets: Sent = 4, Received = 3, Lost = 1 (25% loss),
Approximate round trip times in milli-seconds:
Minimum = 234ms, Maximum = 250ms, Average = 179ms
我们跟据ICMP报文的TTL的值,我们就可以大概知道主机的类型。如:TTL=125左右的主机应该是windows系列的机子,TTL=235左右的主机应该是UINX系列的机子。如上面的两个例子,10.1.1.2就是win2000的机子,而10.1.1.6则是UI