当前位置: 首页 > news >正文

nmap工具使用

nmap是一款渗透端口扫描测试工具。它不单单可以进行端口扫描,还可以扫描漏洞、服务器信息等等。是一款十分强大的扫描工具,可以在windows、mac、Linux上运行。

下载

官网地址: https://nmap.org/download.html
我备份的地址:https://download.csdn.net/download/biu801/89421790

一路默认就好了,但是安装地址还是换成自己的位置比较好

输入cmd就能使用了,他是命令行工具

使用

nmap[扫描类型][选项]{目标规范}

nmap IP    扫描IP
nmap -v IP    加强扫描
nmap IP1 IP2 ...    扫描多IP
nmap a.b.c.*    扫描整个子网
nmap a.b.c.x,y,...    扫描多子网地址
nmap -iL xxx.txt    根据文件扫描多IP
nmap a.b.c.x-y    扫描子网IP范围
nmap a.b.c.* --exclude IP    排除指定IP扫描整个子网
nmap -A IP    扫描操作系统和路由跟踪
nmap -O IP    探测操作系统
nmap -sA/-PN IP    探测防火墙
nmap -sP a.b.c.*    探测在线主机
nmap -F IP    快速扫描
nmap -r IP    按顺序扫描
nmap -iflist    显示接口和路由信息
nmap -p n1,n2... IP    扫描指定端口
nmap -p T:n1,n2... IP    扫描TCP端口
nmap -sU n1,n2... IP    扫描UDP端口
nmap -sV IP    查看服务的版本
nmap -PS IP    TCP ACK扫描
nmap -PA IP    TCP SYN扫描
nmap -sS IP    隐蔽扫描
nmap -sN IP    TCP空扫描欺骗防火墙

参数详解

-p<端口范围>:仅扫描指定的端口

nmap -p 80,3306,22,23,443  {IP} :指定端口扫描
nmap -p 1-65535 {IP}:全面扫描,计算机端口共65535个。
nmap -p- {IP}:另一种全面扫描(缩减版): -p- 

显示扫描信息: -v(使用-vv或更多效果)

nmap p 80,3306,22,23,443 -v {IP}

高级穿透防火墙扫描: -sA

用于穿透防火墙,遇到禁止Ping的网站使用,与PN类似
nmap -sA  127.0.0.1

探测端口版本: -sV

nmap -sV - 127.0.0.1

写入报告:-oN/-oX/-oS/-oG <file>

nmap -oNoutput.nmap <target>:将扫描结果保存到名为output.nmap的文件中
nmap -oXoutput.xml <target>:将扫描结果保存到名为output.xml的文件中
nmap -oSoutput.svg <target>:将扫描结果保存到名为output.svg的文件中
nmap -oGoutput.gnp <target>:将扫描结果保存到名为output.gnp的文件中

扫描客户端存活主机:-sP

可扫描1-255 域名/IP网段的主机信息
nmap -sP www.xxx.com/24

禁止动态扫描: -T4

针对TCP端口禁止动态扫描延迟超过10ms
nmap -T4 127.0.0.1

快速扫描: -F

快速模式-扫描比默认扫描更少的端口,速度更快。
nmap -T4-F 127.0.0.1

穿透防火墙探测: -PN

部分系统禁止ping导致nmap部分选项无法执行,则遇到禁Ping的可以加上 `-PN` 绕过防火墙进行扫描探测
nmap -PN-A -v  127.0.0.1

反向解析域名/IP:-n/-R

参数-n代表不反向解析域名,而-R代表需要反向解析域名
nmap -n -v 127.0.0.1

增加端口扫描解释:--reason

参数--reason用于指定在执行扫描时,解释为什么扫描目标开放了某个特定的端口
nmap -p 80 --reason<target>

探测主机操作系统:-O (大写o

查看服务器是使用什么系统,如linux/windows
nmap -O www.xxx.com

批量扫描主机列表: -iL <xxx.txt>

有时候并非一个主机IP探测,也可以有多个主机一起探测。则使用`-iL`进行批量探测。
nmap -iL C:\\ips.txt
多个ip以换行形式写入,例如ips.txt 内容:

127.0.0.1

192.168.0.1

.....

探测目标主机IP协议:-sO

参数-sO用于判断目标主机上使用的是哪些协议,同时探测目标主机支持哪些IP协议。
nmap -sO<targetIP>:扫描目标IP地址并判断目标主机上使用的是哪些协议

指定扫描源:-S <IP_Address>

参数-S用于指定扫描的源IP地址。这个参数可以帮助网络安全人员在不使用自己的IP地址进行扫描的情况下,隐藏自己的位置。
nmap -S 192.168.0.1<target>:使用192.168.0.1作为扫描源IP地址,扫描目标主机的开放端口和相关信息

指定代理服务器地址:--proxies <url1,[url2],...>

参数--proxies用于指定代理服务器地址
nmap --proxies http://proxy1.example.com:8080 <target>:使用http://proxy1.example.com:8080作为代理服务器地址,扫描目标主机的开放端口和相关信息。

TCP connect 扫描: -sT

即tcp连接形式进行扫描,通常会在目标主机的日志中存在大批量请求以及错误日志(留下痕迹)
nmap -sT127.0.0.1

指定网络接口: -e <iface>

参数-e用于指定要使用的网络接口
nmap -e eth0<target>:使用eth0作为网络接口,扫描目标主机的开放端口和相关信息

指定扫描源端口:-g/--source-port <portnum>

参数-g或--source-port用于指定扫描时使用的源端口
nmap-g 80<target>:使用80作为源端口,扫描目标主机的开放端口和相关信息

空闲扫描:-sI

-sI用于进行空闲扫描,也被称为闲置扫描。这种类型的扫描通过发送一个带有随机源地址和源端口的TCP数据包,然后等待目标主机的响应,来探测目标主机上是否有开放端口。
nmap -sI<source_address> <target>:使用指定的源地址进行空闲扫描。
nmap -sI<random_port> <target>:使用随机端口进行空闲扫描。

半开式扫描: -sS/sT/sA/sW/sM

半开扫描,很少有系统能够把这记入系统日志。不过,需要root权限
半开扫描(half-open scanning),即TCP SYN scan。它利用了TCP连接建立三次握手的第一步,并且没有建立一个完整的TCP连接。实现办法是向远端主机某端口发送一个只有SYN标志位的TCP报文段,如果主机反馈一个SYN|ACK数据包,那么,这个主机正在监听该端口,如果反馈的是RST数据包,说明,主机没有监听该端口。在X-Scanner扫描工具上就有SYN的选择项。
nmap -sS -p 80,3306,22,23,443 {IP}

相关文章:

  • 如何成为嵌入式系统工程师?
  • 解决生产问题的万能接口(Java编译器API的使用)
  • OA协同办公系统 iWebPDF插件安装
  • 字符串循环遍历抵消、队列的应用-649. Dota2 参议院
  • (delphi11最新学习资料) Object Pascal 学习笔记---第14章泛型第2节(泛型类的类构造函数)
  • 「C系列」C enum(枚举)
  • go-zero整合Excelize并实现Excel导入导出
  • pytest+requests+allure自动化测试接入Jenkins学习
  • uniapp地图选择位置
  • docker部署redis实践
  • `kubectl get pod -oyaml` 和 `kubectl describe pod`
  • C#面:什么是 Windows 服务,它的生命周期与标准的 EXE 程序有什么不同
  • 【2024算力大会分会 | SPIE独立出版 | 往届均已完成EI检索】2024云计算、性能计算与深度学习国际学术会议(CCPCDL 2024)
  • Pydantic的BaseConfig
  • 一款优秀的下载和共享工具
  • 网络传输文件的问题
  • hexo+github搭建个人博客
  • 《Java编程思想》读书笔记-对象导论
  • macOS 中 shell 创建文件夹及文件并 VS Code 打开
  • Median of Two Sorted Arrays
  • Spring技术内幕笔记(2):Spring MVC 与 Web
  • 闭包--闭包之tab栏切换(四)
  • 初探 Vue 生命周期和钩子函数
  • 从0实现一个tiny react(三)生命周期
  • 工作踩坑系列——https访问遇到“已阻止载入混合活动内容”
  • 构造函数(constructor)与原型链(prototype)关系
  • 深入浅出webpack学习(1)--核心概念
  • 网页视频流m3u8/ts视频下载
  • 问:在指定的JSON数据中(最外层是数组)根据指定条件拿到匹配到的结果
  • 我从编程教室毕业
  • 策略 : 一文教你成为人工智能(AI)领域专家
  • ​1:1公有云能力整体输出,腾讯云“七剑”下云端
  • ​软考-高级-信息系统项目管理师教程 第四版【第14章-项目沟通管理-思维导图】​
  • # Redis 入门到精通(一)数据类型(4)
  • (07)Hive——窗口函数详解
  • (20)docke容器
  • (4) PIVOT 和 UPIVOT 的使用
  • (libusb) usb口自动刷新
  • (二)【Jmeter】专栏实战项目靶场drupal部署
  • (附源码)ssm高校志愿者服务系统 毕业设计 011648
  • (三)终结任务
  • .gitignore文件使用
  • .NET CLR基本术语
  • .net MVC中使用angularJs刷新页面数据列表
  • .NET Remoting学习笔记(三)信道
  • .Net 代码性能 - (1)
  • .net 无限分类
  • .NetCore项目nginx发布
  • .NET序列化 serializable,反序列化
  • .so文件(linux系统)
  • @Data注解的作用
  • [ NOI 2001 ] 食物链
  • [Excel VBA]如何使用VBA按行拆分Excel工作表
  • [flume$2]记录一个写自定义Flume拦截器遇到的错误
  • [Foreman]解决Unable to find internal system admin account