Nmap的基本使用

一、Nmap概念

简介

        nmap是一个网络连接端扫描软件,用来扫描网上电脑开放的网络连接端。确定哪些服务运行在哪些连接端,并且推断计算机运行哪个操作系统(这是亦称 fingerprinting)。它是网络管理员必用的软件之一,以及用以评估网络系统安全

        正如大多数被用于网络安全的工具,nmap 也是不少黑客及骇客(又称脚本小子)爱用的工具 。系统管理员可以利用nmap来探测工作环境中未经批准使用的服务器,但是黑客会利用nmap来搜集目标电脑的网络设定,从而计划攻击的方法。

        Nmap 常被跟评估系统漏洞软件Nessus 混为一谈。Nmap 以隐秘的手法,避开闯入检测系统的监视,并尽可能不影响目标系统的日常操作。

功能

1.主机探测
2.端口扫描
3.版本检测
4.支持探测脚本的编写

安装

官网:http://nmap.org
图形化:Zenmap

相关参数

-sS TCP SYN扫描

-sU UDP扫描

-sA ACK扫描

-sW 窗口扫描

–scanflags RSTSYNFIN 自定义扫描

-O 检测目标操作系统类型

-sV 检测目标上运行服务的版本

-v 增加输出信息的详细程度

-vv 增加输出详细程度为2

-oA 将nmap输出保存为三种主要格式

-oN 将nmap输出保存为正常格式

-A 全部扫描 激进模式

-T<1-5> 扫描速度 扫描速度越快会被发现的几率就会越高

-p<1-65535> 扫描端口

-p- 扫描所有端口

–script 激活脚本

–script=vuln 激活vuln类别中的所有脚本

-F 100 个最常见的端口

–max-rate 50 速率 <= 50 包/秒

–min-rate 15 速率 >= 15 包/秒

–min-parallelism 100 至少 100 个并行探头

–reason 提供有关其推理和结论的更多详细信息

扫描类型

Nmap端口扫描类型
在使用nmap进行端口扫描时,有三种基本的扫描类型:

  • TCP连接扫描(-sT)
  • SYN半开扫描(-sS)
  • ACK扫描 (-sA)
  • UDP扫描(-sU)
  • TCP窗口扫描 (-sW)

此外,还有三种不太常见的端口扫描类型(用于绕过防火墙):

  • TCP NULL扫描(-sN)
  • TCP FIN扫描(-sF)
  • TCP Xmas扫描(-sX)

二、nmap的安装及使用

1.Windows操作

以Windows操作系统为例,讲解如何安装Nmap。

第一步,从官网https://nmap.org/download.html下载Nmap的安装包,如所示。

第二步,双击安装包,弹出软件的安装界面,单击I Agree按钮

第三步,选择需要安装的功能,若无特别需求,默认即可

 第四步,选择软件安装路径,该软件安装所需空间不大,可选择默认路径

第五步,继续安装并提示相关的软件依赖包的关联

图 15继续安装

第六步,Nmap安装完后,为使用方便,还需进行环境变量的配置。具体步骤为:右 击“计算机”,在弹出的菜单中选择“属性”一“高级系统设置”一“高级”-“环境变 量”命令,在系统变量中找到path»对path进行编辑,在path已有数据后加上英文“;”, 输入Nmap安装目录,本次安装路径为C:\Program Files (x86)\Nmap

设置完成后,可通过系统命令获取Nmap相关信息,以此验证配置是否成功

设置成功后可以利用图形化界面打开Nmap

第七步,探测主机信息


Nmap常用的扫描参数如下:
-sT参数是TCP connect扫描,这种方式会在目标主机的日志中记录大批连接请求和错 误信息。
-sP参数是Ping扫描,Nmap在扫描端口时默认使用Ping扫描,只有主机存活,Nmap 才会继续扫描。
-sS参数是半开扫描,使用时需要root权限,很少有系统将其记入系统日志。
-sU参数是UDP扫描,此扫描不可靠。
-sA参数是用来穿过防火墙的规则集。
-sV参数是探测端口服务版本。
-PO参数是指扫描之前不需要Ping命令,有些防火墙禁止用Ping命令。可以使用此参数进行扫描。
-V参数是指显示扫描过程。
-h参数是指帮助选项。
-p参数是指定端口,如1-65536、1433、135、80等。
-o参数是启用远程操作系统检测,存在误报的情况。
-A参数是指全面系统检测、启用脚本检测、扫描等。
-oN/-oX/-oG参数是指将报告写入文件,分别是正常、XML、grepable三种格式。
-T4参数是指针对TCP端口禁止动态扫描延迟超过10mso
-iL参数是读取主机列表,例如,-iL c:\ip.txt。

第八步,图形化操作

案例一:扫描指定IP上的开放端口。以192.168.56.1为例,扫描1-65535所有端口中的开放端口。

Nmap 命令为 nmap -p 1-65535 -v 192.168.56.1

 

  

案例二:指定端口扫描,只扫描8022端口,以百度为例。

Nmap 命令为 nmap -p 80,22 www.baidu.com

  

案例三:探测主机操作系统,以百度网站为例。

Nmap 命令为 nmap -o www.baidu.com

 

案例四:全面的系统探测,以百度网站为例。

Nmap命令为nmap -v -A www.baidu.com

  

案例五:描目标主机和端口上运行的软件的版本,以本机为例

nmap -sV 192.168.56.1

 案例六:路由跟踪扫描,以百度为例。

nmap -traceroute www.baidu.com

 

 2.kali操作

在kali环境中,已经集成了nmap的软件安装,我们无需在进行安装。

第一步:打开终端

第二步:运行nmap

 第三步:实验案例

 实验一:进行TCP扫描,找出TCP和UDP端口。(扫描真机IP地址)

nmap -sT 192.168.56.1

实验二:远程检测操作系统和软件

nmap -O 192.168.56.1

实验三:网段扫描格式

nmap  -sP 192.168.56.1 /24

 

实验四:查询VMware服务器(vCenter,ESX,ESXi)SOAP API以提取版本信息。

nmap --script vmware-version -p443 192.168.56.1

三、小结

         nmap是一个很强大的工具,对我们查询对方网站的端口以及自己端口是否开启有很大的帮助,如果大家觉得这个工具,就要继续钻研,这只是最基本的用法,加油!

  • 2
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

以我之名,换我未来

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值