NMAP详解

1. 概述

Nmap是一款开源免费的网络发现(Network Discovery)和安全审计(Security Auditing)工具。软件名字Nmap是Network Mapper的简称。Nmap最初是由Fyodor在1997年开始创建的。随后在开源社区众多的志愿者参与下,该工具逐渐成为最为流行安全必备工具之一。
一般情况下,Nmap用于列举网络主机清单、管理服务升级调度、监控主机或服务运行状况。Nmap可以检测目标机是否在线、端口开放情况、侦测运行的服务类型及版本信息、侦测操作系统与设备类型等信息。

2. Nmap特点

主机探测:探测网络上的主机,例如列出响应TCP和ICMP请求、icmp请求、开放特别端口的主机。

  • 端口扫描:探测目标主机所开放的端口。
  • 版本检测:探测目标主机的网络服务,判断其服务名称及版本号。
  • 系统检测:探测目标主机的操作系统及网络设备的硬件特性。

3. Nmap用途

  1. 通过对设备或者防火墙的探测来审计它的安全性。
  2. 测目标主机所开放的端口。
  3. 网络存储,网络映射,维护和资产管理。
  4. 通过识别新的服务器审计网络的安全性。
  5. 探测网络上的主机。

4. Nmap安装

4.1 环境准备

  1. 操作系统:centos
  2. 环境工具:Nmap7.40
  3. 环境依赖 gcc编译器

4.2. 环境检测

靶机IP:10.20.65.175
主机IP:10.20.65.176
用户名:root
密码:password
如果在线下本地环境中安装Nmap时,先安装gcc编译器,否则编译时会出现错误,centos安装命令:yum install gcc-c++,ubuntu安装命令:apt-get build-depgcc
使用ls命令查看nmap是否在当前目录下,如下图:

image.png

使用解压命令tar -zxvf将nmap-7.40.tgz包进行解压,如下图:


image.png

解压成功之后,进入到nmap目录,使用命令cd nmap-7.40,如下图:


image.png

对nmap进行安装,使用./configure命令进行检测,./configure是源代码安装的第一步,主要的作用是对即将安装的软件进行配置,检查当前的环境是否满足要安装软件的依赖关系,如下图:


image.png

4.3. 源码编译

使用make命令进行nmap源代码编译,生成目标文件,可执行文件。当 make 命令第一次执行时,它扫描 Makefile 找到目标以及其依赖。如果这些依赖自身也是目标,继续为这些依赖扫描 Makefile 建立其依赖关系,然后编译它们,如下图:


image.png

4.4. 源码安装

编译完成之后,使用make install进行安装,make install命令是将生成后的目标可执行文件进行安装,如下图:


image.png

当安装结束会提示NMAP SUCCESSFULLY INSTALLED 表示nmap安装成功,如下图:


image.png

2.4. Nmap验证
使用nmap –v命令进行验证nmap是否安装成功,运行nmap -v会返回nmap的版本及相关信息,如下图:


image.png

使用nmap –h 可以看到nmap的相关帮助信息,其中列出了nmap的所有命令,使用这些命令可以进行主机探测,端口扫描等操作,如下图:


image.png

5. Nmap语法

5.1. 主机发现

  • -sL (列表扫描):列表扫描是主机发现的退化形式,它仅仅列出指定网络上的每台主机,不发送任何报文到目标主机。
  • -sP (Ping扫描):该选项告诉Nmap仅仅进行ping扫描 (主机发现),然后打印出对扫描做出响应的那些主机。
  • -A (复合参数)同时探测操作系统指纹和版本检测
  • -P0/Pn (无ping):该选项完全跳过Nmap主机发现阶段,通常Nmap在进行高强度的扫描时用它确定正在运行的机器。
  • -sn (Ping Scan) 只进行主机发现,不进行端口扫描。
  • -PS/PA/PU/PY[portlist]: 使用TCPSYN/ACK或SCTP INIT/ECHO方式进行发现。
  • -PE/PP/PM: 使用ICMP echo,timestamp,and netmask 请求包发现主机。
  • -PU (portlist) (UDP Ping):使用TCPSYN/ACK或SCTP INIT/ECHO方式进行发现。
  • -n (不用域名解析):-n表示不进行DNS解析;-R表示总是进行DNS解析。
  • --system-dns (使用系统域名解析器):指定使用系统的DNS服务器。
  • --traceroute: 追踪每个路由节点。

5.2. 端口状态

  • Open (开放的):应用程序正在该端口接收TCP 连接或者UDP报文。
  • Closed (关闭的):关闭的端口对于Nmap也是可访问的(它接受Nmap的探测报文并作出响应), 但没有应用程序在其上监听。
  • Filtered (被过滤的):由于包过滤阻止探测报文到达端口, Nmap无法确定该端口是否开放。
  • Unfiltered (未被过滤的):未被过滤状态意味着端口可访问,但Nmap不能确定它是开放还是关闭。
  • open|filtered(开放或者被过滤的):当无法确定端口是开放还是被过滤的,Nmap就把该端口划分成 这种状态。
  • closed|filtered(关闭或者被过滤的):该状态用于Nmap不能确定端口是关闭的还是被过滤的。 它只可能出现在IPID Idle扫描中。

5.3. 端口扫描

  • -sS/sT/sA/sW/sM:指定使用TCP SYN/Connect()/ACK/Window/Maimon scans的方式来对目标主机进行扫描。
  • -sU: 指定使用UDP扫描方式确定目标主机的UDP端口状况。
  • -sN/sF/sX: 指定使用TCP Null, FIN, and Xmas scans秘密扫描方式来协助探测对方的TCP端口状态。
  • -sY/sZ: 使用SCTP INIT/COOKIE-ECHO来扫描SCTP协议端口的开放的情况。
  • -sO: 使用IP protocol 扫描确定目标机支持的协议类型。
  • -p <port ranges>: 只扫描指定的端口。
  • -F: 快速 (有限的端口) 扫描。
  • -r:不要按随机顺序扫描端口。
  • --scanflags: 定制TCP包的flags。

5.4. 服务和版本探测

  • -sV (版本探测):打开版本探测,也可以用-A同时打开操作系统探测和版本探测。
  • --allports:不为版本探测排除任何端口。
  • --version-intensity <intensity> :设置版本扫描强度。
  • --version-light:打开轻量级模式。

5.5. 操作系统探测

  • -O:启用操作系统检测,也可以使用-A来同时启用操作系统检测和版本检测。
  • --osscan-limit: 针对指定的目标进行操作系统检测,如果发现一个打开和关闭的TCP端口时,操作系统检测会更有效。
  • --osscan-guess;--fuzzy:推测操作系统检测结果,当Nmap无法确定所检测的操作系统时,会尽可能地提供最相近的匹配,Nmap默认进行这种匹配。

5.6. 状态输出和保存

  • -v :详细输出扫描状态
  • -oN :标准输出,将标准的输出直接写入指定文件。
  • -oX :XML输出,以XML输出格式直接写入指定文件。
  • -oA :所有格式输出,将所有格式以指定文件名进行输出。

6. Nmap扫描

6.1. 主机扫描

nmap –sL 192.168.90.100-150 //列表扫描
支持IP列表和C段扫描,范围可自定义1/24扫描整个C段。


image.png

nmap -sP 192.168.90.100-150 //ping扫描
nmap -sP 192.168.90.0/24 //寻找网络内所有在线主机
-sP方式是先对主机进行ping测试,Ping 指定范围内的 IP 地址。


image.png

nmap -P0 192.168.90.213 //无ping扫描
-P0方式是无需ping直接对目标进行扫描。


image.png

nmap –sn 192.168.90.100-110 //只进行主机扫描
–sn方式只对主机进行扫描获取主机名,不扫描其端口。


image.png

6.2. 端口扫描

nmap –sS 192.168.90.213 //TCP sys方式扫描,快速和隐蔽的扫描。
使用-sS方式可以快速和隐蔽的扫描,不易被主机发现。


image.png

nmap –sU 192.168.90.213 //使用UDP扫描方式


image.png

nmap –sN 192.168.90.218 //探测对方TCP端口状态


image.png

nmap -p 80 192.168.90.213 //指定端口扫描,如多个端口中间用,逗号分隔


image.png

nmap –F 192.168.90.213 //快速扫描


image.png

6.3. 服务和版本探测

nmap -sV 192.168.90.213 //版本探测
使用-sV可以探测出主机的端口服务类型,具体版本等

image.png

6.4. 操作系统探测

nmap –O 192.168.90.213 //操作系统扫描
-O方式是扫描主机的操作系统,获取主机具体的操作系统及版本。


image.png

6.5. 综合扫描方式

nmap -sS -P0 -sV -O 192.168.90.213
-sS TCP SYN 扫描 (又称半开放,或隐身扫描)
-P0 允许你关闭 ICMP pings,不进行主机发现,直接扫描
-sV 打开系统版本检测
-O 尝试识别远程操作系统
进行隐蔽扫描,探测主机的端口安装服务及服务具体版本,探测出主机所使用的操作系统版本。


image.png

nmap -sS -P0 -A -v 192.168.90.213
使用隐秘扫描模式,不进行主机发现,直接进行扫描,使用复合参数扫描模式对目标主机进行探测。


image.png

6.6. 状态输出及保存

nmap -sS -v 192.168.90.213 -oN /root/text
输出正在扫描的状态,并将扫描结果以普通文本格式保存到指定的文件中。


image.png

image.png

使用linux命令查看文件中的内容 cat /root/text

image.png
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 159,716评论 4 364
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,558评论 1 294
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 109,431评论 0 244
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 44,127评论 0 209
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,511评论 3 287
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,692评论 1 222
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,915评论 2 313
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,664评论 0 202
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,412评论 1 246
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,616评论 2 245
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,105评论 1 260
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,424评论 2 254
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,098评论 3 238
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,096评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,869评论 0 197
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,748评论 2 276
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,641评论 2 271

推荐阅读更多精彩内容

  • Nmap输出的是扫描目标的列表,以及每个目标的补充信息,至于是哪些信息则依赖于所使用的选项。“所感兴趣的端口表格...
    令狐冲233阅读 1,865评论 0 4
  • 1.Nmap扫描 其基本功能有三个,一是探测一组主机是否在线;其次是扫描主机端口,嗅探所提供的网络服务;还可以推断...
    Littleston阅读 706评论 0 1
  • Nmap是一款网络扫描和主机检测的非常有用的工具。 Nmap是不局限于仅仅收集信息和枚举,同时可以用来作为一个漏洞...
    小兲阅读 6,858评论 0 5
  • 1.前言 Nmap是一款开源免费的网络发现(Network Discovery)和安全审计(Security Au...
    啾哥阅读 12,220评论 0 3
  • 看完电影"攀登者",真的很震撼!为每个攀登者的理想和为祖国荣誉而战的精神感动。由于看的认真用心,观影后觉得有些疲惫...
    尹胜悦阅读 55评论 0 0