nmap命令小结(一)

nmap命令小结(一)Nmapnmap是一个非常强大的网络扫描工具,学习nmap的话,我建议大家多读一读官方文档,这里我所写的也仅仅是对Nmap中文文档的一个总结,以及一些我的个人看法。官方文档地址:http://www.nmap.com.cn/主机发现端口扫描主机发现nmap的主机发现主要是基于ICMP包的一个探测,所以用nmap的主机发现命令格式大多都是-P*;-sP:nmap仅对主机进行ping扫

大家好,又见面了,我是你们的朋友全栈君。

Nmap

nmap是一个非常强大的网络扫描工具,学习nmap的话,我建议大家多读一读官方文档,这里我所写的也仅仅是对Nmap中文文档的一个总结,以及一些我的个人看法。
官方文档地址:http://www.nmap.com.cn/

  • 主机发现
  • 端口扫描

主机发现

nmap的主机发现主要是基于ICMP包的一个探测,所以用nmap的主机发现命令格式大多都是-P*;

 -sP : nmap 仅对主机进行ping扫描(并不进行端口探测,还有操作系统识别),这个命令仅仅是列出了这个主机是否存活,或者这一个网段内都有哪些主机是在存活状态。

-sP

    -P0 : nmap在默认情况下会只给存活的主机进行端口扫描,版本探测,而使用P0(注意字母P是大写,0是数字0)参数会使nmap对每一个指定的ip地址进行所要求的扫描。
    -PS : nmap向目标主机发送一个设置了SYN标志位的空的TCP报文,不管主机返回SYN/ACK包还是RST包,它都认为该主机存活。不过虽然官方文档上说该参数只关心主机是否存活,不过在当前最新版本的nmap来看,这个命令也对主机的各个端口进行了探测。

-PS

    -PA/-PU:分别向目标主机发送ACK/UDP报文进行主机探测。
    -n(不用域名解析):告诉nmap不对存活主机的IP进行域名解析     -R(为所有目标解析域名)

端口扫描

在学习端口扫描之前,我们需要先了解nmap对于端口的五种不同的状态。

open(开放的)、filtered(过滤的)、closed(关闭的)、open|filtered(开放或者被过滤的)、closed|filtered(关闭或者被过滤的)

    -sS:进行TCP SYN扫描,这个选项返回的结果与-PS返回的结果很像,它们两个参数的区别就是,-sS会发送一个ICMP包给目标主机,这个我们可以利用抓包工具来看一下。

-sS

这里写图片描述

这个截图告诉我们-sS参数会发送ICMP包给目标主机。

为了和下面的-sT参数区分开,我们看一下,用-sS参数的连接图。

TCP SYN探测到端口关闭:
这里写图片描述

TCP SYN探测到端口开放:
这里写图片描述

    -sT:会完整的执行完TCP的三次握手,隐蔽性不强。

TCP connect探测到端口关闭:

这里写图片描述

TCP connect探测到端口开放:

这里写图片描述

由此我们可以看出-sT参数隐蔽性并不强,一般用于-sS参数无法探测时。

    -sU:使用UDP协议对端口进行扫描(通常,这个端口很容易被管理员忽视)
    -sN; -sF; -sX (TCP Null,FIN,and Xmas扫描):这个扫描的好处就是,它可以在端口关闭时,任何一个不包含ACK,SYN或者RST的数据包,都会返回一个RST,而在端口开放时,则不作响应。但是这个是要满足一个前提的,就是要严格遵循RFC 793,但是事实上,并非所有系统都严格遵循RFC 793, 许多系统不管端口开放还是关闭,都响应RST。 这导致所有端口都标记为closed(关闭的)。
    -sA:发送ACK数据包进行探测,主要用来识别这个端口是否处于过滤状态,如果这个端口是开放的或者这个端口是关闭的都会返回一个RST包,这个被标记为未过滤的;如果不响应或者发送特定的ICMP错误消息(类型3,代号123910, 或者13)的端口,标记为 filtered(被过滤的)。

这里写图片描述

    --scanflags:定制nmap扫描。 如:--scanflags URGACKPSHRSTSYNFIN设置了所有标志位,但是这对扫描没有太大用处。 标志位的顺序不重要。

这里写图片描述

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/140450.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 判断一个点是否在某个区域内。百度,高德,腾讯都能用。(php版)

    判断一个点是否在某个区域内。百度,高德,腾讯都能用。(php版)

    2021年11月9日
    85
  • python函数详解_INDEX函数

    python函数详解_INDEX函数前言:一、函数的作用函数就是将一段具有独立功能的代码块整合到一个整体并命名,在需要的位置调用这个名称即可完成对应的需求。函数在开发过程中,可以更高效的实现代码重用。二、函数的使用步骤1.定义函数def函数名(参数):代码1代码2……2.调用函数函数名(参数)注意:不同的需求,参数可有可无。在Python中,函数必须先定义后使用。…

    2022年10月18日
    3
  • javase学习笔记

    javase学习笔记01.01_计算机基础知识(计算机概述)(了解)A:什么是计算机?计算机在生活中的应用举例计算机(Computer)全称:电子计算机,俗称电脑。是一种能够按照程序运行,自动、高速处理海量数据的现代化智能电子设备。由硬件和软件所组成,没有安装任何软件的计算机称为裸机。常见的形式有台式计算机、笔记本计算机、大型计算机等。应用举例1:科学计算2、数据处理3、自动控制4、计算机辅助设计…

    2022年5月13日
    32
  • Python下载M3U8加密视频示例[通俗易懂]

    Python下载M3U8加密视频示例[通俗易懂]大家好,我是小小明。最近看到几个视频网站的地址依然是m3u8格式,不禁有了使用python进行下载的想法,虽然下载m3u8格式视频的工具很多,但如果我们自行编码就能应对更多的情况。关于m3u8的基础知识可以参考:Python实时下载B站直播间视频(M3U8视频流)下面我们将使用Python下载m3u8格式的加密离线视频流。游览器抓包过滤能够获取该影片的m3u8播放地址:首先,测试一下该地址:importm3u8headers={“User-Agent”:”Mozilla/

    2022年6月15日
    51
  • JavaScript数组filter方法

    JavaScript数组filter方法1.数组filter方法作用筛选数组,将满足条件的元素放入新数组中2.语法:array.filter(function(item,index,arr){})第一个参数:item,必须,当前元素的值第二个参数:index,可选,当前元素在数组中的索引值第三个参数:arr,当前元素所处的数组对象3.filter方法特点(1)函数执行次数===数组长度(2)函数内部的returnreturntrue:满足筛选条件,放入新数组中return

    2022年7月14日
    15
  • AndEngine Text的使用心得

    AndEngine Text的使用心得

    2021年8月20日
    49

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号