1.Nmap简介
Nmap是一个网络连接端扫描软件,用来扫描网上电脑开放的网络连接端。确定哪些服务运行在哪些连接端,并且推断计算机运行哪个操作系统(这是亦称 fingerprinting)。它是网络管理员必用的软件之一,以及用以评估网络系统安全。
Nmap可以完成以下任务:
- 主机探测
- 端口扫描
- 版本检测
- 系统检测
- 支持探测脚本的编写
Nmap在实际中应用场合如下:
- 通过对设备或者防火墙的探测来审计它的安全性
- 探测目标主机所开放的端口
- 通过识别新的服务器审计网络的安全性
- 探测网络上的主机
2.下载
Nmap目前支持Windows、Linux和Mac三种操作系统平台。
其中Windows和Mac是带有GUI界面的,而Linux的则是命令行界面操作。
Windows 上的 Nmap
kail 上的 Nmap
3.操作指南
Nmap语法以及常用命令
语法: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扫描-T:时序选项, 从TO-T5。级别越高,扫描速度越快,但也容易被防火墙或IDS检测并屏蔽掉,在网络通讯状况良好的情况推荐使用T4-p:指定端口扫描-F:快速扫描-f:报文分段-sS: TCP SYN 扫描,速度快,1秒1000次左右,较为隐蔽-sT:TCP连接扫描-sU:UDP扫描,扫描非常慢,容易被忽视-p-: 扫描所有端口 1-65535-O:操作系统探测-top-ports: 只扫描开发概率最高的端口 后面跟上数值 例 nmap -top-ports 100 , 就是扫描概率最高的前100个端口
版本探测相关参数
-sV:版本探测,通过相应的端口探测对应的服务,根据服务的指纹识别出相应的版本-sV --allports:只有使用--allports才能扫描所有的端口,仅使用sV的话再默认情况下会跳过部分端口-version-intersity: 设置扫描强度 0-9,数值越大越有可能被识别,花费时间越多,默认是7-version-ligth:扫描强度,轻量级扫描(2),等用于--version-intersity 2-version-all:扫描强度,重量级扫描(9),等同于--version-intersity 9-version-trace:获取详细的版本信息-sR:判断开放端口是否为RPC端口, 如果是返回程序和版本号.-resaon:显示主机存活原因
常用命令
进行全面扫描
nmap –T4 –A –v
### 其中-A选项用于使用进攻性(Aggressive)方式扫描;是最常用的参数
### T4指定扫描过程使用的时序(Timing),总有6个级别(0-5),级别越高,扫描速度越快,但也容易被防火墙或IDS检测并屏蔽掉,在网络通讯状况良好的情况推荐使用T4;
### -v表示显示冗余(verbosity)信息,在扫描过程中显示扫描的细节,从而让用户了解当前的扫描状态。
扫描指定IP地址
nmap 192.168.3.74
扫描整个网段
nmap 192.168.1.1/24
端口发现
nmap 192.168.1.121 -p80
端口扫描状态
Opend端口开放,发现这一点常常是端口扫描的主要目标。Closed端口关闭,没有应用程序在其上监听,过一会扫描也许会开放。Filtered端口被过滤,由于防火墙、路由器规则等阻止到达端口。UnFiltered数据到达了主机,但是不能识别端口当前的状态open|filtered开放或者过滤的,当无法确定端口是开放还是被过滤的closed|filtered关闭或者被过滤的,Nmap不能确定端口是关闭的还是被过滤的