获取操作系统版本和类型

由于不同类型、版本的操作系统在TCP/IP协议栈的实现细节上存在差别,只要掌握了这种差别,且能够检测出某个主机系统所运行的操作系统TCP/TP协议栈的实现细节,就可推测该操作系统的类型、版本。

(1)侦听端口对置位FIN位TCP报文的反应。不同类型、版本的操作系统对侦听端口接收到的不属于任何已经建立的TCP连接且FIN位置位的TCP报文的反应是不同的,一种反应是不予理睬,一种反应是回送一个FIN和ACK位置位的响应报文,如Windows NT/2000/2003。

(2)侦听端口对置位SYN位,且同时置位其他无效标志位的报文的反应。正常的TCP连接建立过程是三次握手过程,即请求方首先发送一个置位SYN位的请求报文,侦听方回送一个置位SYN和ACK位的响应报文,请求方发送一个置位ACK的确认报文。如果请求方发送的请求报文不仅置位SYN位,还置位了其他标志位,不同类型、版本的操作系统对这种请求报文的反应是不同的,一种反应是将其作为错误请求报文予以丢弃,一种反应是回送一个不仅置位SYN和ACK位,而且同样置位请求报文中置位的无效标志位的响应报文,如Linux。

(3)不同的初始序号(Initial Sequence Number,ISN)。不同类型、版本的操作系统接收到请求方发送的请求建立TCP连接的请求报文后,在回送的TCP连接响应报文中给出的初始序号(ISN)值是不同的。

(5)封装TCP报文的IP分组的DF位。不同类型、版本的操作系统对封装TCP报文的IP分组的DF位的处理方式不同,有些操作系统为了改善网络传输性能,一律将封装TCP报文的IP分组的DF位置位,不允许转发结点拆分封装TCP报文的IP分组。

(6)ICMP出错消息的频率限制。不同类型、版本的操作系统对发送ICMP出错消息的频率有着不同的限制,通过向某个主机系统连续发送一些确定是无法送达的UDP 报文,如一些目的端口号接近65 535的UDP报文,然后对在给定时间内回送的"目的地无法到达"的ICMP出错消息进行统计,得出该主机系统ICMP出错消息的频率限制。

(7)ICMP消息内容。不同类型、版本的操作系统在ICMP返回消息里给出的文字内容是不一样的。

nmap 中集成了对操作系统的判定脚本

  • 标准服务检测:nmap -sV IP地址
  • 操作系统和服务检测:nmap -A IP地址
  • 激进的服务检测:nmap -sV --version-intensity 5 IP地址
  • 轻量Banner抓取检测:nmap -sV --version-intensity 0 IP地址
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值