IP ID 序列生成

IP ID 序列生成

也许有人可以向我解释或指出正确的方向,以便我理解 nmap 输出中的“繁忙的服务器或未知的类别”?

“IP ID 序列生成:服务器繁忙或类别未知”

答案1

刚刚快速浏览了一下 nmap 源代码。这是尝试对主机进行指纹识别(确定主机运行的操作系统等)的结果。其中一种技术是观察主机发回数据包时的 IP ID 模式。每个操作系统使用不同的技术来更改这些 ID,如果可以确定模式,则可以帮助识别主机特征。所有错误都意味着 nmap 无法确定特定模式(未知类别)或从主机获得足够的响应(繁忙的服务器)。您可以自己查看 nmap 源代码以获得更明确的信息,或者阅读更多有关 nmap 指纹识别技术的描述http://nmap.org/book/osdetect-methods.html

答案2

IP ID 序列生成指纹测量 IPv4 标识字段(IP 标头中的字节 32-47)如何从一个数据包变为下一个数据包。Nmap 通过收集一系列 IP 标头并从下一个 ID 字段中减去每个 ID 字段的值来获得差异数组。然后,它会尝试对目标操作系统生成新 ID 的算法进行分类。

如果出现以下情况,Nmap 将返回您所看到的消息:

  • 没有足够的样本对算法进行分类(少于 3 个样本)
  • 该算法与任何最常见的算法都不匹配(重复、增量、损坏的增量、随机化、随机化正值或全零),或者
  • 收集到的数据包与发往其他目的地的数据包混杂在一起

最后一个就是为什么消息显示“服务器繁忙”。由于每个数据包的 ID 字段都会发生变化,无论目的地是哪个(即我们看不到的数据包,因为它们会发送到其他地方),因此如果目标正在与其他主机通信,它将破坏序列并使分析变得不可能。这就是为什么空闲扫描需要一个不与其他主机通信的“僵尸”中间人。

Nmap 手册部分基于 IP ID 序列生成算法指纹识别,或源代码更多细节。

相关内容