1、nmap主要用途:主机发现,端口扫描,版本检测,os检测

2、Nmap是Linux下的网络扫描和嗅探工具包,它可以扫描大型的网络,获取那台主机正在运行以及提供的服务等信息。

3、nmap语法格式: nmap [Scan Type(s)] [Options] {target specification}

Scan Type(s):扫描类型

Options:功能选项

target specification:扫描目标设定,扫描单个ip or子网

4.nmap常用选项:

5、nmap三种格式的输出: 1、normal:标准模式-oN . 2、xml文档: -oX 3、grep文件 注:-oA参数可将扫描结果以标准格式、XML、Grep格式一次性全部保存

6、Nmap参数详解(含扫描参数原理解释)

语法结构:nmap [Scan Type(s)] [Options] {target specification}

6.1、端口状态介绍

open:确定端口开放,可达

closed :关闭的端口对于nmap也是可访问的, 它接收nmap探测报文并作出响应。但没有应用程序在其上监听。

filtered :由于包过滤阻止探测报文到达端口,Nmap无法确定该端口是否开放。过滤可能来自专业的防火墙设备,路由规则 或者主机上的软件防火墙。

unfiltered :未被过滤状态意味着端口可访问,但是Nmap无法确定它是开放还是关闭。 只有用于映射防火墙规则集的 ACK 扫描才会把端口分类到这个状态。

open | filtered :无法确定端口是开放还是被过滤, 开放的端口不响应就是一个例子。没有响应也可能意味着报文过滤器丢弃了探测报文或者它引发的任何反应。UDP,IP协议,FIN, Null 等扫描会引起。

closed|filtered:(关闭或者被过滤的):无法确定端口是关闭的还是被过滤的

6.2、扫描目标格式

示例: scanme.nmap.org, microsoft.com/24, 192.168.0.1; 10.0.0-255.1-254

-iL:从文件中加载目标

-iR:随机扫描

--exclude <host or network>:排除网段或主机地址

--excledefile:排除文件中的地址

主机发现

-sL:列出需要扫描的目标,不扫描

-sn:只做ping扫描,不做端口扫描

-Pn:跳过主机发现,视所有主机都在线

-PS/PA/PU/PY[portlist]:基于TCP(SYN、ACK)、UDP、SCTP的指定端口的主机发现

-PE/PP/PM:基于ICMP的echo、timestamp、network request的主机发现

-PO[Protocol list]:基于IP协议字段的ping扫描

-n/-R: -n表示不对目标最DNS解析,-R表示进行DNS解析,缺省为必要时候进行DNS解析

--dns-servers <serv1[,serv2],...>: 指定DNS 服务器

--system-dns:调用系统的DNS服务器

--traceroute:显示追踪到目标的路径

6.3扫描技术

-sS/sT/sA/sW/sM:TCP扫描

S是SYN扫描,半连接扫描,nmap只发送SYN报文,通过服务器是否响应SYN+ACK来判断对应端口是否开放

T是全连接扫描会和服务器建立完整的三次握手,效率低

A发送ACK报文,通过服务器响应来判断是否开放,有的服务器不开会回复ICMP端口不可达,当回复RST时表示可能被拦截或者端口开放,不是一个准确的判断条件

W 是窗口扫描,发出的报文和ACK一样,利用的是在某些系统中如果端口开放,收到ACK包后会响应一个窗口非0的RST包

M是Maimon扫描,使用发现者的名字命名。其原理是向目标服务器发送FIN/ACK 报文,在某些系统中如果端口开放则会丢弃该报文不做响应,如果端口关闭则回复RST或者ICMP,Nmap可借此判断服务器端口的开放情况。不准

-sU:UDP扫描,某些系统如果UDP端口不开放会回复ICMP差错报文(这也是Linux系统中traceroute的实现原理)。Nmap UDP端口扫描的强大之处在于它会针对知名端口构造初始交互报文,比如会针对UDP 500构造一个主模式协商的IKE报文

-sN/sF/sX:特定TCP标志位的扫描,N是空标志位;F是FIN置位;X是Xmas扫描将FIN、PSH、URG同时置位。收到RST说明端口关闭,无响应说明被过滤或者端口开放,不准。

--scanflags <flags>:实现上同上面几种类似,可以让用户自定义TCP标志位。

-sI <zombie host[:probeport]>: Idle扫描需要一台没有流量的僵尸主机,这种扫描的实现原理是在一定的时间里,同一台主机发出的IP数据报文其ip头中的identification字段是累加的。探测分为3步:1、Nmap主机向僵尸机发包,通过僵尸机的响应包探测其ID;2、Nmap主机伪造僵尸机源地址向服务器的特定端口发送SYN包;3、Nmap主机再次探测僵尸机的ip.id。如果目标服务器端口开放,则必然会向僵尸机发送SYN/ACK,由于莫名其妙收到一个SYN/ACK 报文,僵尸机会向目标服务器发送RST报文,该报文的ip.id 是第一步+1,则第三步Nmap主机探测到的ip.id应该是第一步+2,说明目标主机端口开放。反之,如果目标主机端口未开放,则收到第二步的报文后会向僵尸机回复RST或者直接丢弃该报文不响应,无论哪种情况,都不会触发僵尸机发包,进而僵尸机的ip.id不会变化,第三步Nmap探测到的id应该是第一步+1.

-sY/sZ:SCTP协议INIT或cookie-echo扫描

-sO:基于IP协议的扫描,通过变换IP报文头中的Protocol值来对服务器进行探测

-b <FTP relay host>::FTP反弹扫描,借助FTP特性,通过FTP服务器连接想要扫描的主机实现隐身的目的

6.4、端口相关参数

-p:指定端口扫描范围,如:-p22; -p1-65535; -p U:53,111,137,T:21-25,80,139,8080,S:9

--exclude-ports <port ranges>: 排除端口

-F:扫描比缺省少的端口(缺省1000,加了-F100)

-r:顺序扫描端口,缺省是随机分组扫描

--top-ports <number>:按top排序扫描知名端口

--port-ratio <ratio>: 按比例扫描知名端口,值在0-1之间,越小扫的越多

系统/版本探测

-sV:探测开放的端口的系统/服务信息

--version-intensity <level>:设置版本检测的详程度级别,0-9,越高越详细

--version-light:输出最可能的版本信息,缺省是2

--version-all:使用所有的探测条件进行版本/系统探测

--version-trace:打印详细的版本扫描过程

6.5脚本扫描

--script=<Lua scripts>:指定脚本名称

--script-args=<n1=v1,[n2=v2,...]>:为脚本指定参数

--script-help=<Lua scripts>: 查看脚本帮助信息

--script-updatedb:更新脚本数据库

6.6系统探测

-O:激活系统探测

--osscan-limit:只对开放端口的有效主机进行系统探测

--osscan-guess:推测系统信息

6.7其他

-T<0-5>:时间模板,越大速度越快

-6:使能IPV6探测

-A:使能系统探测、版本检测、脚本扫描、路由追踪

-V:打印版本号

-v:增加输出的详细程度

7、实践:

1、查看nmap的参数配置: 命令是nmap

2、进行完整全面的扫描: 命令是nmap -T4 -A -v

3、主机发现,命令是nmap -ps 192.168.31.1

4、探测局域网内活跃主机 命令是nmap -sn 192.168.1.100-120

5、端口扫描 命令是nmap -sS -sU -T4 192.168.31.228

6、版本检测扫描,命令是nmap -sV 192.168.80.1

7、操作系统侦测,命令是nmap -O 192.168.80,1

8、万能开关扫描,命令是nmap -A 192.168.80.1

9、nmap 探测防火墙 命令是nmap -sA 192.168.31.228

10、测试通信(ping):

11、路由跟踪,命令是nmap --traceroute 192.168.80.1

12、 扫描一个段的主机在线状况 ,命令是nmap -sP 192.168.80.1/24

13、nmap帮助命令,nmap -help

14、nmap空闲扫描

15、nmap路由跟踪到外网(www.baidu.com)

nmap工具使用随笔的更多相关文章

  1. 使用nmap工具查询局域网某个网段正在使用的ip地址

    linux下nmap工具可扫描局域网正在使用的ip地址 查询局域网某网段正在使用的ip地址: nmap -sP .* 以上命令,将打印10.10.70.*/24网络所有正在使用的ip地址

  2. Nessus漏洞扫描教程之使用Nmap工具扫描识别指纹

    Nessus漏洞扫描教程之使用Nmap工具扫描识别指纹 Nmap工具的准备工作 当用户对Nessus工具有清晰的认识后,即可使用该工具实施扫描.但是,在扫描之前需要做一些准备工作,如探测网络中活动的主 ...

  3. nc之netcat端口测试与nmap工具

    nc介绍: nc是netcat的简写,有着网络界的瑞士军刀美誉.因为它短小精悍.功能实用,被设计为一个简单.可靠的网络工具,其有Windows和Linux的版本,可通过TCP或UDP协议传输读写数据. ...

  4. kali linux 网络渗透测试学习笔记(一)Nmap工具进行端口扫描

    一.利用Nmap扫描网站服务器的端口开放情况 首先打开我们的kali linux才做系统,再打开其命令行模式,输入:nmap www.csdn.net 如下图所示: 因此,通过这个结果可以表明csdn ...

  5. centos 6.5下安装nmap工具及简单用法

    Nmap是一款针对大型网络的端口扫描工具,被广泛应用于黑客领域做漏洞探测以及安全扫描,其主要功能有主机发现(Host Discovery). 端口扫描(Port Scanning). 版本侦测(Ver ...

  6. Nmap工具使用

    Nmap是一款网络扫描和主机检测的非常有用的工具. Nmap是不局限于仅仅收集信息和枚举,同时可以用来作为一个漏洞探测器或安全扫描器.它可以适用于winodws,linux,mac等操作系统.Nmap ...

  7. (转)使用NMAP工具扫描端口

    原文:http://www.linuxde.net/2013/02/12354.html nmap 是一个用于网络探索或安全评测的工具.它支持 ping 扫描(判定哪些主机在运行),多端口扫描技术(判 ...

  8. Nmap工具用法详解

    Nmap                                       Network  Mapper    是一款开放源代码的网络探测和安全审核工具   1.介绍  

  9. 【shell】nmap工具的使用

    NMap,也就是Network Mapper,是Linux下的网络扫描和嗅探工 具包,其基本功能有三个,一是探测一组主机是否在线:其次是扫描主机端口,嗅探所提供的网络服务:还可以推断主机所用的操作系统 ...

随机推荐

  1. 5、基本数据类型(str)

    5.1.字符串: 1.n1 = "lc" n2 = 'root' n3 = """chang""" n4='''tom' ...

  2. 第13次抽考(IO流)

    1.将文本文件a.txt 复制成 b.txt.要求: a. 用逐个字符复制方式: b. 用逐行读写方式: c. 用字符数组方式 2.将压缩包a.rar复制成b.rar. 注意:复制前后手工打开文件,若 ...

  3. 一、从GitHub浏览Prism示例代码的方式入门WPF下的Prism

    最近这段时间一直在看一个开源软件PowerToys的源码,里面使用Modules的开发风格让我特别着迷,感觉比我现在写代码的风格好了太多太多.我尝试把PowerToys的架构分离了出来,但是发现代码维 ...

  4. WPF教程八:如何更好的使用Application程序集资源

    这一篇单独拿出来分析这个程序集资源,为的就是不想让大家把程序集资源和exe程序强关联,因为程序集资源实际上是二进制资源,后续编译过程中会被嵌入到程序集中,而为了更方便的使用资源,我们要好好梳理一下程序 ...

  5. idea本地调式tomcat源码

    前言 上篇文章中一直没搞定的tomcat源码调试终于搞明白了,p神的代码审计星球里竟然有,真的好b( ̄▽ ̄)d ,写一下过程,还有p神没提到的小坑 准备阶段 1.去官网下东西:https://tomc ...

  6. Socket 编程介绍

    Socket 编程发展 Linux Socket 编程领域,为了处理大量连接请求场景,需要使用非阻塞 I/O 和复用.select.poll 和 epoll 是 Linux API 提供的 I/O 复 ...

  7. JAVA入门基础及流程控制

    JAVA入门基础及流程控制 数据类型 位 存储单位 eg:0001 0011 八位 字节 byte 处理数据单位 一字节等于八位 eg:1b=0011 0001 类变量: static int num ...

  8. DNS域名解析四种配置实验 ---Linux DNS域名解析服务

    DNS域名解析服务一.BIND域名服务基础1) DNS的定义2)域名结构3)DNS系统的作用① 正向解析:根据域名查找对应的IP地址② 反向解析:根据IP地址查找对应的域名③ DNS系统的分布式数据结 ...

  9. css颜色介绍和背景设置

    现在美丽网页的设计图中颜色五花八门的,网页模块中漂亮背景图也很多,网页中颜色和背景设置必不可少,接下来我们就先学颜色是如何表达的,要知其然,知其所以然. 颜色表达形式 1.RGB:rgb( red, ...

  10. Quick BI的复杂系统为例:那些年,我们一起做过的性能优化

    背景 一直以来,性能都是技术层面不可避开的话题,尤其在中大型复杂项目中.犹如汽车整车性能,追求极速的同时,还要保障舒适性和实用性,而在汽车制造的每个环节.零件整合情况.发动机调校等等,都会最终影响用户 ...