主动扫描-Nmap-设备发现

简介: 主动扫描-Nmap-设备发现

主动扫描的工具很多,最为优秀的非Nmap莫属,本篇我们主要先介绍使用Nmap进行设备发现,即确定设备是否为活跃设备。

一、Nmap的基本用法

1、对单台设备扫描:nmap IP地址

starting nmap:表示版本为7.92,扫描开始时间为2023-03-18 05:17


host is up:给出目标设备状态为up(开机并联网)


not shown:表明在检查的1000个端口中,有995个是关闭的


接下来是一张表,分别是端口、状态、提供的服务


最后一行表明共对一台设备进行扫描,一台状态为up,耗时8.47秒


默认情况下nmap会同时进行活跃状态和端口状态扫描,使用参数 -sn只进行活跃状态扫描

2、对IP地址不连续的多台设备扫描:nmap IP地址1 IP地址2 IP地址3 ...

为了节约时间我们这里加上参数 -sn

3、对IP地址在连续范围内的多台设备扫描:nmap IP地址的范围

比如我们对192.168.88.1~192.168.88.255的设备进行扫描

内容太长了,我们还是加上-sn (实际扫描的时候根据实际需求选择加或不加)

4、对整个子网设备的扫描:nmap IP地址/掩码位数

同样以3中的范围为例

二、使用Nmap进行设备发现


1、使用ARP进行设备发现


ARP(地址解析协议)位于TCP/IP模型的网络层,主要用来解决逻辑地址和物理地址的转换关系。同一网段中的通信一般使用物理地址,不同网段之间的通信一般使用逻辑地址。在同一网段中,所有的设备都会连接到交换机上,这些设备的物理地址的表—ARP表,就存在交换机的内容寻址寄存器上。


思路:构造ARP请求数据包,并广播出去,若得到回应,则说明该设备为活跃设备。


当目标设备与我们处于同一网段时,ARP扫描技术是最佳选择,因为没有任何安全措施会阻止正常的ARP请求。


其实在执行nmap命令时就会默认向同一网段的目标设备发送ARP请求,产生的数据包如下


2、使用ICMP进行设备发现


ICMP(因特网控制消息协议)位于网络层,在IP设备、路由器之间传递控制消息。


ICMP的报文可分为两类——差错和查询,Nmap中ICMP活跃设备发现技术使用的是查询报文。


ICMP中适合使用的查询报文有三类:


① 回送请求和回答:使用参数 -PE 实现(这个过程实际和ping命令是一样的)


语法:nmap -PE 目标设备IP地址

向目标设备发送ICMP echo 请求数据包(包中type字段值为8)

若目标在线,且没有防火墙隔离通信,将会收到回应数据包,但可惜的是这种ping的方式已经被很多网络禁止了。

时间戳请求和回答:使用参数 -PP 实现

语法:nmap -PP 目标设备IP地址

(type字段值为13)

地址掩码请求和回答:使用参数 -PM实现

语法:nmap -PM 目标设备IP地址

(type字段值为17)

通常,nmap在进行其他扫描前,都会对目标设备进行ping扫描,若ping扫描没反应,就会直接结束整个扫描过程,我们可以指定无论目标设备是否响应ping扫描,都将整个扫描过程完成。

语法:nmap -Pn 目标设备IP地址

3、使用TCP进行设备发现


TCP是一个位于传输层的协议,它的主要过程由 “三次握手” 构成:


主动端发送SYN数据包,被动端回应SYN+ACK数据包,主动端再回应ACK数据包。


① TCP SYN扫描


使用参数 -PS 向目标设备发送SYN标志的数据包,内容部分为空,默认是80端口


若这个端口是开放的,目标设备就会发回一个SYN+ACK数据包,表示同意建立连接,


若是端口关闭的,则发回RST数据包,表示拒绝这次连接。


无论返回什么包,都表明目标是活跃设备。


语法:nmap -PS 端口1 端口2 ... 目标设备IP址

产生数据包如下:


在指定端口时常用组合:-PS 22 80,而 -PS 80 443 的意义不大(要么都提供,要么都不提供)


② TCP ACK扫描


使用参数 -PA 向目标设备发送ACK标志的数据包


同样是以80为默认端口,也可进行指定。


语法:nmap -sn -PA 目标设备IP地址(数据包太多了为了大家看得清楚这里加了参数 -sn )

产生数据包如下:

实际情况中,这种类型的扫描很少能成功,因为目标设备上的安全机制或安全设备将这种ACK数据包直接过滤了。


4、使用UDP进行设备发现


UDP(用户数据包协议)位于传输层,它完成的工作与TCP是相同的,但UDP不是面向连接的。


当一个端口收到一个UDP数据包时,若它是关闭的,就会给源端口发回一个ICMP端口不可达数据包;若它是开放的,就会直接忽略这个数据包,丢弃且不返回任何信息。


对此我们可以完成对UDP端口的探测,但扫描结果可靠性不高。


UDP扫描使用参数 -PU 实现


语法:nmap -PU 目标设备IP地址

 

OK,本篇内容到此为止,后面将会继续介绍使用Nmap对端口、目标系统、目标服务、web服务的扫描以及将扫描结果存为XML文件等。

相关实践学习
通过Ingress进行灰度发布
本场景您将运行一个简单的应用,部署一个新的应用用于新的发布,并通过Ingress能力实现灰度发布。
容器应用与集群管理
欢迎来到《容器应用与集群管理》课程,本课程是“云原生容器Clouder认证“系列中的第二阶段。课程将向您介绍与容器集群相关的概念和技术,这些概念和技术可以帮助您了解阿里云容器服务ACK/ACK Serverless的使用。同时,本课程也会向您介绍可以采取的工具、方法和可操作步骤,以帮助您了解如何基于容器服务ACK Serverless构建和管理企业级应用。 学习完本课程后,您将能够: 掌握容器集群、容器编排的基本概念 掌握Kubernetes的基础概念及核心思想 掌握阿里云容器服务ACK/ACK Serverless概念及使用方法 基于容器服务ACK Serverless搭建和管理企业级网站应用
目录
相关文章
|
8月前
|
生物认证
第二轮学习笔记: 扫描工具 -- nmap指纹识别与探测
第二轮学习笔记: 扫描工具 -- nmap指纹识别与探测
333 0
|
数据采集 安全
主动扫描和被动扫描
在扫描器中输入目标域名或者URL用爬虫模块爬取所有链接,对GET、POST等请求进行参数变形和污染,进行重放测试,然后依据返回信息中的状态码、数据大小、数据内容关键字等去判断该请求是否含有相应的漏洞。
929 0
主动扫描和被动扫描
|
5月前
|
网络安全 网络架构
Nmap扫描六种端口状态介绍
Nmap扫描六种端口状态介绍
206 2
|
5月前
|
安全 网络协议 网络安全
|
8月前
|
网络协议
第二轮学习笔记: 扫描工具 -- nmap端口扫描
第二轮学习笔记: 扫描工具 -- nmap端口扫描
100 0
|
8月前
|
域名解析 网络协议 网络安全
第二轮学习笔记: 扫描工具 -- nmap主机发现
第二轮学习笔记: 扫描工具 -- nmap主机发现
84 0
|
8月前
|
网络协议 安全 网络安全
第二轮学习笔记: 扫描工具 -- nmap躲避防火墙
第二轮学习笔记: 扫描工具 -- nmap躲避防火墙
81 0
|
8月前
|
安全 网络协议 网络安全
网络扫描与网络监听
网络扫描与网络监听
212 0
|
XML 网络协议 安全
主动扫描-Nmap-端口、系统、服务扫描
主动扫描-Nmap-端口、系统、服务扫描
330 0
|
网络安全 Python
批量探测IP端口检查是否有存在网站导入AWVS进行扫描
批量探测IP端口检查是否有存在网站导入AWVS进行扫描
批量探测IP端口检查是否有存在网站导入AWVS进行扫描