如何改进nmap指纹探测结果

本文围绕Nmap展开,指出其虽有庞大数据库但无法检测无IP栈设备。介绍了改进Nmap扫描结果的方法,如升级版本、扫描所有端口等。还说明了Nmap猜错或找不到匹配时的处理方式,包括报告错误、提交指纹等,也提及可自行修改nmap - os - db数据库。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

虽然Nmap有一个巨大的数据库,但它无法检测到所有内容。 Nmap没有机会检测到大多数烤面包机,冰箱,椅子或汽车,因为它们没有IP栈。 然而,鉴于不断扩大的连接设备列表,我不会将这些中的任何一个排除在外。 Nmap指纹数据库包括大量游戏机,手机,温度计,相机,互动玩具和媒体播放器。

拥有IP地址是必要的,但不足以保证正确的指纹。 Nmap可能仍然猜错了或根本没有产生任何猜测。以下是一些改进结果的建议:

升级到最新的Nmap
许多Linux发行版和其他操作系统都附带了古老版本的Nmap。 几乎每个版本都对Nmap OS数据库进行了改进,因此请运行nmap -V检查版本号,然后将其与http://nmap.org/download.html上的最新版本进行比较。 在大多数平台上安装最新版本只需几分钟。
扫描所有端口
当Nmap检测到某个主机的操作系统检测问题时,它会发出警告。其中最常见的是:“警告:操作系统检测的可靠性要低得多,因为我们没有找到至少1个开放和1个关闭的TCP端口”。 这些端口可能在计算机上确实不可用,但是使用-p-重试扫描以扫描所有端口可能会发现一些响应OS检测的响应。 执行UDP扫描(-sU)也可以提供更多帮助,但它会大大减慢扫描速度。
尝试更激进的猜测
如果Nmap说没有足够接近打印的匹配,那么可能是错误的。也许防火墙或NAT正在修改探测或响应数据包。这可能导致混合情况,其中一组测试看起来像来自一个OS,而另一组看起来完全不同。添加–osscan-guess可能会提供更多关于正在运行的线索。
从其他位置扫描
网络设备修改(或丢弃)探测或响应的可能性越大,您的数据包必须经历的网络跳数越多。 NAT网关,防火墙,尤其是端口转发可能会混淆操作系统检测。 如果您正在扫描负载均衡设备的IP,该设备只是将数据包重定向到不同的服务器网络,则甚至不清楚“正确”的OS检测结果是什么。
许多ISP将流量过滤到“坏”端口,而其他ISP则使用透明代理将某些端口重定向到自己的服务器。您认为在目标上打开的端口25或80实际上可能是您的ISP欺骗连接到ISP代理服务器。另一种可能混淆OS检测的行为是防火墙欺骗TCP重置数据包,好像它们来自目标主机。 这在端口113(identd)中特别常见。通常可以通过注意到目标网络上的每台机器都表现出行为来检测重置欺骗和透明代理,即使是那些看起来似乎已经失效的行为。 如果您发现任何此类废话,请务必从扫描中排除这些端口,以免它们污染您的结果。 您可能还想尝试从完全不同的网络位置。 离目标越近,结果就越准确。 在完美的情况下,您始终可以从它所在的同一网段扫描目标。

When Nmap Guesses Wrong
有时,Nmap会报告您知道错误的操作系统猜测。错误通常很小(例如将运行Linux 2.4.16的计算机报告为“Linux内核2.4.8 - 2.4.15”),但有报告称Nmap完全关闭(例如将您的Web服务器报告为AppleWriter 打印机)。 当您遇到这些问题(次要或重大)时,请报告它们以便每个人都能从中受益。 Nmap DB如此全面的唯一原因是成千上万的用户每人花费几分钟来提交新信息。请按照以下说明操作:

拥有最新版本的Nmap
运行nmap -V以确定您拥有的Nmap版本。 您不需要运行Nmap的绝对最新版本(虽然这将是理想的),但请确保您的版本是4.20或更高,因为我们只需要第二代操作系统指纹,而不是以前版本生成的旧版本。 您可以访问http://nmap.org/download.html来确定最新的Nmap版本。 如果升级,您可能会发现错误识别已经修复。
绝对肯定你知道正在运行什么
无效的“更正”可能会破坏OS DB。 如果您不确定远程计算机上正在运行的是什么,请在提交之前查看。
生成指纹
运行命令nmap -O -sV -T4 -d ,其中是有问题的系统。 查看操作系统检测结果,以确保仍然存在错误识别。 如果您通过IPv6扫描目标系统,也请添加-6选项。
如果主机操作系统结果的Nmap输出显示(JUST GUESSING),则预计结果可能稍微偏离。 在这种情况下不要提交更正。
否则,map命令应该产生包括行OS fingerprinting:.的结果。 它下面是指纹(一系列每行以OS开头:)。
检查操作系统检测是否适用于其他主机
尝试扫描目标网络上的其他主机,您知道这些主机具有不同的操作系统。 如果未正确检测到它们,则系统之间可能存在网络阻塞,这会破坏数据包。

When Nmap Fails to Find a Match and Prints a Fingerprint
当Nmap检测到OS检测条件看起来很理想但却找不到完全匹配时,它会打印出如下消息:
在这里插入图片描述
请考虑提交指纹,以便所有Nmap用户都能从中受益。 它只需要一两分钟,这可能意味着当您使用下一个Nmap版本扫描主机时,您不需要再次看到这条丑陋的消息! 只需访问Nmap提供的URL即可获得相关说明。
如果Nmap找不到匹配但仍未打印指纹,则条件并不理想。 即使您通过调试模式或XML输出获取指纹,也请不要提交,除非Nmap要求您(如上例所示)。

Modifying the nmap-os-db Database Yourself
人们经常会问自己是否自己整合指纹而不是(或者除此之外)将其提交给Nmap.Org。 虽然我们没有为此提供详细的说明或脚本,但在您熟悉“理解Nmap指纹”一节后,肯定有可能。 我希望这对您的目的很有用,但是没有必要向我们发送您自己的参考指纹创作。 我们只能整合网络表单中的原始主题指纹提交。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值