NMAP使用实例(六)

服务和版本探测

把Nmap指向一个远程机器,它可能告诉您端口25/tcp80/tcp,和53/udp是开放的。使用包含大约2,200个著名的服务的nmap-services数据库,Nmap可以报告那些端口可能分别对应于一个邮件服务器(SMTP)web服务器(HTTP),和域名服务器(DNS)。这种查询通常是正确的 -- 事实上,绝大多数在TCP端口25监听的守护进程是邮件服务器。然而,您不应该把赌注押在这上面!人们完全可以在一些奇怪的端口上运行服务。即使Nmap是对的,假设运行服务的确实是SMTPHTTPDNS,那也不是特别多的信息。当为您的公司或者客户作安全评估(或者甚至简单的网络明细清单)时,您确实想知道正在运行什么邮件和域名服务器以及它们的版本。有一个精确的版本号对了解服务器有什么漏洞有巨大帮助。版本探测可以帮您获得该信息。在用某种其它类型的扫描方法发现TCP和/或者UDP端口后,版本探测会询问这些端口,确定到底什么服务正在运行。

nmap-service-probes 数据库包含查询不同服务的探测报文和解析识别响应的匹配表达式。Nmap试图确定服务协议(如ftp,ssh,telnet,http),应用程序名(如ISC BindApache httpdSolaris telnetd),版本号,主机名,设备类型( 打印机,路由器),操作系统家族(WindowsLinux)以及其它的细节,如是否可以连接X serverSSH协议版本,或者KaZaA用户名)。当然,并非所有服务都提供所有这些信息。 如果Nmap被编译成支持OpenSSL,它将连接到SSL服务器,推测什么服务在加密层后面监听。当发现RPC服务时,Nmap RPC grinder (-sR)会自动被用于确定RPC程序和它的版本号。如果在扫描某个UDP端口后仍然无法确定该端口是开放的还是被过滤的,那么该端口状态就被标记为open|filtered。版本探测将试图从这些端口引发一个响应(就像它对开放端口做的一样),如果成功,就把状态改为开放。 open|filtered TCP端口用同样的方法对待。注意Nmap -A选项在其它情况下打开版本探测。有一篇关于版本探测的原理,使用和定制的文章在http://www.insecure.org/nmap/vscan/。当Nmap从某个服务收到响应,但不能在数据库中找到匹配时, 它就打印一个特殊的fingerprint和一个URL给您提交,如果您确实知道什么服务运行在端口。请花两分钟提交您的发现,让每个人受益。由于这些提交,Nmap350种以上协议如smtpftphttp等的大约3000条模式匹配。

用下列的选项打开和控制版本探测。

 

-sV (版本探测)

打开版本探测。您也可以用-A同时打开操作系统探测和版本探测。

 

--allports (不为版本探测排除任何端口)

默认情况下,Nmap版本探测会跳过9100 TCP端口,因为一些打印机简单地打印送到该端口的任何数据,这回导致数十页HTTP  get请求,二进制SSL会话请求等等被打印出来。这一行为可以通过修改或删除

nmap-service-probes中的Exclude指示符改变,您也可以不理会任何Exclude指示符,指定--allports扫描所有端口

 

--version-intensity  (设置版本扫描强度)

当进行版本扫描(-sV)时,nmap发送一系列探测报文,每个报文都被赋予一个19之间的值。被赋予较低值的探测报文对大范围的常见服务有效,而被赋予较高值的报文一般没什么用。强度水平说明了应该使用哪些探测报文。数值越高,服务越有可能被正确识别。然而,高强度扫描花更多时间。强度值必须在09之间。默认是7。当探测报文通过nmap-service-probes ports指示符注册到目标端口时,无论什么强度水平,探测报文都会被尝试。这保证了DNS探测将永远在任何开放的53端口尝试,SSL探测将在443端口尝试,等等。

 

--version-light (打开轻量级模式)

这是--version-intensity 2的别名。轻量级模式使版本扫描快许多,但它识别服务的可能性也略微小一点。

 

--version-all (尝试每个探测)        

这是--version-intensity9的别名,保证对每个端口尝试每个探测报文。

 

--version-trace (跟踪版本扫描活动)        

这导致Nmap打印出详细的关于正在进行的扫描的调试信息。它是您用--packet-trace所得到的信息的子集。

 

-sR (RPC扫描)

这种方法和许多端口扫描方法联合使用。它对所有被发现开放的TCP/UDP端口执行SunRPC程序NULL命令,来试图确定它们是否RPC端口,如果是,是什么程序和版本号。因此您可以有效地获得和rpcinfo -p一样的信息, 即使目标的端口映射在防火墙后面(或者被TCP包装器保护)Decoys目前不能和RPC scan一起工作。这作为版本扫描(-sV)的一部分自动打开。由于版本探测包括它并且全面得多,-sR很少被需要。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值