当前位置:   article > 正文

Nmap工具的介绍及使用方法说明(哈尔滨工程大学计算机学院2021年渗透测试课程设计)_nmap project network service

nmap project network service

作者:2018065804 blickwinkle

目录

 

 1. Nmap介绍

2. Nmap的常用功能 

3. Nmap的安装方法

3.1 Windows环境下的安装方法

3.2 Linux环境下的安装方法 

4. nmap的基本操作

5. 部分常用命令及参数说明


 1. Nmap介绍

Nmap(Network Mapper)是一款开放源代码的网络探测和安全审核的工具。它被设计用来扫描大型的计算机网络,当然,它也具备对单个主机的扫描能力。Nmap支持多种方式用来发现网络上存在的主机,并探测这些主机的操作系统类型、版本,以及提供的服务类型、版本。甚至可以探测这些主机使用什么类型的报文过滤器/防火墙,并提供了许多其他功能。虽然Nmap通常用于安全审核,许多系统管理员和网络管理员也用它来做一些日常的工作,选择查看整个网络的信息,管理服务升级计划,以及监视主机和服务的运行。 

Nmap的下载地址: https://nmap.org/download.html

2. Nmap的常用功能 

正如上文中提到的,Nmap具有非常强大且易用的功能, 其常用功能如下:

  1. 探测网络中存活的主机
  2. 扫描主机端口
  3. 探测主机的操作系统信息及开放的服务信息
  4. 检查主机上存在的漏洞

3. Nmap的安装方法

3.1 Windows环境下的安装方法

进入到nmap官方网站

点击download,之后找到Mcrosoft windows binaries

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

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

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

 

3.2 Linux环境下的安装方法 

系统为CentOS等使用yum包管理工具的,可以直接输入命令:

yum install nmap

系统为Ubuntu等使用apt包管理工具的,可以直接使用下列命令进行安装:

sudo apt install zenmap

4. nmap的基本操作

  • 直接使用nmap对目标ip进行扫描

扫描结果为:

1. nmap的版本,扫描时间

2. 标题

3. 主机的存活状态

4. 端口的状态(扫描nmap默认指定的1000个端口)

5. 目标系统的MAC地址,以及设备类型

6. 显示整个扫描的情况

  •  对一个网段进行扫描

命令一:nmap IP地址的范围

  1. namp 192.168.11.112-225
  2. namp 192.168.11.1-255

命令二:nmap IP地址/掩码位数     #使用CIDR的方式来扫描整个网段

 nmap 192.168.11.1/24
  • 对不连续的主机进行扫描

使用nmap中的--exclude选项

命令语法:nmap 目标范围 --exclude 被排除的目标

  1. nmap 192.168.21.2-80 --exclude 192.168.21.3 192.168.21.54
  2. nmap 192.168.21.32/24 --exclude 192.168.21.2-43
  • 对一个文本文件中的地址列表进行扫描 

如果需要经常性的对一些地址进行扫描,可以将这些地址保存在一个文件中。以后,就可以对这个文件中的地址进行扫描,只需要将这个文件设定为目标即可。

命令语法:nmap -iL 文件名

nmap -iL 1.txt
  • 随机扫描

NMAP还可以随机的产生一些互联网上目标,然后对其进行扫描。

命令语法:nmap -iR 随机扫描目标的数量

5. 部分常用命令及参数说明

 部分常用命令:

  1. nmap -v ip 显示详细的扫描过程
  2. nmap -p ip 扫描指定端口
  3. nmap -A ip 全面扫描操作系统
  4. nmap -sP ip 进行ping扫描主机存活
  5. nmap -Pn/-P0 ip 禁ping扫描
  6. nmap -sS ip 进行tcp syn扫描 也叫半开放扫描
  7. nmap -sT ip 进行tcp连接扫描 (准确性高)

端口状态信息:

  1. > open :端口开启
  2. > closed :端口关闭
  3. > filtered :端口被过滤,因为报文被防火墙拦截
  4. > Unfiltered :不确定端口是否开放 没有被过滤
  5. > 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> 放弃低速目标主机,时间单位为毫秒

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:【wpsshop博客】
推荐阅读
相关标签
  

闽ICP备14008679号