Nmap常用用法

Nmap简介

提及网络扫描,很难饶过Nmap,Nmap[^nmap]是 network Mapper的缩写,开源网路发现及安全审计工具,也用于网络资产、服务管理、监控主机或服务开启状态。支持Linux、Windows、Mac OS X等系统,此外NMap支持插件等高级功能。

Nmap提供的工具:

  • 图形界面Zenmap
  • 数据转换、重定向、调试工具Ncat
  • 扫描结果对比Ndiff
  • 生成及分析报文工具Nping

Nmap下载地址

基本用法

  • Ping — 扫描指定网络的主机,使用ICMP协议的Ping包,禁止ping使用-Pn
nmap -sp 192.168.1.1/24
nmap -Pn 192.168.1.1/24
  • 扫描主机 — 默认扫描约1000多个常见端口,如SQL, SNTP, HTTP, HTTPS等
nmap scanme.nmap.org
  • 完整扫描
nmap -A scanme.nmap.org
  • 端口扫描 - 可指定端口类型、端口范围、常见端口topN等
nmap -p 973 192.168.0.1
nmap -p T:7777, 973 192.168.0.1
nmap -p 76–973 192.168.0.1
nmap --top-ports 10 scanme.nmap.org
  • 导出格式 - 支持直接显示、常规-oN 、XML格式-oX、全部格式-oA
nmap --top-ports 10 scanme.nmap.org
nmap -oN output.txt scanme.nmap.org
nmap -oX output.xml scanme.nmap.org
nmap -oA output scanme.nmap.org

存活扫描

  • Syn检测 - 发送TCP协议三次握手的SYN包,检测是否响应(防火墙禁用SYN检测时,需要完成握手后才转发给服务器)
 nmap -sS scanme.nmap.org

资产识别

版本

  • 组件版本 - 使用-sV参数,可以识别出常见服务的组件名、端口等
nmap -sV scanme.nmap.org
  • 操作系统识别 - 通过ICMP、TCP/IP等协议指纹进行识别,可进行模糊探测
nmap -O scanme.nmap.org
nmap --osscan-guess scanme.nmap.org

Nmap脚本引擎

Nmap脚本引擎(Nmap Scripting Engine,NSE) 提供脚本支持及扩展功能,使用Lua语言,通常脚本用于安全扫描等,详见Chapter 9. Nmap Scripting Engine

脚本分类:

  • 认证auth
  • 广播broadcast
  • 暴破brute
  • 发现discovery
  • 拒绝服务dos
  • 漏洞利用exploit
  • 外部external
  • 模糊探测fuzzer
  • 入侵intrusive
  • 蠕虫检查malware
  • 安全扫描safe
  • 版本识别version
  • 漏洞扫描vuln
  • 默认default

Zenmap

nmap 的图形界面工具,windows安装包中默认后自带。界面有命令参数的提醒及解释。 zenmap

大规模扫描

对于较大的网络(如B段)进行扫描,nmap相对较慢,如需快速扫描,可以使用Zmap[^zmap]等工具,用于存活识别、特定端口识别等。


参考:


最后修改于 2021-12-16