Nmap工具介绍

Nmap是一款开放源代码的网络探测和安全审核工具,它被设计用来快速扫描大型网络、包括主机探测与发现、开放的端口情况、操作系统与应用服务指纹、WAF识别及常见安全漏洞。

它的图形化界面是 Zenmap、分布式框架为 Dnmap

Nmap功能

主机探测:探测网络上的主机,如列出TCP/ICMP请求或开放特别端口的主机。
端口扫描:探测目标主机所开放的端口。
版本检测:探测目标主机的网络服务。判断其服务名称以及版本号。
系统监测:探测目标主机的操作系统以及网络设备的硬件特性。
支持探测脚本的编写:使用 Nmap 脚本引擎和 Lua 编程语言

Nmap安装

下载地址:点击前往

Windows版本直接下载对应版本安装,Linux系统则使用rpm命令进行安装

端口状态识别

Nmap使用参数

使用 “Nmap -h” 获取更多使用参数


重要参数

-sP:ping扫描 (不进行端口扫描)
-sT:进行TCP全连接扫描
-sS:进行SYN半连接扫描
-sF:进行FIN扫描
-sN:进行Null扫描
-sX:进行Xmas扫描
-O:进行探测目标主机版本
-sV:可以显示服务的详细版本
-A:全面扫描
-p:指定端口扫描
-oN:会将扫描出来的结果保存成一个 txt 文件
-oX:会将扫描出来的结果保存成一个 xml 文件

[-T1]–[-T5]:提高扫描速度

常用命令

一般当扫描主机防火墙打开时,是无法直接扫描的

扫描单个目标地址

Nmap 192.168.1.1

扫描多个目标地址

Nmap 192.168.1.1 192.168.1.2

扫描范围内的目标地址

Nmap 192.168.1.1-254

扫描目标地址所在的网段

Nmap 192.168.1.1/24

扫描主机列表 1.txt中所有的目标地址

Nmap -iL 1.txt

扫描除某一目标地址之外的所有目标地址

Nmap 192.168.1.1/24 -exclude 192.168.1.100

扫描除某一文件中的目标地址之外的目标地址

Nmap 192.168.1.1/24 -excludefile targets.txt      // targets文件中ip不扫描

扫描某一目标地址(自定义的)端口

Nmap 192.168.1.1 -p 135,445,3389

对目标地址进行路由追踪

Nmap --traceroute 192.168.1.1

扫描目标地址所在C段的在线状态

Nmap -sP 192.168.1.1/24    //-sP(Arp ping)是平扫描

对目标地址的操作系统指纹识别

Nmap -O/-A 192.168.1.1

对目标地址提供的服务版本检测

Nmap -sV 192.168.1.1

探测防火墙状态

Nmap -sF -T4 192.168.1.1

TCP SYN Ping扫描

Nmap -sP -PS 192.168.1.1
//-PS 让nmap使用SYN包而不是ACK包来对目标主机进行扫描。如果主机正在运行就返回一个RST包(或者一个SYN/ACK包)。-PS默认在80端口发送TCP SYN数据包;我们还可以指定端口,例如 -PS 135(指定135)端口。当管理员对TCP SYN数据包中的SYN数据包没有过滤时可绕过。

-PA TCP ACK Ping扫描

Nmap -sP -PA 192.168.1.1
//类比TCP SYN Ping扫描

-Pn 非ping扫描

Nmap -Pn 192.168.1.1          //常与其他命令联合使用
//不执行主机发现,可以跳过防火墙 ( 常用)

-vv 对扫描结果详细输出(vv小写)

Nmap -vv  192.168.1.1
//输出结果里包含了开放端口,扫描方法,端口对应服务协议等

鉴权扫描

Nmap --script=auth 192.168.1.1    //--script=auth 该参数可以对目标主机或目标主机所在的网段进行应用弱口令检测

暴力破解攻击

Nmap --script=brute 192.168.1.1
//--script=brute 可对数据库、SMB、Snmp等进行简单密码的暴力破解

扫描常见漏洞

Nmap --script=vuln 192.168.1.1
Nmap具有漏洞扫描的功能,可以检查目标主机或网段是否存在常见的漏洞

应用服务扫描

Nmap --script=realvnc-auth-bypass 192.168.1.1
Nmap具有常见应用服务的扫描脚本,如vnc服务、mysql服务、telnet服务、rsync服务

探测局域网内更多服务开启情况

Nmap -n -p 445 --script=broadcast 192.168.1.1

Whois解析

Nmap -script external xxx.com

列表扫描

Nmap -sL 192.168.1.1/24
//该命令仅仅列出指定网络上的每台主机,不会向目标主机发送任何报文。
//端口扫描,操作系统探测或者ping扫描,在该命令下不会执行。

识别和绕过防火墙与IDS

主机发现和端口扫描参数区分

一、主机发现
-Pn:只有该命令将指定的主机视作开启,跳过主机发现的过程用作穿透防火墙
-PA/-PS/-PU/-PY:使用TCP ACK/SYN/或SCTP INIT/ECHO方式来发现主机二、端口扫描
-sS/-sA/-sF:使用TCP SYN/ACK/FIN扫描,比较隐蔽
-sU:使用UDP扫描方式确定目标主机UDP端口情况
-sP:ping扫描,易被发现,可能会漏掉很多实际存活的主机

nmap的脚本

常用的脚本设置:–script=类别 进行扫描

常见的类别如下:

auth:绕过鉴权扫描
例:nmap --script=auth 192.168.11.1
broadcast:在局域网内探查更多服务开启的情况
brute:对常见的HTTP/SMTP等应用协议提供暴力破解
dos:用于拒绝服务攻击
vuln:用于检查目标机是否有常见漏洞
version:负责增强服务与版本扫描的功能的脚本
malware:探测目标机是否感染了病毒,开启后门等信息
fuzzer:模糊测试脚本,发送异常的包到目标机,探测出潜在漏洞
–script-updatedb:脚本更新

【安全工具】Nmap基本使用方法相关推荐

  1. Kail Linux渗透测试教程之网络扫描和嗅探工具Nmap

    Kail Linux渗透测试教程之网络扫描和嗅探工具Nmap 网络扫描和嗅探工具--Nmap Nmap也就网络映射器(Network Mapper),是一个免费开放的网络扫描和嗅探工具.该工具可以扫描 ...

  2. kali linux nmap使用教程,kali linux下nmap的使用方法介绍

    知道kali 是什么吗,那么linux下nmap的使用方法是怎么回事呢,下面是学习啦小编跟大家分享的是kali linux下nmap的使用方法介绍,欢迎大家来阅读学习. kali linux下nmap ...

  3. 网络扫描工具Nmap常用命令

    网络扫描工具Nmap常用命令 Nmap是一款知名的网络安全审计工具.它免费.开源,可以快速完成各种网络审计功能.它提供了多种探测方式,基于各种网络协议规范,可以发现网络设备并探测设备的各种常见端口.利 ...

  4. Linux性能分析工具与图形化方法

    欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~. 作者:赵坤|腾讯魔王工作室后台开发工程师 在项目开发中,经常会遇到程序启动时间过长.CPU使用率过高等问题,这个时候需要依靠性能分析工具来 ...

  5. 第三次学JAVA再学不好就吃翔(part87)--Arrays工具类的asList方法

    学习笔记,仅供参考,有错必纠 Arrays工具类的asList方法 方法概述 public static <T> List<T> asList(T... a) 返回一个受指定数 ...

  6. python 子线程coredump_python多线程备份mysql数据工具:mysqlpdump使用方法

    mysql的备份工具有很多,但是很多都备份比较慢,那有没办法多线程进行备份呢?分享一个python多线程备份mysql数据工具:mysqlpdump使用方法: mysqlpdump自己的介绍: MyS ...

  7. word没有显示endnote_Word2007或2010未显示EndNote工具条的解决方法 | 科研动力

    Word 2007或2010未显示EndNote工具条的解決方法:1.修复安装:2.修改加载项:3.管理加载中心. 有时在Word 2007/ 2010可能会不显示EndNote工具条,造成这种情况最 ...

  8. java.util.zip 用法,Java压缩文件工具类ZipUtil使用方法代码示例

    本文实例通过Java的Zip输入输出流实现压缩和解压文件,前一部分代码实现获取文件路径,压缩文件名的更改等,具体如下: package com.utility.zip; import java.io. ...

  9. YAHOO工具库提供的方法

    From : http://zuozheng456.blog.163.com/blog/static/23690056200921044354522/ 1.1 YAHOO工具库提供的方法 2009-0 ...

  10. 分页封装实用工具类及其使用方法

    分页封装实用工具类及其使用方法 作者: javaboy2012 Email:yanek@163.com qq:    1046011462 package com.yanek.util; import ...

最新文章

  1. wxWidgets搜索事件处理函数顺序
  2. dockerfile各种命令解析
  3. 可以在没有main()的情况下编写C程序吗?
  4. Andriod中的两种自定义颜色选择器
  5. Java多线程系列(四):4种常用Java线程锁的特点,性能比较、使用场景
  6. java+set+split_阿里资深工程师教你如何优化 Java 代码!
  7. Java 基础 之 赋值运算符
  8. 友商惭愧不?2000+的手机红米直接干到千元
  9. json ajax查询,jQuery AJAX和JSON性能查询
  10. 考研 数学一 公式笔记
  11. 【科研】如何查看自己期刊是不是SCI/EI(含期刊各种信息查询)
  12. 保护你的端口(转自赛迪网)
  13. SringBoot实现PDF签字盖章
  14. 深度融合钉钉PaaS,授客学堂助力企业实现培训数字化
  15. Kafka 中的这些设计思想值得一学!
  16. 11省市联动 828 B2B企业节启动仪式(伟仕佳杰站)顺利举办
  17. 今天试着用原生axios以及jquery下的axios请求数据
  18. 电气功能图绘制你都会了么 ?不会的看过来
  19. CSS 伪类选择器详解:为网页添加交互与美感
  20. 动手学数据分析 第一章之探索性数据分析

热门文章

  1. 高德地图路径轨迹起点标点不变_前有百度高德,后有华为滴滴,腾讯地图该如何上演王者归来的戏码?...
  2. 什么是航位推算(Dead Reckoning )
  3. 中北大学工程硕士计算机技术,中北大学光学工程专业介绍
  4. linux 下orical !)G 的安装
  5. 用python做我的世界代码_从零开始用Python做一个Minecraft成就(进度)生成器
  6. oom killer日志分析
  7. 中国猪饲料行业经营模式与十四五前景形势分析报告2022版
  8. TypeError: super(type, obj): obj must be an instance or subtype of type 该错误的一次处理
  9. 工业控制系统的安全研究与实践引言
  10. 【数通网络交换基础梳理2】三层设备、网关、ARP表、VLAN、路由表及跨网段路由下一跳转发原理