Nmap学习笔记
nmap -A 192.168.0.1/24 #超全扫描,慢的一匹
一. 主机发现技术
1.ping扫描
nmap -sP 127.0.0.1
(该选项告诉Nmap仅仅 进行ping扫描 (主机发现),然后打印出对扫描做出响应的那些主机。 没有进一步的测试 (如端口扫描或者操作系统探测)。)
nmap -sn 127.0.0.1
(这比上面多一个mac地址)
2.arp 扫描(只能应用于内网)
nmap -PR 127.0.0.1
3.ICMP扫描
nmap -PE 127.0.0.1
(ICMP响应请求与应答发现)
nmap -PP 127.0.0.1
(ICMP协议的时间戳发现)
nmap -PM 127.0.0.1
(ICMP地址掩码请求和应答发现)
4.TCP协议扫描
nmap -PS[端口1,端口2......] [目标]
(TCP SYN扫描,端口选项可省略)
nmap -PA 127.0.0.1
(TCP ACK扫描,TCP握手的第二步,这种方法成功率不大,多被防护措施杀掉了)
5.UDP扫描
(当UDP端口收到一个UDP包,如果他是关闭的,就会返回一个ICMP端口不可达的数据包,如果开放则会忽略)
nmap -PU 127.0.0.1
(就像这样,UDP扫描可以不要端口号)
6.基于SCTP协议的主机发现
协议详解:https://url.cy/QG2GR4
nmap -PY 127.0.0.1
(这个用的很少,很多机子不支持)
7.基于IP的主机发现
nmap -PO 127.0.0.1
(等价于nmap -PO 1,2,4 127.0.0.1,后面的数字代表IP协议编号,1=ICMP,2=IGMP,4=IP-in IP,6=TCP,17=UDP)
8.杂项
nmap -P0 127.0.0.1
对所有IP进行全部的扫描选项。
nmap -n 127.0.0.1
永不对它发现的活动IP地址进行反向域名解析,这可以加快扫描速度。
nmap -R 127.0.0.1
永远对扫描的IP进行反向域名解析。
nmap --system-dns 192.168.0.1/24
(使用系统域名解析器,目前为止它扫的最全,不知道为啥)
nmap --packet-trace 192.168.0.1/24
这个参数用来查看扫描时详细的数据包,研究原理之必备参数。
二.端口扫描技术
1.SYN扫描 (只发送请求连接数据包)
nmap -sS 192.168.0.1
2.Connect扫描 (完整的三次握手)
nmap -sT 192.168.0.1
3.UDP扫描
nmap -sU 192.168.0.1
4.TCP FIN 扫描
nmap -sF 192.168.0.1
若端口关闭,则返回RST标志。
5.NULL 扫描
nmap -sN 192.168.0.1
发送一个不含标志位的数据包,若端口关闭,返回RST标志。
6.Xmas Tree 扫描
nmap -sX 192.168.0.1
7.扫描特定端口
nmap -F 192.168.0.1 #扫描常见的100个端口
nmap -p 80 192.168.0.1 #扫描指定端口
nmap -p smtp,http 80 192.168.0.1 #使用名字来指定扫描端口
nmap -p * 192.168.0.1 #扫描所有端口
nmap --top-ports 10 192.168.0.1 #对常见10个端口进行扫描
8.扫描发现防火墙规则
nmap -sA 192.168.0.1
#TCP ACK扫描,端口开放或关闭都返回RST,除非防火墙拦截
三.远程操作系统和服务检测技术
nmap -O 192.168.0.1
nmap -O --fuzzy --osscan-guess 192.168.0.1
#新加的参数是猜测的意思
(扫描出来的结果中CPE是:nmap对识别出来的软件、操作系统和硬件的一种命名方式。)
nmap -sV 192.168.0.1 #版本探测
nmap --version-intensity n www.nmap.com.cn
#也是版本探测,n代表探测强度,取值1-9,默认7
nmap -sR www.baidu.com #RPC扫描
若RPC端口打开,则可以确定运行的是什么程序和程序版本
(命令不全,只对常用的命令做了笔记)