Nmap,也就是Network Mapper,最早是Linux下的网络扫描和嗅探工具包。nmap是一个网络连接端扫描软件,用来扫描网上电脑开放的网络连接端。确定哪些服务运行在哪些连接端,并且推断计算机运行哪个操作系统。其基本功能有三个,一是探测一组主机是否在线;其次是扫描 主机端口,嗅探所提供的网络服务;还可以推断主机所用的操作系统 。

Nmap的基本用法

启动Nmap可以点击Kali系统的左上角菜单,搜索Nmap启动,启动后我们会看到这样的窗口。Nmap的用法1.对单个主机的扫描

使用Nmap最简单的方式计算在命令行中输入"nmap ip",比如[email protected]:~#nmap 192.168.3.1
下图是一个简单的扫描结果Nmap的用法
扫描结果的第一行中给出了Nmap的版本为7.80,扫描开始的时间为2020-06-13 04:20

第二行是标题,生成关于192.168.3.1主机的报告。

第三行给出的目标主机状态为up,说明这台主机正处于开机的状态并连上了互联网。

第四行表示在检查的1000个端口中,有997个是关闭的。

接下来是一个表格,有三个字段分别为PORT、STATE、SERVICE,他们分别指的是端口、状态和运行的服务。

比如表格最后一行的Port一列为443/TCP,STATE列为open,SERVICE为https,说明Nmap发现目标计算机上的443端口目前处于开放状态,这个端口提供https的服务。

最后一行意为对1台主机进行扫描,发现1台状态为up的主机,耗时9.26秒。

Nmap还支持大量的参数,这些参数是以横线形式来表示的,例如-sn(Nmap中的参数是区分大小写的)。默认情况下,Nmap会对目标同时进行在线状态和端口扫描,使用-sn参数啧只进行在线状态扫描。

例如:[email protected]:~#nmap -sn 192.168.3.1Nmap的用法
2.对多个不连续的主机进行扫描

Nmap可以一次扫描多个主机,如果这些扫描的目标主机没有任何关系,那么可以将目标地址用空格分开来同时对这些主机扫描。

语法:nmap [目标1 目标2 目标3… 目标n]
我们来对192.168.3.1、192.168.3.6、192.168.3.7这3台主机进行扫描,就可以使用如下命令。
[email protected]:nmap 192.168.3.1 192.168.3.6 192.168.3.7
扫描结果如下
Nmap的用法我们对三个不同ip的主机进行了扫描,其中在线的主机有三个。

3.对连续范围内的主机进行扫描
除此之外,我们还可以对指定范围内多个目标进行扫描。

为了节省时间,我使用了-sn参数,因此只扫描了是否在线,不扫描端口。

[email protected]:nmap -sn 192.168.3.1-255

结果如下图

Nmap的用法Nmap的用法
我们可以看到扫描结果:在这个子网中共有255台设备。

使用Nmap进行主机发现

1.跳过Ping扫描阶段

因为Nmap在进行其他扫描前通常会对目标进行一个ping扫描。如果目标对Ping扫描没反应的话,就会直接结束整个扫描过程。这种方法可以跳过那些没有相应的主机,以此来节省大量时间。但如果目标主机屏蔽了Ping扫描,那么就会多过我们的其他扫描操作。可以指定无论目标是否响应Ping扫描,都要将

整个扫描过程完成的参数:语法规则:nmap -PN [目标]

[email protected]:# nmap -PN 192.168.3.1

结果如图
Nmap的用法
2.仅适用Ping协议进行主机发现
和上面的例子相反,有时候我们要对大量的主机进行扫描。Nmap如果对一个目标采用各种手段进行扫描的话,会浪费很多时间。这时我们就可以选择支队目标采用Ping扫描方式,那么这种方式所使用的参数为-sP

语法规则:nmap -sP [目标]

[email protected]:# nmap -sP 192.168.3.1

Nmap的用法
除此之外呢,我们还可以用到
ARP协议:nmap -PR [目标]
TCP协议:nmap -sS [目标] / nmap -sT [目标]
UDP协议:nmap -sU [目标]

使用Nmap进行端口发现

1.扫描全部端口
如果对所有的65536个端口进行扫描,可以使用参数-p “*”。

语法规则:nmap -p “*” [目标]

[email protected]:# nmap -p “*” 192.168.3.1

Nmap的用法

扫描结果分成3列,第一列是端口的编号,第二列是状态(open或者closed),第三列是运行的服务。

2.扫描前n个端口

我们还可以使用参数–top-ports n来扫描使用频率最高的n个端口。

语法规则:nmap --top-ports n [目标]

如果检测目标使用最高的5个端口,可以使用

[email protected]:# nmap --top-ports 5 192.168.3.1

Nmap的用法3.扫描指定端口

我们可以使用参数-p来对指定的端口进行测试。

语法规则:nmap -p 【端口号】【目标】

例如我们对目标的443端口进行测试的话:

[email protected]:~# nmap -p 443 192.168.3.1
Nmap的用法

使用Nmap扫描目标操作系统

nmap的第三个功能,推断目标主机的操作系统。

我们可以使用参数-O来对主机进行检测。

[email protected]:~# nmap -O 192.168.3.1

Nmap的用法
从Running这一行我们可以看到目标主机的操作系统可能是Linux 2.4.X或者Linux 3.X中的一种。

Nmap的用法功能就介绍完了!

相关文章:

  • 2021-11-18
  • 2021-07-09
  • 2021-09-26
  • 2021-05-24
  • 2022-12-23
  • 2021-08-21
  • 2022-01-10
  • 2021-05-12
猜你喜欢
  • 2021-09-20
  • 2022-01-12
  • 2021-11-05
  • 2022-03-07
  • 2021-09-03
相关资源
相似解决方案