Nmap (网络映射器)是Gordon Lyon最初编写的一种安全扫描器,用于发现计算机网络上的主机和服务,从而创建网络的“映射”。为了实现其目标,Nmap将特定数据包发送到目标主机,然后分析响应.NMAP强大的网络工具,用于枚举和测试网络。
Nmap是一款网络扫描和主机检测的非常有用的工具。 Nmap是不局限于仅仅收集信息和枚举,同时可以用来作为一个漏洞探测器或安全扫描器。它可以适用winodws,linux,mac等操作系统,是一款非常强大的渗透测试工具。
常用功能介绍:
参数语法:
nmap [选项/多选项/协议] [目标地址]
扫描主机相关:
-A : 全面扫描,综合扫描,是一种完整扫描目标信息的扫描方式
--exclude : 排除指定的地址
例:nmap 192.168.1.0/24 --exclude 192.168.1.1 那么就不会对192.168.1.1进行扫描
--excludefile : 排除指定的地址列表
例:nmap 192.168.1.0/24 --excludefile list.txt 那么就不会对list.txt里面的地址进行扫描
-iL : 扫描一个列表文件
例:nmap -iL list.txt
-sP : Ping扫描,效率高,返回信息少
例:nmap -sP 192.168.1.110
-P0(Pn) : 无Ping扫描,可以躲避防火墙防护,可以在目标主机禁止ping的情况下使用
-PS : TCP SYN Ping扫描
-PA : TCP ACK Ping扫描
-PR : ARP Ping扫描
-n : 禁止DNS反向解析
-T : 时序选项, -TO-T5. 用于IDS逃逸,0=>非常慢,1=>缓慢的,2=>文雅的,3=>普通的,4=>快速的,5=>急速的
-p : 指定端口扫描
-F : 快速扫描
-f : 报文分段
-D : ip地址欺骗
-sS : TCP SYN 扫描,速度快, 1秒1000次左右. 较为隐蔽
-sT : TCP连接扫描
-sU : UDP扫描,扫描非常慢,容易被忽视
-sN,-sF : 隐蔽扫描
-sI : 空闲扫描,允许端口完全欺骗,可以允许不使用自身ip的情况下发起扫描,非常之隐蔽的扫描
-p- : 扫描所有端口 1-65535
-top-ports : 只扫描开发概率最高的端口 后面跟上数值
例:nmap -top-ports 100,就是扫描概率最高的前100个端口
版本探测相关:
-sV : 版本探测 ,通过相应的端口探测对应的服务,根据服务的指纹识别出相应的版本
-sV --allports : 只有使用--allports才能扫描所有的端口
--version-intersity : 设置扫描强度 0-9,数值越大越有可能被识别,花费时间越多,默认是7
--version-ligth : 扫描强度,轻量级扫描(2),等用于--version-intersity 2
--version-all : 扫描强度,重量级扫描(9),等同于--version-intersity 9
--version-trace : 获取详细的版本信息
-sR : 判断开放端口是否为RPC端口,如果是返回程序和版本号
--resaon : 显示主机存活原因
Nmap的纯扫描
默认情况下,nmap会发出一个arp ping扫描,且扫描目标tcp端口,范围为1-10000
┌──(rootkali)-[~/Desktop]
└─# nmap xxx
Starting Nmap 7.91 ( https://nmap.org ) at 2022-09-19 09:19 EDT
Nmap scan report for 101.42.155.61
Host is up (0.0053s latency).
Not shown: 994 filtered ports
PORT STATE SERVICE
22/tcp open ssh
25/tcp open smtp
80/tcp open http
110/tcp open pop3
143/tcp open imap
7777/tcp open cbt
NMAP普通扫描增加输出冗长
端口扫描
针对单个端口进行扫描:
┌──(rootkali)-[~/Desktop]
└─# nmap 101.42.155.61 -p 8888 1 ⚙
Starting Nmap 7.91 ( https://nmap.org ) at 2022-09-19 09:25 EDT
Nmap scan report for 101.42.155.61
Host is up (0.00036s latency).
PORT STATE SERVICE
8888/tcp filtered sun-answerbook
Nmap done: 1 IP address (1 host up) scanned in 0.39 seconds
也可以指定多个端口或者全端口:
nmap 127.0.0.1 -p 1-100
nmap 127.0.0.1 -p-
全端口扫描结果,比较慢:
Host is up (0.00045s latency).
Not shown: 65528 filtered ports
PORT STATE SERVICE
22/tcp open ssh
25/tcp open smtp
80/tcp open http
110/tcp open pop3
也可以更换扫描的方式,例如:
nmap -sP 10.1.112.89 (Ping扫描)
nmap -sS 127.0.0.1 -p 80 (SYN半连接扫描)
nmap -sT 127.0.0.1 -p 80 (TCP全连接扫描)
nmap -sU 127.0.0.1 (UDP扫描)
nmap -sF 127.0.0.1 (FIN,目标可能有IDS/IPS系统的存在,防火墙可能过滤掉SYN数据包,发送一个FIN标志的数据包不需要完成TCP的握手。)
路由追踪
nmap --traceroute 127.0.0.1
TRACEROUTE (using port 80/tcp)
HOP RTT ADDRESS
1 0.51 ms 192.168.190.2
2 0.12 ms 101.42.155.61
nmap设置扫描一个网段下的ip
nmap -sP 127.0.0.1 /24
扫描目标主机版本
nmap -O 127.0.0.1 -p 80
扫描目标服务版本
nmap -O -sV 127.0.0.1 -p 80
全面扫描(包含了1-10000端口ping扫描,操作系统扫描,脚本扫描,路由跟踪,服务探测)
nmap -A 127.0.0.1 -p-
扫描多个目标
nmap 127.0.0.1-100 (扫描IP地址为127.0.0.1-127.0.0.100内的所有主机)
nmap -iL target.txt (namp在同一目录下,扫描这个txt内的所有主机)
收获都是自己的,与他人无关