Nmap的使用

本文涉及的产品
云解析 DNS,旗舰版 1个月
全局流量管理 GTM,标准版 1个月
云防火墙,500元 1000GB
简介: Nmap是一款开源的网络安全扫描工具,用于网络发现和安全审计。它能检测网络上的主机和服务,识别操作系统、开放端口、服务版本,并查找潜在的安全漏洞。Nmap支持多种扫描类型,如主机发现(-sn, -sP等)、端口扫描(-sS, -sT等)、服务和版本探测(-sV)以及操作系统检测(-O)。在使用时,要确保合法性和合规性,避免扫描未经授权的网络。常见参数如 `-oX` 用于输出XML报告,`-A` 选项则进行全面扫描。基础用法包括对单个IP、子网或文件中列出的IP进行扫描。注意,扫描可能消耗大量资源并应适时更新以保证准确性。

NMAP简介

(Network Mapper)是一款开源且免费的网络安全扫描工具,广泛用于网络发现和安全审计。它能够帮助网络管理员和安全专家检测网络上的设备和服务,识别操作系统类型、开放的端口、服务版本以及可能存在的安全漏洞。nmap的强大之处在于其广泛的扫描能力、详细的报告功能以及易于使用的命令行界面。


nmap参考指南(中文版):

https://nmap.org/man/zh/


注意事项

  • 在使用 nmap 进行网络扫描时,务必确保你有权对目标网络进行扫描,以避免侵犯隐私和违反法律法规。
  • 扫描可能会消耗大量的网络带宽和计算资源,因此在进行大规模扫描时,请考虑合理安排时间和资源。
  • 不断更新 nmap 和相关的漏洞数据库,以确保扫描结果的准确性和及时性。

功能介绍

1. 检测网络存活主机(主机发现)

2. 检测主机开放端口(端口发现或枚举)

3. 检测相应端口软件(服务发现)版本

4. 检测操作系统,硬件地址,以及软件版本

5. 检测脆弱性的漏洞(nmap的脚本)


端口状态

Open                   端口开启,数据有到达主机,有程序在端口上监控

Closed                  端口关闭,数据有到达主机,没有程序在端口上监控

Filtered                 数据没有到达主机,返回的结果为空,数据被防火墙或IDS过滤

UnFiltered            数据有到达主机,但是不能识别端口的当前状态

Open|Filtered      端口没有返回值,主要发生在UDPIPFINNULL和Xmas扫描中

Closed|Filtered    只发生在IP ID idle扫描


常用的Nmap操作参数及其功能介绍

1. 主机发现

-sn:Ping扫描,仅进行主机发现,不进行端口扫描。

-sP:使用Ping扫描判断主机是否存活,但不做进一步测试(如端口扫描或操作系统探测)。

-PE-PP-PM:使用不同类型的ICMP请求包(如Echo、Timestamp、Address Mask)进行主机发现。

-PS [portlist]:使用TCP SYN包进行主机发现。

-PA [portlist]:使用TCP ACK包进行主机发现,适用于某些防火墙封锁SYN请求的场景。

-PU [portlist]:使用UDP包进行主机发现,可以穿越只过滤TCP的防火墙。

-Pn:假定所有指定的主机都是活跃的,跳过主机发现阶段,直接进行端口扫描。

2. 端口扫描

-sS:TCP SYN扫描,半开放扫描,不是完整的TCP连接。

-sT:TCP connect()扫描,全连接扫描,准确性高但耗时长。

-sU:UDP扫描,用于扫描UDP端口。

-sN-sF-sX:使用TCP Null、FIN、Xmas(包含FIN、Push、Urgent)扫描进行秘密扫描。

-p:指定扫描的端口或端口范围,如-p 80-p 1-65535

--exclude-ports:排除指定的端口或端口范围,不对其进行扫描。

3. 服务和版本探测

-sV:探测开放端口的服务和版本信息。

--version-intensity:设置服务版本检测的强度级别,0到9,数字越高表示检测的强度越大。

4. 操作系统检测

-O:启用操作系统检测。

5. 扫描性能

-T:设置扫描的时间模板,共有6个级别(0-5),级别越高扫描速度越快,但越容易被防火墙或IDS检测。

--min-parallelism--max-parallelism:设置扫描期间使用的最小和最大并发探测数。

--min-rtt-timeout--max-rtt-timeout:设置最小和最大的往返时间(RTT)超时时间。

6. 输出和日志

-oX:将扫描结果保存为XML格式。

-oA:将扫描结果以所有可用的格式保存,包括XML、normal和grepable。

-oG:将扫描结果保存为grepable格式,便于文本处理。

7. 其他

-n:不进行DNS解析,直接显示IP地址。

-R:总是进行DNS解析。

--dns-servers:指定DNS服务器进行域名解析。

--system-dns:使用系统当前配置的默认DNS服务器进行域名解析。

-traceroute:在扫描过程中追踪到目标主机的路径,并显示每一跳的路由信息。


基础用法

nmap -A -T4 192.168.1.1


A:全面扫描\综合扫描

T4:扫描速度,共有6级,T0-T5


单一主机扫描:namp 192.168.1.2

子网扫描:namp 192.168.1.1/24

多主机扫描:nmap 192.168.1.1  192.168.1.10

主机范围扫描namp 192.168.1.1-100

IP地址列表扫描nmap –iL target.txt

扫描除指定IP外的所有子网主机:nmap 192.168.1.1/24 --exclude 192.168.1.1

扫描除文件中IP外的子网主机:nmap 192.168.1.1/24 --excludefile xxx.txt

扫描特定主机上的80,21,23端口:nmap –p 80,21,23 192.168.1.1


扫描全部端口

nmap -sS -v -T4 -Pn -p 0-65535 -oN FullTCP -iL liveHosts.txt


-sSSYN扫描,又称为半开放扫描,它不打开一个完全的TCP连接,执行得很快,效率高(一个完整的tcp连接需要3次握手,而-sS选项不需要3

握手)

优点:Nmap发送SYN包到远程主机,但是它不会产生任何会话,目标主机几乎不会把连接记入系统日志。(防止对方判断为扫描攻击),扫描速度                快,效率高,在工作中使用频率最高

缺点:它需要root/administrator权限执行


-Pn:扫描之前不需要用ping命令,有些防火墙禁止ping命令。可以使用此选项进行扫描


-iL:导入需要扫描的列表


NMAP漏洞扫描

nmap -p445 -v --script smb-ghost 192.168.1.0/24

目录
相关文章
|
1月前
|
Python
Python编程--使用NMAP端口扫描
Python编程--使用NMAP端口扫描
|
1月前
|
网络协议
Nmap 中的各种端口扫描技术
Nmap 中的各种端口扫描技术
|
XML 数据格式 Python
|
关系型数据库 MySQL
Nmap的使用
Nmap的使用
86 0
|
安全
nmap是什么
nmap 是 kail liunx 一个渗透工具
127 0
|
XML 网络协议 安全
使用nmap端口扫描
nmap是一款实用的网络工具,今天我们来体验如何使用nmap进行端口扫描。
995 0
使用nmap端口扫描
|
网络协议 安全 Linux
|
网络协议 安全 Linux
Nmap工具的使用
nmap是linux最早的网络扫描工具和嗅探工具包,它可以用来扫描网络上电脑开放的网络连接端,确定哪些服务运行在那些连接端,并且推断出计算机运行的是哪个操作系统。它的基本功能有三个,一是探测主机是否在线,然后扫描主机端口,还可以推断主机所使用的操作系统是哪个
|
网络协议 关系型数据库 Linux