渗透测试神器Nmap使用教程

2023-11-16 19:34:56 浏览数 (2)

简介:

Nmap (网络映射器)是Gordon Lyon最初编写的一种安全扫描器,用于发现计算机网络上的主机和服务,从而创建网络的“映射”。为了实现其目标,Nmap将特定数据包发送到目标主机,然后分析响应.NMAP强大的网络工具,用于枚举和测试网络。

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

Nmap官网:https://nmap.org/

环境部署:Winodws,linux,mac等操作系统均可(Kali自带Nmap工具,直接命令调用即可,安装非常简单,不会请自行百度,就不在这里赘述了)。

常用功能介绍:

1.主机发现(Host Detection):识别网络上的主机,例如,列出响应TCP和/或ICMP请求或打开特定端口的主机。

2.端口扫描(Port Scanning): 枚举目标主机上的开放端口。

3.版本侦测(version Detection):检测远程设备上的网络服务以确定应用程序名称和版本号。

4.操作系统侦测(Operating System Detection):检测网络设备的操作系统和硬件特性。

参数语法:

代码语言:javascript复制
nmap [选项/多选项/协议] [目标地址] 
例: nmap -A 127.0.0.1-100  //对一个ip范围进行全面扫描

常用参数:

代码语言:javascript复制
-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地址欺骗  例 nmap -D RND:5 192.168.1.110  RND:为生成随机ip地址 
-sS         : TCP SYN 扫描,速度快, 1秒1000次左右. 较为隐蔽.
-sT         : TCP连接扫描
-sU        : UDP扫描,扫描非常慢,容易被忽视
-sN,-sF       : 隐蔽扫描
-sI          : 空闲扫描,允许端口完全欺骗,可以允许不使用自身ip的情况下发起扫描,非常之隐蔽的扫描.但得先寻找空闲主机,指令为 nmap -p80 -open -script ipidseq 192.168......,第二种是往事随机寻找, nmap -p80 -open -script  ipidseq -iR 2000 (iR选项代表随机选择目标.2000带表选择的数量,-open代表只选择端口开放的空闲主机)
-p-         : 扫描所有端口  1-65535
-top-ports       : 只扫描开发概率最高的端口 后面跟上数值  例  nmap -top-ports  100 , 就是扫描概率最高的前100个端口
<版本探测相关>:
-sV          : 版本探测 ,通过相应的端口探测对应的服务,根据服务的指纹识别出相应的版本.
-sV --allports     : 只有使用--allports才能扫描所有的端口,默认情况下回跳过如 TCP9100端口(hp打印机专用端口)
--version-intersity   : 设置扫描强度 0-9 ,数值越大越有可能被识别,花费时间越多,默认是7
--version-ligth    : 扫描强度,轻量级扫描(2) ,等用于--version-intersity 2
--version-all       :扫描强度,重量级扫描(9)  ,等同于--version-intersity 9
--version-trace     : 获取详细的版本信息
-sR          : 判断开放端口是否为RPC端口, 如果是返回程序和版本号.
--resaon       : 显示主机存活原因
End...

常用命令:

代码语言:javascript复制
1.Nmap的纯扫描,默认情况下,nmap会发出一个arp ping扫描,且扫描目标tcp端口,范围为1-10000。
nmap 127.0.0.1
2.NMAP普通扫描增加输出冗长(非常详细)
nmap -vv 127.0.0.1
3.端口扫描
nmap 127.0.0.1 -p 80  (指定定单个端口)
nmap 127.0.0.1 -p 1-100 (多个端口)
nmap 127.0.0.1 -p- (所有端口)
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的握手。)
4.路由追踪
nmap --traceroute 127.0.0.1
5.nmap设置扫描一个网段下的ip
nmap -sP 127.0.0.1 /24
6.扫描目标主机版本(不是很准确)
nmap -O 127.0.0.1 -p 80
7.扫描目标服务版本
nmap -O -sV 127.0.0.1 -p 80
8.全面扫描(包含了1-10000端口ping扫描,操作系统扫描,脚本扫描,路由跟踪,服务探测)
nmap -A 127.0.0.1 -p-
9.保存结果
nmap -A 127.0.0.1 -p- -oN nmap1
10.nmap命令混合式扫描
nmap -vv -p1-100 -o 127.0.0.1
11.扫描多个目标
nmap 127.0.0.1 127.0.0.2
nmap 127.0.0.1-100 (扫描IP地址为127.0.0.1-127.0.0.100内的所有主机)
nmap -iL target.txt (namp在同一目录下,扫描这个txt内的所有主机)

注:使用时请将127.0.0.1更换为目标IP地址
End...

效果示例:

努力和收获,都是自己的,与他人无关。最大的成就感,就是一直在朝着自己想要的方向前进。


本文链接:https://cloud.tencent.com/developer/article/2359325

天乐原创文章,转载请注明出处!

0 人点赞