抓包工具Wireshark

一、Wireshark介绍

Wireshark(前称Ethereal)是一款免费的开源网络封包分析软件,用于截取和显示网络封包的详细信息。它通过WinPCAP接口直接与网卡进行数据报文交换,适用于网络管理员、网络安全工程师、开发者等专业人士使用。作为一个强大的网络分析工具,Wireshark不仅能截取各种网络数据包,还能展示其详细的协议信息。这种功能使得它在网络问题诊断、资讯安全检查、新通讯协议调试等方面广泛应用。Wireshark支持超过2000种网络协议,使其成为现代网络分析和监控的重要工具。

二、网络的工作模式

  1. 普通模式(Non-Promiscuous Mode)
    • 默认工作模式:网卡只接收发给本机的包,包括广播包,其他数据包一律丢弃。
    • 数据过滤:此模式下的网卡根据MAC地址筛选数据包,仅将目标为本机的数据包传递给上层程序。
  2. 混杂模式(Promiscuous Mode)
    • 接收所有数据包:无论数据包的目的MAC地址是否指向本机,网卡都会接收并传递给相应的驱动程序。
    • 网络诊断与分析:混杂模式通常用于网络管理员进行流量分析和监控,以便进行故障诊断和安全检查。
  3. 监听模式(Listen Mode)
    • 被动捕获:监听传入的数据包并将其记录下来,但不会进行实际处理或回复。
    • 适用场景:多用于网络故障排查和诊断,通过记录数据包来分析问题原因。
  4. 监视模式(Monitor Mode)
    • 主动捕获:不仅接收数据包,还对其进行分析,以检测和识别潜在的安全威胁或进行网络性能优化。
    • 全面监控:监视模式可以捕获整个网络的流量,不局限于单个接口。无线网卡上的监视模式可分为“监视”和“混杂”两个子模式,其中“监视”模式只能捕捉本SSID(Wi-Fi名称)内的数据包,而“混杂”模式则能捕捉所有经过无线网卡的数据包。
  5. 管理模式(Management Mode)
    • 管理帧处理:此模式下的网卡专门接收和处理管理帧,用于配置和监控网络设备的状态和性能。
    • 网络管理:适用于对网络设备进行管理和监控,确保网络正常运行。

三、过滤器的使用

1、捕获过滤器

类型Type:  host、net、port
方向Dir:  src、dst
协议Proto:  ether、ip、tcp、udp、http、ftp
逻辑运算符:  &&与、|或、!非

举例

#抓取源地址为192.168.1.1,目的端口为80的流量

src host 192.168.1.1 && dst port 80

#抓取192.168.1.1和192.168.1.2的流量

host 192.168.1.1 host 192.168.1.2

#不要抓广播包

! broadcast

#抓取目的UDP端门为4569的封包

udp dst port 4569

#抓取目的或来源IP地址为192.168.4.7的封包

 host 192.168.4.7        

#抓取来源为TCP或UDP,并且端口在2000~5范围内的封句

src portrange 2000-5000

#抓取来源IP地址为172.17.12.1,但目的地址不是192.168.2./24的封包

src host 172.17.12.1 and not dst net 192.168.2.0/24

2、显示过滤器

比较操作符: == 等于 (eg) 、!= 不等于 (ne) 、>大于gt)、< 小于 (t) 、>= 大等于 (ge)、<= 小于等于 (le)
逻辑操作符:and 两个条件同时满足、or 其中一个条件被满足、xor 有且仅有一个条件被满足、not 没有条件被满足.
IP地址过滤: ip.addr、ip.src、ip.dst
端门过滤: tcp.port、tcp.srcport、tcp.dstport、tcp.flag.syn、tcp.flag.ack
协议过滤: arp、ip、icmp、udp、tcp、http、tls、 ..........等等

#显示源IP等于192.168.1.100并且udp端门号为4000的封包

ip.src == 192.168.1.109 and udp.port == 4000

#显示SNMP或DNS或ICMP封包

snmp ||  dns || icmp

#显示来源或目的IP地址为10.1.1.1的封包

ip.addr == 10.1.1.1

#显示来源不为19.1.2.3或者目的不为19.4.5.6的封包

ip.src != 10.1.2.3 or ip.dst != 19.4.5.6

#显示来源不为18.1.2.3并且目的不为10.4.5.6的封包

ip.src != 19.1.2.3 and ip.dst != 19.4.5.6

#显示来源或目的UDP端口号为4569的封包

udp.port eq 4569

#显示目的TCP端口号为25的封包

tcp.dstport == 25

#显示带有TCP标志的封包

tcp.flags

#显示带有TCP SYN标志的封包

tcp.flags.syn eq 0x02

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/782639.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

在mac下 Vue2和Vue3并存 全局Vue2环境创建Vue3新项目(Vue cli2和Vue cli4)

全局安装vue2 npm install vue-cli -g自行在任意位置创建一个文件夹vue3&#xff0c;局部安装vue3,注意不要带-g npm install vue/cli安装完成后&#xff0c;进入目录&#xff0c;修改vue为vue3 找到vue3/node-moudles/.bin/vue&#xff0c;把vue改成vue3。 对环境变量进行配置…

web安全基础名词概念

本节内容根据小迪安全讲解制作 第一天 域名&#xff1a; 1.1什么是域名&#xff1f; 网域名称(英语&#xff1a;Domain Name&#xff0c;简称&#xff1a;Domain)&#xff0c;简称域名、网域&#xff0c;是由一串用点分隔的字符组成的互联网上某一台计算机或计算机组的名称&a…

java核心-泛型

目录 概述什么是泛型分类泛型类泛型接口泛型方法 泛型通配符分类 泛型类型擦除分类无限制类型擦除有限制类型擦除 问题需求第一种第二种 概述 了解泛型有利于学习 jdk 、中间件的源码&#xff0c;提升代码抽象能力&#xff0c;封装通用性更强的组件。 什么是泛型 在定义类、接…

存储过程编程-创建(CREATE PROCEDURE)、执行(EXEC)、删除(DROP PROCEDURE)

一、定义 1、存储过程是在SQL服务器上存储的已经编译过的SQL语句组。 2、存储过程分为三类&#xff1a;系统提供的存储过程、用户定义的存储过程和扩展存储过程 &#xff08;1&#xff09;系统提供的存储过程&#xff1a;在安装SQL Server时&#xff0c;系统创建了很多系统存…

Kafka(一)基础介绍

一&#xff0c;Kafka集群 一个典型的 Kafka 体系架构包括若Producer、Broker、Consumer&#xff0c;以及一个ZooKeeper集群&#xff0c;如图所示。 ZooKeeper&#xff1a;Kafka负责集群元数据的管理、控制器的选举等操作的&#xff1b; Producer&#xff1a;将消息发送到Broker…

MySQL事务隔离

MySQL事务隔离 前言锁共享锁&#xff08;Shared Lock&#xff09;排他锁&#xff08;Exclusive Lock&#xff09;行级锁&#xff08;Row-Level Lock&#xff09;表级锁&#xff08;Table-Level Lock&#xff09;快照读和当前读查看锁 事务事务的四个特性事务的并发问题事务的隔…

Chrome 127内置AI大模型攻略

Chrome 127 集成Gemini:本地AI功能 Google将Gemini大模型整合进Chrome浏览器,带来全新免费的本地AI体验: 完全免费、无限制使用支持离线运行,摆脱网络依赖功能涵盖图像识别、自然语言处理、智能推荐等中国大陆需要借助魔法,懂都懂。 安装部署步骤: 1. Chrome V127 dev …

golang验证Etherscan上的智能合约

文章目录 golang验证Etherscan上的智能合约为什么要验证智能合约如何使用golang去验证合约获取EtherscanAPI密钥Verify Source Code接口Check Source Code Verification Status接口演示示例及注意事项网络问题无法调用Etherscan接口&#xff08;最重要的步骤&#xff09; golan…

YoloV9改进策略:Block改进|轻量实时的重参数结构|最新改进|即插即用(全网首发)

摘要 本文使用重参数的Block替换YoloV9中的RepNBottleneck&#xff0c;GFLOPs从239降到了227&#xff1b;同时&#xff0c;map50从0.989涨到了0.99&#xff08;重参数后的结果&#xff09;。 改进方法简单&#xff0c;只做简单的替换就行&#xff0c;即插即用&#xff0c;非常…

保健品商城小程序模板源码

保健品商城小程序模板源码 简洁通用的保健品&#xff0c;健康生活&#xff0c;零售商品&#xff0c;电子商务微信小程序前端模板下载。包含&#xff1a;主页、购物车、客服、个人中心、我的订单、商品详情、我的钱包、设置等等。 保健品商城小程序模板源码

程序员如何做好需求判断?

1. 导语 本文作为2024上半年核心思考之二。 通过他人经验传导、个人实践、广泛阅读书籍(方法论类、企业经营类、传记类、财务类&#xff0c;具体书单附文末)&#xff0c;学会基于更高阶的经营者视角来做好业务需求判断。本文思路如下&#xff1a; 首先&#xff0c;抛一个灵魂问…

【server】springboot 整合 redis

1、redis 使用模式 1.1 单机模式 1.1.1 编译安装方式 1.1.1.1 下载 Redis的安装非常简单&#xff0c;到Redis的官网&#xff08;Downloads - Redis&#xff09;&#xff0c;下载对应的版本&#xff0c;简单几个命令安装即可。 1.1.1.2 编译安装 tar xzf redis-stable.tar.…

IDEA 开发工具

IDEA 开发工具 IDEA软件激活新建项目新建project 运行调试 IDEA软件激活 访问激活码网进入带*的域名下载并解压左上角的zip包先执行sh uninstall.sh&#xff0c;再执行sh install.sh在带*的网页中复制并使用激活码code 新建项目 新建project file》New〉Project》New Proje…

【测试】系统压力测试报告模板(Word原件)

系统压力测试&#xff0c;简而言之&#xff0c;是在模拟高负载、高并发的环境下&#xff0c;对系统进行全面测试的过程。它旨在评估系统在面对极端使用条件时的性能表现&#xff0c;包括处理能力、响应时间、资源消耗及稳定性等关键指标。通过压力测试&#xff0c;开发团队能够…

MySQL之备份与恢复和MySQL用户工具(一)

备份与恢复 备份脚本化 为备份写一些脚本是标准做法。展示一个示例程序&#xff0c;其中必定有很多辅助内容&#xff0c;这只会增加篇幅&#xff0c;在这里我们更愿意列举一些典型的备份脚本功能&#xff0c;展示一些Perl脚本的代码片段。你可以把这些当作可重用的代码块&…

Python酷库之旅-第三方库Pandas(009)

目录 一、用法精讲 19、pandas.read_xml函数 19-1、语法 19-2、参数 19-3、功能 19-4、返回值 19-5、说明 19-6、用法 19-6-1、数据准备 19-6-2、代码示例 19-6-3、结果输出 20、pandas.DataFrame.to_xml函数 20-1、语法 20-2、参数 20-3、功能 20-4、返回值 …

【国产开源可视化引擎Meta2d.js】网格

画布背景网格 在线体验&#xff1a; 乐吾乐2D可视化 示例&#xff1a; // 设置默认缺省网格属性 meta2d.store.options.grid true; // 开启 meta2d.store.options.gridColor eeeeee; // 网格线条颜色 meta2d.store.options.gridSize 10; // 格子大小// 设置单个图纸的网格…

Golang | Leetcode Golang题解之第222题完全二叉树的节点个数

题目&#xff1a; 题解&#xff1a; func countNodes(root *TreeNode) int {if root nil {return 0}level : 0for node : root; node.Left ! nil; node node.Left {level}return sort.Search(1<<(level1), func(k int) bool {if k < 1<<level {return false}…

【ETABS】【RHINO】案例:Swallow to ETABS

文章目录 01. Swallow Overview总览1 LOAD&#xff1a;Defination of LoadCase、Response Combo2 SectionArea Section and Area Load&#xff08;面截面定义与指定&#xff0c;面荷载指定&#xff09;Frame Section with rebarattr and linear load&#xff08;带钢筋属性框架…

flutter:监听路由的变化

问题 当从路由B页面返回路由A页面后&#xff0c;A页面需要进行数据刷新。因此需要监听路由变化 解决 使用RouteObserver进行录音监听 创建全局变量&#xff0c;不在任何类中 final RouteObserver<PageRoute> routeObserver RouteObserver<PageRoute>();在mai…