渗透测试工具之Nmap的使用

1、Nmap的简介

Nmap (Network Mapper,网络映射器)是一款开放源代码的网络探测和审核工具。它被设计用来快速扫描大型网络,包括主机探测与发现、开放的端口情况、操作系统与应用服务指纹识别、WAF识别及常见安全漏洞。

2、Nmap的特点如下所示:

(1)主机探测:探测网络上的主机,如列出响应TCP和ICMP的请求、ICMP请求、开放特别端口的主机。

(2)端口扫描:扫描主机所开放的端口。

(3)版本检测:扫描目标主机的网络服务,判断其服务名称及版本号。

(4)系统监测:扫描目标主机的操作系统及网络设备的硬件特性。

(5)支持探测脚本的编写:使用Nmap的脚本引擎(NSE)和Lua编程语言。
Nmap主要包括四个方面的扫描功能,分别是主机发现(Host Discovery)、端口扫描(Port Scanning)、应用与版本侦测(Version Detection)、操作系统侦测(Operating System Detection)。这四项功能之间,又存在大致的依赖关系。

下面将详细介绍以上Nmap各功能之间的依赖关系。如下所示:

(1)首先用户需要进行主机发现,找出活动的主机。然后,确定活动主机上端口状况。

(2)根据端口扫描,以确定端口上具体运行的应用程序与版本信息。

(3)对版本信息侦测后,对操作系统进行侦测。

在这四项基本功能的基础上,Nmap提供防火墙与IDS(Intrusion Detection System,入侵检测系统)的规避技巧,可以综合应用到四个基本功能的各个阶段;另外Nmap提供强大的NSE(Nmap Scripting Language)脚本引擎功能,脚本可以对基本功能进行补充和扩展。

3、探索网络

Nmap的6种端口状态:

Open:开放状态              Closed:关闭状态            Filtered:过滤状态 (可能被过滤,可能网络阻塞)

Unfiltered:未被过滤状态 (可以访问,但未知端口处于开放还是关闭状态)

Open|Filtered:开放还是过滤的                Closed|Filtered:不能确定端口是关闭还是被过滤的

扫描目标时所用到的常见相关参数:

--exclude    后面跟的主机或网段不在扫描范围内
-p    扫描指定的端口

-Pn   将所有指定的主机视作已开启,跳过主机发现的过程

-F    快速模式,仅扫描TOP100的端口

-iL   从文件中导入目标主机或目标网段

-r   不进行端口随机打乱的操作(如无该参数,Nmap将要扫描的端口以随机顺序的方式进行扫描,可以防止防火墙检测到)

-sL    List Scan,仅列举指定目标IP地址,不进行主机发现

-sn    Ping Scan,只进行主机发现,不进行端口扫描
-sS   TCP SYN扫描:(需要root权限)
-sT   TCP连接扫描:完整三次握手,最基础最稳定的扫描方式
-sU   UDP扫描(速度非常慢,一般用-p指定端口范围以节约时间)
-sN/sF/sX 指定使用TCP NULL/FIN/Xmas scans 隐蔽扫描对方TCP端口的状态
-sA   TCP ACK扫描
-sW   TCP窗口扫描
-sM   TCP Maimon扫描
--scanflags   自定义TCP扫描
-sO   使用IP protocol扫描确定主机支持的协议类型

-sV    指定让Nmap进行版本侦测

-T    时序选项

时序选项:
-T0(偏执的):非常慢的扫描,用于IDS逃避
-T1(鬼祟的):缓慢的扫描,用于IDS逃避
-T2(文雅的):降低速度以降低对带宽的消耗,一般不同
-T3(普通的):默认,根据目标的反应自动调整时间
-T4(野蛮的):快速扫描,常用,需要在很好的网络环境下进行扫描,请求可能会淹没目标
-T5(疯狂的):极速扫描,以牺牲准确度来提升扫描速度

4、常用的扫描方式

(1)指定端口扫描

Nmap -p 80 192.168.1.1

 

(2)扫描单个目标地址

Namp  192.168.1.1

(3)扫描多个目标地址

Nmap 192.168.1.1 192.168.1.154

(4)扫描一个范围内的目标地址

Namp 192.168.1.1-160

(5)扫描目标地址所在的整个网段

Nmap 192.168.1.154/24

(6)扫描目标地址的操作系统

Nmap 192.168.1.150

(7)检测防火墙状态

Nmap -sF 192.168.1.150

 

(8)TCP SYN扫描,又称为半开放扫描,常见的扫描方式。扫描速度较快,由于未进行TCP连接,比较隐蔽,很难被防火墙或管理员发现

Nmap -sS 192.168.1.150

 (9)扫描常见的漏洞

Nmap --script=vuln 192.168.1.1

(10)应用服务扫描

Nmap --script=realvnc-auth-bypass 192.168.1.152

猜你喜欢

转载自blog.csdn.net/w1304099880/article/details/104160638