首页 > 其他分享 >nmap 参数详解。

nmap 参数详解。

时间:2024-03-20 16:57:16浏览次数:18  
标签:target nmap 端口 扫描 发送 -- 详解 参数

# 读取文件扫描,一行一个,可以是主机名或者网段。
nmap -iL target.txt

# 随机选择 5 个目标进行扫描。模拟对网络中随机主机的扫描,以便评估网络安全性。
nmap -iR 5

# 排除在扫描范围之外的主机或网络。
nmap 192.168.1.0/24 --exclude 192.168.1.1
nmap 192.168.1.0/24 --exclude 192.168.1.1-50
nmap 192.168.1.0/24 --exclude 192.168.1.128/25
nmap 192.168.1.0/24 --excludefile excluded_hosts.txt

# 主机存活扫描,不会进行端口扫描或发送任何探测数据包。
nmap -sL 192.168.1.0/24

# 只执行Ping扫描
nmap -sn 192.168.1.0/24

# 这将直接对 192.168.1.100 进行端口扫描,而不发送任何主机发现探测包。
nmap -Pn 192.168.1.0/24

# -PS 发送 TCP SYN 包。这是 nmap 默认使用的扫描技术,它发送一个 TCP SYN 包到目标端口,如果收到 SYN/ACK 响应,则表示端口开放。
# -PA 参数用于发送 TCP ACK 包。这种扫描技术用于确定目标主机是否存活,以及用于绕过一些防火墙规则。它发送一个 TCP ACK 包到目标端口,如果收到 RST 响应,则表示端口关闭。
# -PU 参数用于发送 UDP 包。这种扫描技术用于扫描目标主机上的 UDP 端口。它发送一个 UDP 包到目标端口,如果收到 ICMP 端口不可达消息,则表示端口关闭。
# -PY 参数用于发送 SCTP INIT 包。这种扫描技术用于扫描 SCTP 端口。它发送一个 SCTP INIT 包到目标端口,如果收到 INIT ACK 响应,则表示端口开放。
nmap -PS -PA -PU -PY 192.168.1.100


# -PE 发送 ICMP Echo 请求到目标主机,如果收到 ICMP Echo Reply 响应,则表示目标主机是活跃的。
# -PP 发送 ICMP Timestamp 请求到目标主机,如果收到 ICMP Timestamp Reply 响应,则表示目标主机是活跃的。
# -PM 发送 ICMP Address Mask 请求包。如果收到 ICMP Address Mask Reply 响应,则表示目标主机是活跃的。
nmap -PE -PP -PM 192.168.1.0/24

# 不发送探测包,假定主机是活跃的,并对其进行端口扫描。
nmap -PO 192.168.1.100

# -n 禁用 DNS正向解析。
# -R 启用DNS反向解析。
nmap -n -R 192.168.1.0/24

# --dns-servers 指定一个或多个逗号分隔的 DNS 服务器地址。
# --system-dns 使用系统当前配置的默认 DNS 服务器进行主机名解析。
nmap --dns-servers 8.8.8.8,8.8.4.4 192.168.1.0/24
nmap --system-dns 192.168.1.0/24

# --traceroute 它会在执行端口扫描的同时,尝试确定到目标主机的路径,并显示每一跳(hop)的路由信息。
nmap --traceroute target

# 发送一个 SYN 数据包到目标端口,返回 SYN/ACK 响应,表示相应的端口是开放的;如果返回 RST 响应,表示相应的端口是关闭的。
nmap -sS target

# TCP全连接扫描
nmap -sT target

# 发送一个 ACK 数据包到目标端口。
返回 RST 响应,表明该端口是关闭的。
没响应,端口被过滤,有可能是开放的。
回一个 RST/ACK 响应,表明该端口是被防火墙过滤的。
nmap -sA target

# 发送一个SYN包,然后在收到SYN/ACK响应后,不像通常的扫描技术那样回复ACK,而是发送RST包来终止连接。不常用。
nmap -sM target

# UDP扫描
nmap -sU target

# 发送一个没有任何标志位(Null)设置的TCP数据包。如果目标端口是关闭的,它应该发送一个RST响应。
nmap -sN target

# 发送FIN标志的TCP数据包。如果目标端口是关闭的,它应该发送一个RST响应。
nmap -sF target

# Nmap发送一个带有FIN、URG和PSH标志位设置的TCP数据包。如果目标端口是关闭的,它应该发送一个RST响应。
nmap -sX target

# 手动设置TCP扫描的标志位。例如 SYN、ACK、FIN、URG、PSH 和 RST。
nmap --scanflags <flags> target
nmap --scanflags SA target # 可以组合使用,SA=SYN+ACK

# 进行“IDLE扫描”。IDLE扫描利用目标主机上的开放端口来隐藏扫描者的身份,从而实现匿名扫描。
nmap -sI zombie_host target

# 执行SYN扫描。响应一个RST(复位)数据包,表示该端口是关闭的;如果目标主机不响应,或者响应一个SYN/ACK数据包,表示该端口是开放的。
nmap -sY target

# 通过指定的代理执行扫描。
nmap -sT -b <proxyurl> <target>

# 指定扫描端口。
nmap -p 80 <target>
nmap -p 1-100 <target>
nmap -p 80,443,8080 <target>

# 在扫描中排除端口。
nmap --exclude-ports 80,443 <target>
nmap --exclude-ports 1-100 <target>

# 执行快速扫描。通常是 100 个端口。
nmap -F <target>

# 启用“递归扫描”,也称为“追踪路由”。报告每个跃点的路由信息。
nmap -r <target>

# 扫描的前 N 个常见端口。
nmap --top-ports <number> <target>

# 服务版本检测。
nmap -sV target

# 用于指定服务版本检测的强度级别。0 到 9,数字越高表示检测的强度越大。
nmap --version-intensity 5 target

# 将以一种更快速但不太详细的方式进行服务版本检测。
nmap --version-light target

# 全面的服务版本检测。
nmap --version-all target

# 启用服务版本检测的跟踪模式。在识别目标主机上运行的服务及其版本信息时所执行的具体操作,包括发送的数据包和收到的响应。
nmap --version-trace target

# 执行一系列预定义的脚本来自动化常见的渗透测试任务。
nmap -sC target

# 尝试识别目标主机的操作系统类型。
nmap -O target

# 发送多个探测包来识别目标主机的操作系统类型,这可能需要一定时间。
nmap --osscan-limit target

# 尝试对无法确定的操作系统类型进行猜测。
nmap --osscan-guess target

# 指定扫描强度。
nmap -T4 target

#--min-parallelism <numprobes>: 这个选项允许您指定在扫描期间使用的最小并发探测数。如果目标允许,Nmap 将尝试使用至少这么多的并发连接来加快扫描速度。
nmap --min-hostgroup 10 --max-hostgroup 20 target

#-max-parallelism <numprobes>: 这个选项允许您指定在扫描期间使用的最大并发探测数。即使目标支持更多的并发连接,Nmap 也不会超过这个限制。
nmap --min-parallelism 10 --max-parallelism 20 target

# -min-rtt-timeout <time>: 这个选项允许您指定最小的往返时间(RTT)超时时间。RTT 是指从发送数据包到收到响应所需的时间。指定最小的 RTT 超时时间可以确保在网络响应较快的情况下不会浪费时间等待超时。
# --max-rtt-timeout <time>: 这个选项允许您指定最大的往返时间(RTT)超时时间。指定最大的 RTT 超时时间可以确保在网络响应较慢的情况下不会过早地放弃等待响应。
# --initial-rtt-timeout <time>: 这个选项允许您指定初始的往返时间(RTT)超时时间。在扫描开始时,Nmap 将使用这个初始值,并根据网络响应的情况进行动态调整。
nmap --min-rtt-timeout 300ms --max-rtt-timeout 1000ms --initial-rtt-timeout 500ms target

# 指定尝试的次数。没响应时会重试3次。
nmap --max-retries 3 <target>

# 指定等待响应的时间
nmap --host-timeout 10m <target>

# 扫描间隔1秒。
nmap --scan-delay 1s <target>

# 扫描中最大的延迟时间。
nmap --max-scan-delay 5s <target>

# 每秒至少发送100个数据包的速率进行扫描。
nmap --min-rate 100 <target>

# 使用--max-rate参数来指定最大的扫描速率(x包/秒)。
nmap --max-rate 1000 <target>

# 设置发送的数据包的最大传输单元(MTU)。
nmap -f --mtu 32 <target>

# 用于指定欺骗(decoy)主机,以在进行扫描时混淆目标主机。
nmap -D 10.0.0.1,192.168.1.1,172.16.0.1 <target>

# 指定发送扫描数据包时的源IP地址。
nmap -S 192.168.1.100 <target>

# 指定要发送数据包时使用的网络接口。
nmap -e eth0 <target>

# 发送数据包时使用的源端口号。
nmap -g 80 <target>

# 用于指定通过代理服务器执行扫描时要使用的代理列表。代理服务器允许Nmap通过它们进行扫描,从而隐藏扫描的真实来源。这对于需要匿名执行扫描或需要穿越防火墙的情况非常有用。
nmap --proxies http://proxy1:8080,http://proxy2:8080 <target>

# 指定要包含在发送的数据包中的十六进制字符串。这对于需要在扫描中包含自定义数据或特定的有效载荷时非常有用。
nmap --data "48656C6C6F20576F726C64" <target>

# 用于指定要包含在发送的数据包中的字符串。这对于需要在扫描中包含自定义数据或特定的有效载荷时非常有用。
nmap --data-string "Hello World" <target>

# 指定要发送的数据包的长度。这对于测试网络设备或应用程序的响应以及检测网络上的MTU(最大传输单元)限制非常有用。
nmap --data-length 100 <target>

# 允许发送者在IP数据包头部中包含各种选项,这些选项可以用于各种目的,例如记录路由、时间戳等。
nmap --ip-options "LSRR" <target>

# 指定要发送的数据包的生存时间。
nmap --ttl 64 <target>

# 隐藏真实的MAC地址并发送伪造的MAC地址信息。
nmap --spoof-mac 0A:1B:2C:3D:4E:5F <target>
nmap --spoof-mac Cisco <target> # 伪造的厂商名字来欺骗目标系统。

标签:target,nmap,端口,扫描,发送,--,详解,参数
From: https://www.cnblogs.com/jianxiaoxiu/p/18085600

相关文章

  • 异常详解
    1.ArithmeticException:算数错误情形常见异常场景:1.当除数为0时,这种情况比较常见,所以我们在进行除法运算之前先判断下除数是否为02.如果运算的结果是无线循环的小数,并且在除的时候没有对结果设置精确的位数,这时就会抛出异常,这种情况比较容易被忽视,抛出异常后一般都会考虑是否为0,因......
  • 一个入门级python爬虫教程详解
    前言当你需要每天对Excel做大量重复的操作,如果只靠人工来做既浪费时间,又十分枯燥,好在Python为我们提供了许多操作Excel的模块,能够让我们从繁琐的工作中腾出双手。今天就和大家分享一个快速处理Excel的模块openpyxl,它的功能相对与其他模块更为齐全,足够应对日常出......
  • C# 虚方法Virtual详解
    1.Virtual简介virtual关键字用于修改方法、属性、索引器或事件声明,并使它们可以在派生类中被重写。Virtual方法可被任何继承它的类替代,虚拟成员的实现可由派生类中的替代成员更改。调用虚拟方法时,将为替代的成员检查该对象的运行时类型。将调用大部分派生类中的该替代成员,如果没......
  • 英伟达出品:全球最强大芯片Blackwell来了!采用4nm制程,2080 亿个晶体管组,支持10万亿参数
    更多精彩内容在美国加利福尼亚州圣何塞——2024年3月18日 ——NVIDIA于今日宣布推出NVIDIABlackwell平台以赋能计算新时代。该平台可使世界各地的机构都能够在万亿参数的大语言模型(LLM)上构建和运行实时生成式AI,其成本和能耗较上一代产品降低多达25倍。以......
  • Java数据类型详解(更新中)
    基本数据类型概览共8种:整型byte、short、int、long         浮点型float、double           字符型char           布尔型boolean大小1位即1bit,一字节(byte)等于8bit数据类型数据范围byte8位(一个字节)-127~128(2^7)short......
  • 通过docker run启动参数运行指定脚本
    一默认你已经下载了centos:centos7镜像,首先创建docker容器centos7root@arm:/#dockerrun-itd--namecentos7--restartalwayscentos:centos7/bin/bash-c"/etc/init.d/my.sh;/bin/bash"参数说明:1/etc/init.d/my.sh是指定运行的脚本,该脚本创建容器时并不存在2指......
  • PCB板的技术详解和叠构剖析
    PCB板作为现代电子信息产业最重要的载体之一,应用在电子电路产业的方方面面,涵盖了智能手机,AI,显卡,电脑,家用电器,汽车电子等方方面面。本文就PCB板卡叠构做一些分析。1.PCB是什么?PCB也就是印刷电路板,通常指的是一种用于支持和连接电子组件的基板。PCB是电子设备中常见的组......
  • 【一篇带你吃透接口】(详解版)
    这里写目录标题1.接口重要知识汇总2.接口使用的注意事项2.1重写的方法,子类的访问权限要大于等于父类2.2顺序:先继承再实现3.接口为什么能解决多继承问题4.类和接口之间的关系1.接口重要知识汇总1.接口是使用inteface方法来修饰的;2.接口当中不能有被实现的方法,只能有......
  • Vue3 Slot—插槽全家桶使用详解
    插槽是什么插槽slot就是子组件中提供给父组件使用的一个占位符,用<slot></slot>表示,父组件可以给这个占位符内填充任何模板代码,填充的内容会自动替换<slot></slot>标签。插槽被分为三种:匿名插槽、具名插槽、作用域插槽。1、匿名插槽没有名字的插槽就是匿名插槽,组件可以放......
  • Windows 系统中进行一些域管理操作 net group /domain 命令 参数
    Windows系统中进行一些域管理操作。以下是一些常见的用法和参数:列出所有域用户组:bashCopyCodenetgroup/domain查看特定用户组的成员:bashCopyCodenetgroup"GroupName"/domain添加用户到指定用户组:bashCopyCodenetgroup"GroupName"UserName/add/domain......