nmap使用教程

nmap使用教程

  • 一、nmap简介
  • 二、nmap常用命令
    • 2.1、target specification(目标规范)
      • 2.1.1、用法
      • 2.1.2、详情
    • 2.2、HOST DISCOVERY(主机发现)
      • 2.2.1、用法
      • 2.2.2、详情
    • 2.3、SCAN TECHNIQUES(扫描技术)
    • 2.4、PORT SPECIFICATION AND SCAN ORDER(端口规格和扫描顺序)
    • 2.5、SERVICE/VERSION DETECTION(服务/版本检测)
    • 2.6、SCRIPT SCAN(脚本扫描)
    • 2.7、OS DETECTION(OS 识别)
    • 2.8、TIMING AND PERFORMANCE(时间与性能)
    • 2.9、FIREWALL/IDS EVASION AND SPOOFING(防火墙/ IDS逃避和欺骗)
    • 2.10、(OUTPUT(Nmap 输出)
    • 2.11、MISC(其他 nmap选项)

一、nmap简介

  • nmap是一款非常强大的主机发现和端口扫描工具,而且nmap运用自带的脚本,还能完成漏洞检测,同时支持多平台。
  • 官方文档:https://nmap.org/man/zh/
  • 查看用法:nmap -h
    在这里插入图片描述

二、nmap常用命令

  • 用法:
nmap [Scan Type(s)] [Options] {target specification}

2.1、target specification(目标规范)

  • 可以使用主机名、IP地址、网络等
  • 例如:scanme.nmap.orgmicrosoft.com/24192.168.0.110.0.0-255.1-254

2.1.1、用法

-iL <inputfilename>				# Input from list of hosts/networks 输入主机/网络列表
-iR <num hosts>					# Choose random targets 随机选择目标
# 选项 0 意味着永无休止的扫描
# nmap -sS -PS80 -iR 0 -p 80	随机地找一些网站浏览--exclude <host1[,host2][,host3],...>	# Exclude hosts/networks 排除主机/网络
--excludefile <exclude_file>			# Exclude list from file 排除文件中的列表

2.1.2、详情

  1. -iL <inputfilename> Input from list of hosts/networks 输入主机/网络列表
    在这里插入图片描述
    在这里插入图片描述

  2. -iR <num hosts> Choose random targets 随机选择目标

    • 选项 0 意味着永无休止的扫描
    • nmap -sS -PS80 -iR 0 -p 80 随机地找一些网站浏览
      在这里插入图片描述
  3. --exclude <host1[,host2][,host3],...> Exclude hosts/networks 排除主机/网络
    在这里插入图片描述
    在这里插入图片描述

  4. --excludefile <exclude_file> Exclude list from file 排除文件中的列表

    • 举例:略

2.2、HOST DISCOVERY(主机发现)

2.2.1、用法

-sL                          			# List Scan - simply list targets to scan 简单的扫描目标
-sn                          			# Ping Scan - disable port scan Ping扫描 - 禁用端口扫描
-Pn                          			# Treat all hosts as online -- skip host discovery 将所有主机视为在在线,跳过主机发现
-PS[portlist]                			# (TCP SYN ping) 需要root权限
-PA[portlist]                			# (TCP ACK ping)
-PU[portlist]                			# (UDP  ping)
-PY[portlist]                			# (SCTP ping)
-PE/PP/PM                    			# ICMP echo, timestamp, and netmask request discovery probes ICMP回显,时间戳和网络掩码请求探测
-PO[protocol list]          		 	# IP Protocol Ping IP协议Ping
-n/-R                        			# Never do DNS resolution/Always resolve [default: sometimes] 从不执行DNS解析/始终解析[默认:有时]
--dns-servers <serv1[,serv2],...>		# Specify custom DNS servers 指定自定义DNS服务器
--system-dns                 			# Use OS's DNS resolver 使用OS的dns服务器
--traceroute                 			# Trace hop path to each host 跟踪到每个主机的跃点路径

2.2.2、详情

  1. -sL List Scan - simply list targets to scan 简单的扫描目标

    • 仅仅只是列出ip区域内的主机,不进行主机发现
    • nmap -sL 192.168.9.140-150 这个参数会列举出140-150内全部ip,但并不会进行主机发现
      在这里插入图片描述
      在这里插入图片描述
  2. -sn Ping Scan - disable port scan Ping扫描 - 禁用端口扫描

    • 这个参数可以和 -sP 归为一类,使用ping进行主机发现,不进行端口扫描
      在这里插入图片描述
      在这里插入图片描述
  3. -Pn Treat all hosts as online – skip host discovery 将所有主机视为在在线,跳过主机发现

    • 过主机发现阶段,直接进行端口扫描,该参数会认为主机为存活状态,端口为全部开放状态,扫描时间较长,在目标有防火墙的情况下,使用该参数,效果较好,等同于-PO
      在这里插入图片描述
  4. -PS[portlist] (TCP SYN ping) 需要root权限

  5. -PA[portlist] (TCP ACK ping)

  6. -PU[portlist] (UDP ping)

  7. -PY[portlist] (SCTP ping)
    在这里插入图片描述

  8. PE/PP/PM ICMP echo, timestamp, and netmask request discovery probes ICMP回显,时间戳和网络掩码请求探测

    • 根据ICMP协议判断端口开放状态,相较于 -sP 更有成效
      在这里插入图片描述
  9. -PO[protocol list] IP Protocol Ping IP协议Ping

  10. -n/-R Never do DNS resolution/Always resolve [default: sometimes] 从不执行DNS解析/始终解析[默认:有时]

    • -n 代表不需要反向解析域名,-R 代表需要反向解析域名
  11. --dns-servers <serv1[,serv2],...> Specify custom DNS servers 指定自定义DNS服务器

  12. --system-dns Use OS’s DNS resolver 使用OS的dns服务器

  13. --traceroute Trace hop path to each host 跟踪到每个主机的跃点路径
    在这里插入图片描述

2.3、SCAN TECHNIQUES(扫描技术)

-sS     			# 使用TCP的SYN进行扫描
-sT    				# 使用TCP进行扫描
-sA                 # 使用TCP的ACK进行扫描
-sW					# Window
-sM					# Maimon scans
-sU                 # UDP扫描
-sN/sF/sX			# TCP Null, FIN, and Xmas scans
--scanflags <flags>	# Customize TCP scan flags 自定义 TCP 包中的 flags
-sI                 # Idle扫描 空闲扫描
-sY/sZ				# SCTP INIT/COOKIE-ECHO scans 
-sO					# IP protocol scan 使用 IP protocol 扫描确定目标机支持 的协议类型
-b<FTP中继主机>     	# FTP反弹扫描

2.4、PORT SPECIFICATION AND SCAN ORDER(端口规格和扫描顺序)

-p <port ranges>				# Only scan specified ports 扫描指定端口 -p : 只扫描指定的端口,-p-代表全端口扫描Ex: -p22; -p1-65535; -p U:53,111,137,T:21-25,80,139,8080,S:9
--exclude-ports <port ranges>	# Exclude the specified ports from scanning	 从扫描中排除指定端口
-F								# Fast mode - Scan fewer ports than the default scan 快速模式-扫描比默认扫描更少的端口
-r								# Scan ports sequentially - don't randomize 连续扫描端口-不随机化
--top-ports <number>			# Scan <number> most common ports  扫描开放概率最高的 number 个端口
--port-ratio <ratio>			# Scan ports more common than <ratio> 扫描指定频率以上的端口 

2.5、SERVICE/VERSION DETECTION(服务/版本检测)

-sV								# Probe open ports to determine service/version info 开放版本探测,可以直接使用 -A 同时打开 操作系统探测和版本探测
--version-intensity <level>		# Set from 0 (light) to 9 (try all probes) 设置版本扫描强度,强度水平说明了应该使 用哪些探测报文。数值越高,服务越有可能被正确识别 。默认是 7
--version-light					# Limit to most likely probes (intensity 2) # 打开轻量级模式,为 --version-intensity 2 的别名
--version-all					# Try every single probe (intensity 9) # 尝试所有探测,为 --version-intensity 9 的别名
--version-trace					# Show detailed version scan activity (for debugging) # 显示出详细的版本侦测过程信息

2.6、SCRIPT SCAN(脚本扫描)

-sC										# 根据端口识别的服务,调用默认脚本 等效于 --script=defult
--script=<Lua scripts>					# 调用的脚本名
--script-args=<n1=v1,[n2=v2,...]>		# 调用的脚本传递的参数
--script-args-file=filename				# 使用文本传递参数
--script-trace 							# 显示所有发送和接收到的数据
--script-updatedb						# 更新脚本的数据库
--script-help=<Lua scripts>				# 显示指定脚本的帮助

在这里插入图片描述

2.7、OS DETECTION(OS 识别)

-O 					# 启用操作系统检测,-A 来同时启用操作系统检测和版本检测
--osscan-limit 		# 针对指定的目标进行操作系统检测 (至少需确知该主机分别有 一个 open 和 closed 的端口)
--osscan-guess 		# 推测操作系统检测结果,当 Nmap 无法确定所检测的操作系统 时,会尽可能地提供最相近的匹配,Nmap 默认进行这种匹配

2.8、TIMING AND PERFORMANCE(时间与性能)

  • 选择“<时间>”的选项以秒为单位,或追加“毫秒”(毫秒),s(秒)、M(分钟),或 “ H ” (小时)的值(如30m)
-T < 0-5 >											# 设置时序模板(更高更快)
--min-hostgroup / max-hostgroup < size >			# 并行主机扫描组大小
--min-parallelism / max-parallelism < numprobes >	# 探针并行
--min-rtt-timeout / max-rtt-timeout / initial-rtt-timeout < time > # 指定探头往返时间
--max-retries < tries >								# 扫描探针重发的端口盖数
--scan-delay / --max-scan-delay < time >			# 调整探针间的延迟
--min-rate < number >								# 每秒发送的数据包不比 < 数字 > 慢
--max-rate < number >								# 发送包的速度不比 < 每秒 > 数字快

2.9、FIREWALL/IDS EVASION AND SPOOFING(防火墙/ IDS逃避和欺骗)

-f; --mtu < val > 							# 指定使用分片、指定数据包的 MTU
-D < decoy1 , decoy2 [,ME ]... >			# 使用诱饵隐蔽扫描
-S < IP_Address >							# 源地址欺骗
-e < interface >							# 使用指定的接口
-g / --source-port < portnum >				# 使用指定源端口
--proxies < url1,[ url2 ]... >			# 使用 HTTP 或者 SOCKS4 的代理
--data < hex string >						# 向发送的数据包追加自定义有效载荷
--data-string < string >					# 添加一个自定义的ASCII字符串发送的数据包
--data-length < num >						# 填充随机数据让数据包长度达到 NUM
--ip-options < options >					# 使用指定的 IP 选项来发送数据包
--ttl < val >								# 设置 IP time-to-live 域
--spoof-mac < mac address / prefix / vendor name >	# MAC 地址伪装
--badsum 									# 使用错误的 checksum 来发送数据包

2.10、(OUTPUT(Nmap 输出)

-oN							# 将标准输出直接写入指定的文件
-oX							# 输出 xml 文件
-oS							# 将所有的输出都改为大写
-oG							# 输出便于通过 bash 或者 perl 处理的格式,非 xml
-oA < basename >			# 可将扫描结果以标准格式、XML 格式和 Grep 格式一 次性输出
-v 							# 提高输出信息的详细度
-d level 					# 设置 debug 级别,最高是 9
--reason					# 显示端口处于带确认状态的原因
--open						# 只输出端口状态为 open 的端口
--packet-trace				# 显示所有发送或者接收到的数据包
--iflist					# 显示路由信息和接口,便于调试
--append-output				# 追加到指定的文件
--resume < filename >		# 恢复已停止的扫描
--stylesheet < path / URL >	# 设置 XSL 样式表,转换 XML 输出
--webxml 					# 从 http://namp.org 得到 XML 的样式 
--no-sytlesheet				# 忽略 XML 声明的 XSL 样式表

2.11、MISC(其他 nmap选项)

-6							# 开启 IPv6
-A 							# OS 识别,版本探测,脚本扫描和 traceroute
--datadir < dirname >		# 说明用户 Nmap 数据文件位置
--send-eth / --send-ip		# 使用原以太网帧发送/在原 IP 层发送
--privileged 				# 假定用户具有全部权限
--unprovoleged				# 假定用户不具有全部权限,创建原始套接字需要 root 权限
-V 							# 打印版本信息
-h							# 输出帮助

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/687164.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【全开源】酷柚易汛ERP 源码部署/售后更新/上线维护

一款基于FastAdminThinkPHPLayui开发的ERP管理系统&#xff0c;帮助中小企业实现ERP管理规范化&#xff0c;此系统能为你解决五大方面的经营问题&#xff1a;1.采购管理 2.销售管理 3.仓库管理 4.资金管理 5.生产管理&#xff0c;适用于&#xff1a;服装鞋帽、化妆品、机械机电…

JINGWHALE 量子能量意识进化理论 —— 全息世界

JINGWHALE 对此论文相关未知以及已知概念、定理、公式、图片等内容的感悟、分析、创新、创造等拥有作品著作权。未经 JINGWHALE 授权&#xff0c;禁止转载与商业使用。 人类对于自身的来源充满了好奇心和求知欲望&#xff0c;探索人类起源是人类科学研究和探索的重要领域之一。…

FMEA助力医疗设备研发制造:领跑未来,实现弯道超车!

医疗设备作为保障人类健康的重要工具&#xff0c;其研发与制造水平直接关系到医疗技术的进步。然而&#xff0c;在激烈的市场竞争中&#xff0c;如何能够让自家医疗设备研发制造实现弯道超车&#xff0c;成为行业佼佼者&#xff1f;答案就在于——FMEA&#xff08;失效模式与影…

uniapp 版本检查更新

总体来说uniapp的跨平台还是很不错的&#xff0c;虽然里面各种坑要去踩&#xff0c;但是踩坑也是开发人员的必修课和成长路。 这不&#xff0c;今天就来研究了一下版本检查更新就踩到坑了。。。先来看看检查更新及下载、安装的实现。 先来看看页面&#xff1a; 从左到右依次为…

JAVA排序相关习题7

1.插入排序 1.1 基本思想 直接插入排序是一种简单的插入排序法&#xff0c;其基本思想是&#xff1a; 把待排序的记录按其关键码值的大小逐个插入到一个已经排好序的有序序列中&#xff0c;直到所有的记录插入完为止&#xff0c;得到一个新的有序序列 。 /*** 时间复杂度&…

JAVA 项目<果园之窗>_完结

目录 1、前言&#xff1a;2、视频展示&#xff1a;3、环境配置&#xff1a;4、工程代码&#xff1a;5、原理&#xff1a;6、原理补充&#xff1a;7、综上&#xff1a; 1、前言&#xff1a; 因为没有足够的时间这个项目用的是别人搭好的框架&#xff0c;在此基础上做调整并根据前…

机器学习算法 - 逻辑回归

逻辑回归是一种广泛应用于统计学和机器学习领域的回归分析方法&#xff0c;主要用于处理二分类问题。它的目的是找到一个最佳拟合模型来预测一个事件的发生概率。以下是逻辑回归的一些核心要点&#xff1a; 基本概念 输出&#xff1a;逻辑回归模型的输出是一个介于0和1之间的…

[ 视频号]代替用户发布视频api

使用接口&#xff0c;替代用户使用设备直接发布视频api 接口地址&#xff1a; http://接口地址/api/v2 先调用登录接口&#xff0c;进行账号登录 登录二维码接口入参&#xff1a; {"appId": "","proxyIp": "","regionId"…

debian testing (预计13版本)wps字体无法正常显示

背 景 本人使用debian办公&#xff0c;原来使用的是debian 12,由于“生命不息&#xff0c;折腾不止“&#xff0c;终于将稳定版的debian 12升级为testing. 结果发现&#xff0c;debian 12能够正常使用的wps存在部分字体无法正常显示&#xff0c;经研究发现&#xff0c;原来是w…

使用com.google.common.collect依赖包中的Lists.transform()方法转换集合对象之后,修改集合中的对象属性,发现不生效

目录 1.1、错误描述 &#xff08;1&#xff09;引入依赖 &#xff08;2&#xff09;模拟代码 &#xff08;3&#xff09;运行结果 1.2、解决方案 1.1、错误描述 最近在开发过程中&#xff0c;使用到了com.google.common.collect依赖包&#xff0c;通过这个依赖包中提供的…

C语言 [力扣]详解环形链表和环形链表II

各位友友们&#xff0c;好久不见呀&#xff01;又到了我们相遇的时候&#xff0c;每次相遇都是一种缘分。但我更加希望我的文章可以帮助到大家。下面就来具体看看今天所要讲的题目。 文章目录 1.环形链表2.环形链表II 1.环形链表 题目描述:https://leetcode.cn/problems/link…

DeepMind的首席执行官Demis Hassabis表示,未来一到两年内,能够独立完成复杂任务的AI代理将成为现实

每周跟踪AI热点新闻动向和震撼发展 想要探索生成式人工智能的前沿进展吗&#xff1f;订阅我们的简报&#xff0c;深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同&#xff0c;从行业内部的深度分析和实用指南中受益。不要错过这个机会&#xff0c;成为AI领…