赞
踩
作者:2018065804 blickwinkle
目录
Nmap(Network Mapper)是一款开放源代码的网络探测和安全审核的工具。它被设计用来扫描大型的计算机网络,当然,它也具备对单个主机的扫描能力。Nmap支持多种方式用来发现网络上存在的主机,并探测这些主机的操作系统类型、版本,以及提供的服务类型、版本。甚至可以探测这些主机使用什么类型的报文过滤器/防火墙,并提供了许多其他功能。虽然Nmap通常用于安全审核,许多系统管理员和网络管理员也用它来做一些日常的工作,选择查看整个网络的信息,管理服务升级计划,以及监视主机和服务的运行。
Nmap的下载地址: https://nmap.org/download.html
正如上文中提到的,Nmap具有非常强大且易用的功能, 其常用功能如下:
进入到nmap官方网站

点击download,之后找到Mcrosoft windows binaries

选择一个版本,下载后运行安装文件:


点击next后,选择好安装路径进行安装:


安装完成后便可打开nmap,进行下一步操作:

系统为CentOS等使用yum包管理工具的,可以直接输入命令:
yum install nmap
系统为Ubuntu等使用apt包管理工具的,可以直接使用下列命令进行安装:
sudo apt install zenmap

扫描结果为:
1. nmap的版本,扫描时间
2. 标题
3. 主机的存活状态
4. 端口的状态(扫描nmap默认指定的1000个端口)
5. 目标系统的MAC地址,以及设备类型
6. 显示整个扫描的情况
命令一:nmap IP地址的范围
- namp 192.168.11.112-225
-
- namp 192.168.11.1-255
命令二:nmap IP地址/掩码位数 #使用CIDR的方式来扫描整个网段
nmap 192.168.11.1/24
使用nmap中的--exclude选项
命令语法:nmap 目标范围 --exclude 被排除的目标
- nmap 192.168.21.2-80 --exclude 192.168.21.3 192.168.21.54
-
- nmap 192.168.21.32/24 --exclude 192.168.21.2-43
如果需要经常性的对一些地址进行扫描,可以将这些地址保存在一个文件中。以后,就可以对这个文件中的地址进行扫描,只需要将这个文件设定为目标即可。
命令语法:nmap -iL 文件名
nmap -iL 1.txt
NMAP还可以随机的产生一些互联网上目标,然后对其进行扫描。
命令语法:nmap -iR 随机扫描目标的数量
部分常用命令:
- nmap -v ip 显示详细的扫描过程
- nmap -p ip 扫描指定端口
- nmap -A ip 全面扫描操作系统
- nmap -sP ip 进行ping扫描主机存活
- nmap -Pn/-P0 ip 禁ping扫描
- nmap -sS ip 进行tcp syn扫描 也叫半开放扫描
- nmap -sT ip 进行tcp连接扫描 (准确性高)
端口状态信息:
- > open :端口开启
- > closed :端口关闭
- > filtered :端口被过滤,因为报文被防火墙拦截
- > Unfiltered :不确定端口是否开放 没有被过滤
- > open|filtered(closed|filtered) :不能确定端口是否开放(关闭)或者被过滤
说明手册:
TARGET SPECIFICATION 目标说明
-iL 从主机地址列表文件中导入扫描地址
-iR 随机选择目标进行扫描,unm hosts 表示数目,设置为0则无休止扫描
--exclude 排除某个主机地址
--excludefile 排除主机列表文件中的地址
*************************************************************
HOST DISCOVERY 主机发现
-sL 列表扫描,仅将指定的目标IP列举出来,不进行主机发现
-sn 和-sP一样,只利用ping扫描进行主机发现,不扫描目标主机的端口
-Pn 将所有指定的主机视为已开启状态,跳过主机发现过程
-PS TCP SYN ping ,发送一个设置了SYN标志位的TCP报文,默认端口为80,也可指定端口
-PA TCP ACK ping,发送一个设置了ACK标志位的TCP报文,默认端口为80,也可指定带你看
-PU UDP ping ,发送一个空的UDP报文到指定端口,可穿透只过滤TCp的防火墙
-P0 使用IP协议ping
-PR 使用ARP ping
-n/-R -n不用域名解析,加速扫描,-R为目标IP做为反向解析域名,扫描较慢一些
-dns-servers 自定义域名解析服务器地址
-traceroute 目标主机路由追踪
*************************************************************
SCAN TECHNIQUER 端口扫描
nmap 将目标端口分为6种状态:
open(开放的)
closed(关闭的)
filtered (被过滤的)
unfiltered (未被过滤的)可访问但不确定开发情况
open|filtered (开放或者被过滤)无法确定端口是否开放的还是被过滤的
closed|filtered (关闭或者被过滤)无法确定端口是否关闭还是被过滤的
nmap产生的结果基于目标机器的响应报文的,而这些主机肯能是不可信任的。会产生迷惑或者误导nmap的报文
-sS TCP SYN 扫描,不进行ping 半开放扫描,速度快隐蔽性好(不完成TCP连接),能够明确区分端口状态
-sT TCP 连接扫描,容易产生记录,效率低
-sA TCP ACK扫描,只设置ACK标志位,区别被过滤与未被过滤的
-sU UDP 服务扫描,例如DNS/DHCP等,效率低
-sN;-sF;-sX TCP Null,Fin,Xmas扫描,从RFC挖掘的微妙方法来区分开放关闭端口
-sl 利用僵尸主机上已知IP分段ID序列生成算法来探测目标上开放端口的信息,极端隐蔽
-sO IP协议扫描,可以确定目标主机支持哪些IP协议,例如TCP/ICMP等
************************************************************************
PORT SPECIFICATION AND SCAN ORDER 端口说明和扫描顺序-p 指定扫描的端口,可以是单个端口,也可以是端口范围,可以指定UDP或TCP协议扫描特定端口
-p<name> 指定扫描的协议,例如-p http 即可扫描http协议的端口状态
--exclude-ports 排除指定端口不扫描
-F 极速模式,仅扫描100个常用端口
************************************************************************
SERVICE/VERSION DETECTION 服务与版本探测。
Nmap-services 包含大量服务的数据库,Nmap通过查询该数据库可以报告哪些端口可能对应于扫描服务,但不一定正确
-sV 进行服务版本探测
--version-intensity<level> 设置版本扫描强度,范围为0-9,默认是7,强度越高,时间越长,服务越可能被正确识别
************************************************************************
SCRIPT SCAN 脚本扫描
允许用户自己编写的脚本来执行自动化的操作或者扩展nmap的功能,使用Lua脚本语言。
-sC 使用默认类别的脚本进行扫描
--script=<Lua scripts> 使用某个或某类脚本进行扫描,支持统配符描述
************************************************************************
OS DETECTION 操作系统探测
用TCP/IP协议栈fingerprinting进行探测,Nmap发送一系列TCP和UDP报文到远程主机,检查响应的每一个比特。测试后Nmap吧结果和数据库中超过1500个已知的fingerprints比较,如匹配则输出结果
-O 启用操作系统探测
-A 同时启用操作系统探测和服务版本探测
--osscan-limit 针对指定的目标进行操作系统检测
--osscan-guess 当nmap无法确定所检测的操作系统时,会尽可能地提供相近的匹配
************************************************************************
TIMING AND PERFORMANCE 时间和性能
Nmap开发的最高优先级是性能,但实际应用中很多因素会添加扫描时间,比如特定的扫描选项,防火墙配置以及版本扫描等
-T<0-5> 设置模板级数,在0-5中选择。T0、T1用于IDS规避,T2降低了扫描速度以使用更少的带宽和资源。默认为T3,未作任何优化。T4假设具有合适及可靠的网络从而加速扫描。T5假设具有特别快的网络或者愿为速度牺牲准确性
-host-timeout<time> 放弃低速目标主机,时间单位为毫秒
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。