当前位置:网站首页 > 黑客培训 > 正文

Nmap渗透测试指南

freebuffreebuf 2022-04-21 329 0

本文来源:

简介:

Nmap(也就是Network Mapper,最早是Linux下的网络扫描和嗅探工具包)是一个网络连接端扫描软件,用来扫描网上电脑开放的网络连接端。确定哪些服务运行在哪些连接端,并且推断计算机运行哪个操作系统(这是亦称 fingerprinting)。

————百度百科

nmap最简单用法:nmap IP地址或服务器名,如:nmap 192.168.1.1 , nmap www.wangluojianghu.com。

一、发现活跃主机

以192.168.1.0/24作为目标网段,说明如下:

  • 使用ICMP协议发现活跃主机:nmap -PE 192.168.1.0/24
  • 使用IP协议发现活跃主机:nmap -PO 192.168.1.0/24
  • 使用TCP SYN发现活跃主机:nmap -PS 192.168.1.0/24
  • 使用TCP ACK发现活跃主机:nmap -PA 192.168.1.0/24
  • 使用UDP协议发现活跃主机:nmap -PU 192.168.1.0/24
  • 使用SCTP协议发现活跃主机:nmap -PY 192.168.1.0/24

二、扫描端口

以192.168.1.0/24作为目标网段,说明如下:

1、端口分类

  • 公认端口(well-known port):从0至1024,最常用端口,通常与协议绑定;
  • 注册端口(registered port):从1025至49151,这些端口已经注册到服务协议上;
  • 动态或私有端口(dynamic/private port):从49152至65535。

另外,端口还与协议相关;比如:UDP端口53通常用于DNS查询、TCP端口53通常用于DNS记录迁移。

2、端口状态

  • open:目标端口开启。
  • closed:目标端口关闭。
  • filtered:通常被防火墙拦截,无法判断目标端口开启与否。
  • unfiltered:目标端口可以访问,但无法判断开启与否。
  • open | filtered:无法确定端口是开启还是filtered。
  • closed | filtered:无法确定端口是关闭还是filtered。

3、端口扫描技术

(1)SYN扫描

  • 命令:nmap -sS 192.168.1.0/24
  • 说明:仅发送TCP连接中的SYN进行扫描
  • 判断:返回SYN/ACK应答,表示端口开启;返回RST应答,表示端口关闭。

(2)Connect扫描

  • 命令:nmap -sT 192.168.1.0/24
  • 说明:完成TCP的三次握手阶段进行扫
  • 判断:建立TCP连接、表示端口开启,否则、表示端口关闭。

(3)UDP扫描

  • 命令:nmap -sU 192.168.1.0/24
  • 说明:使用UDP方式进行扫描。
  • 判断:无应答、表示端口开启;返回“Port Unreachable(端口无法抵达)”信息,表示端口关闭。

(4)FIN扫描

  • 命令:nmap -sF 192.168.1.0/24
  • 说明:在TCP数据包中置FIN标志位、然后发送数据包、进行扫描。
  • 判断:无应答、表示端口开启;返回RST应答,表示端口关闭。

(5)NULL扫描

  • 命令:nmap -sN 192.168.1.0/24
  • 说明:在TCP数据包中不包含任何标志、然后发送数据包、进行扫描。
  • 判断:无应答、表示端口开启;返回RST应答,表示端口关闭。

(6)Xmas扫描

  • 命令:nmap -sX 192.168.1.0/24
  • 说明:在TCP数据包中置FIN、RST、PUSH标志位、然后发送数据包、进行扫描。
  • 判断:无应答、表示端口开启;返回RST应答,表示端口关闭。

(7)idle扫描

  • 命令:假设僵尸机是172.16.1.1,nmap -sI 172.16.1.1 192.168.1.0/24
  • 说明:利用僵尸机进行跳转完成对目标的扫描。
  • 判断:当僵尸机返回序列ID增加数量是“2”时、表示端口开启;当僵尸机返回序列ID增加数量是“1”时,表示端口关闭。
  • 详细说明参见:nmap中的Idle scan - CSDN博客

(8)指定端口扫描

  • 命令:nmap -p 端口号 192.168.1.0/24
  • 示例:nmap -p 80 192.168.1.0/24 , nmap -p 80,443 192.168.1.0/24

(9)扫描常见的100个端口(即:Fast快速模式)

  • 命令:nmap -F 192.168.1.0/24

(10)使用协议名字进行扫描

  • 命令:nmap -p 协议名 192.168.1.0/24
  • 示例:nmap -p http 192.168.1.0/24 , nmap -p http,smtp 192.168.1.0/24

(11)扫描常用端口

  • 命令:nmap --top-ports 端口数量 192.168.1.0/24
  • 示例:扫描常用的10个端口 nmap --top-ports 10 192.168.1.0/24

(12)扫描所有端口(效率差,不建议使用)

  • 命令:nmap -p * 192.168.1.0/24

三、操作系统、服务判断

1、判断操作系统:nmap -O 192.168.1.0/24

2、判断服务版本:nmap -sV 192.168.1.0/24

3、综合判断:nmap -A 192.168.1.0/24

四、使用脚本

  • 命令:nmap --script 脚本名 192.168.1.0/24
  • 示例:nmap --script http-methods 192.168.1.0/24

nmap -sS -p 1-65535 -T4 -v -n -Pn -oX E:\ip\result3.html -iL E:\ip\ip.txt

nmap -sS -Pn -n --open --min-hostgroup 4 --min-parallelism 1024 --host-timeout 30 -T4 -v -oG E:\ip\result3.txt -iL E:\ip\ip.txt

五、保存结果

nmap -A 192.168.16.100 -p- -oN nmap1

六、nmap全端口批量扫描命令

nmap -sS -p 1-65535 -T4 -v -n -Pn -oX E:\ip\result3.html -iL E:\ip\ip.txt nmap -sS -Pn -n --open --min-hostgroup 4 --min-parallelism 1024 --host-timeout 30 -T4 -v -oG E:\ip\result3.txt -iL E:\ip\ip.txt 

转载请注明来自网盾网络安全培训,本文标题:《Nmap渗透测试指南》

标签:nmap渗透测试linux开放端口命令模式网络端口服务器端口计算机端口tcp端口

关于我

欢迎关注微信公众号

关于我们

网络安全培训,黑客培训,渗透培训,ctf,攻防

标签列表