NMAP六种端口状态解读

Nmap是一种用来发现网络中主机和服务的安全扫描工具,从而能够产生一个网络“地图”,为了完成这个功能,nmap会向每个目标主机发送特定的报文,从而从目标主机返回报文(或者无返回报文)来判断目标主机的属性(如:开放的端口,所使用的操作系统,操作系统的类型等信息)

本文主要讨论nmap对端口进行扫描中,当nmap向目标主机发送报文并根据返回报文从而认定端口的6种状态的含义(注意:这六种状态只是namp认为的端口状态,例如:有些主机或者防火墙会返回一些不可靠的报文从而妨碍nmap对端口开放问题的确认)。

Open:端口处于开放状态,例如:当nmap使用TCP SYN对目标主机某一范围的端口进行扫描时,我们知道 TCP SYN报文是TCP建立连接的第一步,所以,如果目标主机返回SYN+ACK的报文,我们就认为此端口开放了并且使用了TCP服务。

Closed:端口处于关闭状态。例如:TCP SYN类型的扫描,如果返回RST类型的报文,则端口处于管理状态。这里我们值得注意的是关闭的端口也是可访问的,只是没有上层的服务在监听这个端口,而且,只是在我们扫描的这个时刻为关闭,当我们在另一个时间段进行扫描的时候,这些关闭的端口可能会处于open的状态。

Filtered(过滤的):由于报文无法到达指定的端口,nmap不能够决定端口的开放状态,这主要是由于网络或者主机安装了一些防火墙所导致的。当nmap收到icmp报文主机不可达报文(例如:type为3,code为13(communication administratively prohibit)报文)或者目标主机无应答,常常会将目标主机的状态设置为filtered。

Unfiltered(未被过滤的),当nmap不能确定端口是否开放的时候所打上的状态,这种状态和filtered的区别在于:unfiltered的端口能被nmap访问,但是nmap根据返回的报文无法确定端口的开放状态,而filtered的端口直接就没就没能够被nmap访问。端口被定义为Unfilterd只会发生在TCP ack扫描类型时当返回RST的报文。而端口被定义为filtered 状态的原因是是报文被防火墙设备,路由器规则,或者防火墙软件拦截,无法送达到端口,这通常表现为发送NMAP的主机收到ICMP报错报文,如:TYPE为3,code为13的报文(通信被认为的禁止 communication administratively prohibited),或者主机通过多次重复发送没有收到任何回应)。

Open|filtered状态,这种状态主要是nmap无法区别端口处于open状态还是filtered状态。这种状态只会出现在open端口对报文不做回应的扫描类型中,如:udp,ip protocol ,TCP null,fin,和xmas扫描类型。

Closed|filtered状态,这种状态主要出现在nmap无法区分端口处于closed还是filtered时。此状态只会出现在IP ID idle scan(这个类型我现在也不太理解,过段时间进行总结一些)中。

nmap把端口定义为六种状态的解读相关推荐

  1. JAVA线程六种状态_Java:线程的六种状态及转化

    多线程概述及创建方式 Java:线程的六种状态及转化 关于线程的生命周期,网上书上说法不一,难以统一,本篇做一个总结: java.lang.Thread.State枚举类中定义了六种线程的状态,可以调 ...

  2. Linux下如何查看哪些端口处于监听状态

    Linux下如何查看哪些端口处于监听状态 2008-02-23 21:36:09|  分类: Linux & C|举报|字号 订阅 一.最常用的方法: 1,netstat -an 2,lsof ...

  3. ★Kali信息收集★8.Nmap :端口扫描

    Kali信息收集~ 0.Httrack 网站复制机 http://www.cnblogs.com/dunitian/p/5061954.html Kali信息收集~ 1.Google Hacking ...

  4. 使用Nmap进行端口扫描和服务识别

    使用Nmap进行端口扫描和服务识别 第1章            Nmap的简介[1] Nmap ("Network Mapper(网络映射器)") 是一款开放源代码的 网络探测和 ...

  5. 多线程--线程的六种状态

    在多线程中,线程在不同的情况下会有不同的状态,了解线程的状态可以帮助我们更好的掌握多线程. 线程状态简介 在JDK8中,Thread一共有六种状态,它们被定义在一个枚举里,我们根据源码来大概看一下不同 ...

  6. blackbox_exporter+grafana+prometheus监控主机存活,端口存活及网站状态

    blackbox_exporter+grafana+prometheus监控主机存活,端口存活及网站状态 安装blackbox_exporter grafana中加入blackbox_exporter ...

  7. 网络安全nmap扫描端口命令详解linux网络探测

    简介: nmap是一个网络连接端扫描软件,用来扫描网上电脑开放的网络连接端.确定哪些服务运行在哪些连接端,并且推断计算机运行哪个操作系统(这是亦称 fingerprinting).它是网络管理员必用的 ...

  8. 【java高性能编程基础】- java中线程的六种状态,线程状态变化的几种类型

    文章目录 从源码看Thread中定义的六种线程状态 线程状态的变化 1.线程正常运行结束的状态变化 2.线程执行过程中等待一段时间再继续执行结束的状态变化 3.线程执行过程中等待其他线程被阻塞,然后继 ...

  9. Java中多线程的六种状态详解

    在我们的Thread类中,我们可以看到多线程有六种状态. NEW:初始状态 RUNNABLE:运行状态 BLOCKED:阻塞状态 WAITING:等待状态 TIMED_WAITING:超时等待状态 T ...

最新文章

  1. ctags: 提示错误ctags: unrecognized option '--format=2'
  2. cass地籍参数设置快捷命令_南方cass详解+视频教程+插件汇总,小白快速上手!限时领取...
  3. 谈谈WPF中的CollectionView与CollectionViewSource
  4. 网站被黑搜索快照被劫持怎么办
  5. 如何把Kubernetes config view里的base64编码过后的secret信息还原
  6. Python 内置函数之 open (文件操作)
  7. Python文档自动生成器
  8. 【概率统计】(在更)
  9. centos6.5升级glibc-2.18
  10. Web | MIME类型
  11. 计算机声卡视频无法安装驱动程序,电脑声卡驱动怎么安装,教你三步搞定声卡驱动...
  12. 能播放qlv格式的android软件,QLV用什么播放器 腾讯QLV转换MP4方法
  13. Win10 重装系统 (iso方式)(超详细)
  14. 学习用PS美化软件界面
  15. pyecharts之参透神剧人物关系
  16. Python 实现英文新闻摘要自动提取 1
  17. 对于makefile不支持c++11的处理
  18. [软件人生]关于个人所得税的讨论
  19. 数据运营与数据分析闲谈
  20. 前后端传输加密代码-java

热门文章

  1. STM32系列ARM单片机介绍
  2. EtherCAT运动控制卡的总线轴参数设置和轴运动
  3. 基于Java语言密码字典生成器实现
  4. 惠普笔记本禁用触屏功能
  5. python中filepath路径怎么写_python文件路径操作方法总结
  6. 24个基本指标精粹讲解(13)--DMI
  7. Linux运维|记录一个挖矿病毒
  8. Java:菜单(Menu)
  9. 垃圾分类查询+小程序源码
  10. 版本控__Adobe CC 2015的福利