【kali工具】NMAP 高级使用技巧

NMAP 高级使用技巧

6.1.3 NMAP 语法及示例

语法:nmap [Scan Type(s)] [Options]

例 1:使用 nmap 扫描一台服务器

默认情况下,Nmap 会扫描 1000 个最有可能开放的 TCP 端口。

┌──(root💀xuegod53)-[~]

└─# nmap 192.168.1.63

Starting Nmap 7.91 ( Nmap: the Network Mapper - Free Security Scanner ) at 2021-03-04 10:24 CST

Nmap scan report for bogon (192.168.1.63)

Host is up (0.000098s latency).

Not shown: 997 closed ports

PORT STATE SERVICE

22/tcp open ssh

80/tcp open http

111/tcp open rpcbind

MAC Address: 00:50:56:28:C2:08 (VMware)

Nmap done: 1 IP address (1 host up) scanned in 0.49 seconds

例 2: 扫描一台机器,查看它打开的端口及详细信息。

参数说明:

-v 表示显示冗余信息,在扫描过程中显示扫描的细节,从而让用户了解当前的扫描状态。

└─# nmap -v 192.168.1.63 #查看以下相关信息。

Starting Nmap 7.91 ( Nmap: the Network Mapper - Free Security Scanner ) at 2021-03-04 10:26 CST

Initiating ARP Ping Scan at 10:26

Scanning 192.168.1.63 [1 port]

Completed ARP Ping Scan at 10:26, 0.04s elapsed (1 total hosts)

Initiating Parallel DNS resolution of 1 host. at 10:26

Completed Parallel DNS resolution of 1 host. at 10:26, 0.00s elapsed

Initiating SYN Stealth Scan at 10:26

Scanning bogon (192.168.1.63) [1000 ports]

Discovered open port 111/tcp on 192.168.1.63

Discovered open port 22/tcp on 192.168.1.63

Discovered open port 80/tcp on 192.168.1.63

Completed SYN Stealth Scan at 10:26, 0.08s elapsed (1000 total ports)

Nmap scan report for bogon (192.168.1.63)

Host is up (0.00013s latency).

Not shown: 997 closed ports

PORT STATE SERVICE

22/tcp open ssh

80/tcp open http

111/tcp open rpcbind

MAC Address: 00:50:56:28:C2:08 (VMware)

例 3:扫描一个范围: 端口 1-65535

└─# nmap -p 1-65535 192.168.1.63

Starting Nmap 7.91 ( Nmap: the Network Mapper - Free Security Scanner ) at 2021-03-04 10:28 CST

Nmap scan report for bogon (192.168.1.63)

Host is up (0.00084s latency).

Not shown: 65532 closed ports

PORT STATE SERVICE

22/tcp open ssh

80/tcp open http

111/tcp open rpcbind

MAC Address: 00:50:56:28:C2:08 (VMware)

注:生产环境下,我们只需要开启正在提供服务的端口,其他端口都关闭。

关闭不需要开的服务有两种方法:

情景 1:你认识这个服务,直接关服务

└─# systemctl stop rpcbind

情景 2:不认识这个服务,查看哪个进程使用了这个端口并找出进程的路径,然后 kill 进程,删除文

件,接下来以 22 端口为例,操作思路如下:

└─# lsof -i :22 #查看 22 端口正在被哪个进程使用

COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME

sshd 1089 root 3u IPv4 21779 0t0 TCP *:ssh (LISTEN)

通过 ps 命令查找对应的进程文件:

└─# ps -axu | grep 1089

root 1089 0.0 0.1 105996 3744 ? Ss 10:52 0:00 /usr/sbin/sshd -D

注:看到进程的文件的路径是/usr/sbin/sshd 。如果没有看到此命令的具体执行路径,说明此木马

进程可以在 bash 终端下直接执行,通过 which 和 rpm -qf 来查看命令的来源,如下:

└─# which vim

/usr/bin/vim

解决:

└─# kill -9 1089

总结:这个思路主要用于找出黑客监听的后门端口和木马存放的路径。

例 4: 扫描一台机器:查看此服务器开放的端口号和操作系统类型。

└─# nmap -sS -O xueshenit.com

注:-O 参数并不能 100%确认目标操作系统版本,无法确认准确的操作系统版本时 nmap 会给出几

个可能性比较高的建议。

参数说明:

-O: 显示出操作系统的类型。 每一种操作系统都有一个指纹。

-sS:半开扫描(half-open)

测试自己的电脑(物理机):

└─# nmap -sS -O 192.168.1.14

。。。

Running: Microsoft Windows 10

例 5:扫描一个网段中所有机器是什么类型的操作系统。

└─# nmap -sS -O 192.168.1.0/24

例 6: 查找一些有特点的 IP 地址中,开启 80 端口的服务器。

└─# nmap -v -p 80 192.168.1.62-67

例 7:如何更隐藏的去扫描,频繁扫描会被屏蔽或者锁定 IP 地址。

--randomize_hosts # 随机扫描,对目标主机的顺序随机划分

--scan-delay #延时扫描,单位秒,调整探针之间的延迟

(1)、随机扫描

└─# nmap -v --randomize-hosts -p 80 192.168.1.62-69

Nmap scan report for 192.168.1.69 [host down]

Nmap scan report for 192.168.1.68 [host down]

Nmap scan report for 192.168.1.67 [host down]

Nmap scan report for 192.168.1.65 [host down]

Nmap scan report for 192.168.1.66 [host down]

(2)、随机扫描+延时扫描 ,默认单位秒

└─# nmap -v --randomize-hosts --scan-delay 3000ms -p 80 192.168.1.62-69

例 8:使用通配符指定 IP 地址

└─# nmap -v --randomize-hosts --scan-delay 30 -p 80 1.*.2.3-8

例 8:TCP Connect 扫描

└─# nmap -sT 192.168.1.63 -p 80

这种扫描方式和 SYN 扫描很像,只是这种扫描方式完成了 TCP 的三次握手。

例 9:UDP 扫描

└─# nmap -sU 192.168.1.63

端口状态解析:

open:从目标端口得到任意的 UDP 应答

open|filtered:如果目标主机没有给出应答

closed:ICMP 端口无法抵达错误

filtered:ICMP 无法抵达错误

例 10:报文分段扫描

└─# nmap -f -v 192.168.1.63

使用-f 选项可以对 nmap 发送的探测数据包进行分段。这样将原来的数据包分成几个部分,目标网

络的防御机制例如包过滤、防火墙等在对这些数据包进行检测的时候就会变得更加困难。另外必须谨慎使

用这个选项,一些老旧的系统在处理分段的包时经常会出现死机的情况。

例 11:使用诱饵主机隐蔽扫描

在初始的 ping 扫描(ICMP、SYN、ACK 等)阶段或真正的端口扫描,以及远程操作系统检测(-

O)阶段都可以使用诱饵主机选项。但是在进行版本检测或 TCP 连接扫描时,诱饵主机选项是无效的。

(1)、随机 3 个诱饵

└─# nmap -D RND:3 192.168.1.63

(2)、使用自己 IP 作为诱饵

└─# nmap -D ME 192.168.1.63

(3)、指定单个 IP:192.168.1.14 作为诱饵

└─# nmap -D 192.168.1.14 192.168.1.63

(4)、指定多个 IP 作为诱饵对 192.168.1.63 进行探测

└─# nmap -D 192.168.1.14,192.168.1.18 192.168.1.63

例 12:伪造源端口为 8888 对目标进行扫描

└─# nmap --source-port 8888 101.200.128.35

└─# nmap -g 8888 101.200.128.35

例 13:从互联网上随机选择 10 台主机扫描是否运行 Web 服务器(开放 80 端口)

└─# nmap -v -iR 10 -p 80

例 14:将所有主机视为联机,跳过主机发现,这种方式可以穿透防火墙,避免被防火墙发现

└─# nmap -Pn 101.200.128.35

相关推荐

  1. kali工具NMAP 高级使用技巧

    2024-05-16 13:10:06       4 阅读
  2. Nmap工具详细使用过程

    2024-05-16 13:10:06       23 阅读
  3. Namp扫描工具使用

    2024-05-16 13:10:06       29 阅读
  4. nmap端口扫描工具——LInux

    2024-05-16 13:10:06       4 阅读

最近更新

  1. .Net Core WebAPI参数的传递方式

    2024-05-16 13:10:06       0 阅读
  2. QT--气泡框的实现

    2024-05-16 13:10:06       1 阅读
  3. LeetCode 968.监控二叉树 (hard)

    2024-05-16 13:10:06       0 阅读
  4. leetcode热题100.完全平方数(动态规划进阶)

    2024-05-16 13:10:06       0 阅读
  5. leetcode328-Odd Even Linked List

    2024-05-16 13:10:06       0 阅读
  6. C 语言设计模式(结构型)

    2024-05-16 13:10:06       0 阅读
  7. v-if 与 v-show(vue3条件渲染)

    2024-05-16 13:10:06       0 阅读
  8. kafka防止消息丢失配置

    2024-05-16 13:10:06       0 阅读

热门阅读

  1. 一步步教您轻松搭建YOLO训练环境(视频教程)

    2024-05-16 13:10:06       2 阅读
  2. git命令使用

    2024-05-16 13:10:06       3 阅读
  3. iOS 数据库升级

    2024-05-16 13:10:06       3 阅读
  4. LeetCode 22. 括号生成

    2024-05-16 13:10:06       5 阅读
  5. 循环、使用dict和set

    2024-05-16 13:10:06       3 阅读
  6. 使用 Gradle 自定义任务生成初始化 SQL 文件

    2024-05-16 13:10:06       4 阅读
  7. 数学建模(科普)

    2024-05-16 13:10:06       4 阅读
  8. IT行业的现状与未来:技术驱动下的新世界

    2024-05-16 13:10:06       4 阅读
  9. js 数组filter使用

    2024-05-16 13:10:06       4 阅读
  10. RIP、OSPF、BGP等协议及华为路由器配置总结

    2024-05-16 13:10:06       4 阅读