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

Wireshark使用详解

wireshark简介

wireshark是捕获机器上的某一块网卡的网络包,当你的机器上有多块网卡的时候,你需要选择一个网卡。
  wireshark能获取HTTP,也能获取HTTPS,但是不能解密HTTPS,所以wireshark看不懂HTTPS中的内容,总结,如果是处理HTTP,HTTPS 还是用Fiddler, 其他协议比如TCP,UDP 就用wireshark

如果测试本地地址,需要在本地环回口测试,如果去外网,需要在WLAN接口测试,如果是VPN,需要用

抓包原理

那种网络情况能够抓包

1.本机环境:直接抓包本机网卡进出流量
2.集线器环境:一台服务器向另一台服务器发送数据包时经过集线器,集线器会把数据包发送给连接集线器的所有电脑
3.交换机环境:和集线器的原理差不多,但是更精确,可以配置端口镜像,ARP欺骗,MAC泛洪,其中端口镜像是比较常用的,MAC泛洪是发一些垃圾包,垃圾包携带大量MAC地址,将想要抓包的电脑的MAC挤出交换机的MAC列表,交换机找不到对应的MAC地址,就会给所有的MAC列表的电脑发送。

抓包

点击Caputre->Interfaces… 出现下面对话框,选择正确的网卡。然后点击"Start"按钮, 开始抓包

抓包窗口介绍

封包详细信息 (Packet Details Pane)
1.Frame: 物理层的数据帧概况
2.Ethernet II: 数据链路层以太网帧头部信息
3.Internet Protocol Version 4: 互联网层IP包头部信息
4.Transmission Control Protocol: 传输层T的数据段头部信息,此处是TCP
5.Hypertext Transfer Protocol: 应用层的信息,此处是HTTP协议
6.Line-based text data:http返回的页面信息

ip头部和网络层的对应关系

过滤条件中的ip和port就是ip头部的目标或源ip/port

过滤信息介绍

过滤信息分两种,一种是抓包过滤器,一种显示过滤器,顾名思义,抓包过滤器就是抓包的时候只抓取满足过滤器条件的信息,显示过滤器就是把抓包结果只显示满足过滤器的信息。

显示过滤

表达式规则

1.协议过滤
比如TCP,只显示TCP协议。
2.IP 过滤
比如 ip.src 192.168.1.102 显示源地址为192.168.1.102,
ip.dst192.168.1.102, 目标地址为192.168.1.102
3.端口过滤
tcp.port ==80, 端口为80的
tcp.srcport == 80, 只显示TCP协议的愿端口为80的。
4.Http模式过滤
http.request.method==“GET”, 只显示HTTP GET方法的。

抓包过滤

使用抓包过滤器前需要先选择网卡,否则输入过滤规则后显示红色
类型Type:host、net、port
方向Dir:src、dst
协议protocol:ether、ip、tcp、udp、http、ftp
逻辑运算符:&& 与、|| 或、!非
举例说明:

1.src host 192.168.48.116 && dst post 80 抓取源地址为192.168.48.116 并且目的端口为80的信息
2.!broadcast 不要抓取广播包
3.ether src host 1C:99:57:1F:56:4E 抓取源MAC地址是1C:99:57:1F:56:4E 的信息

高级功能

数据流追踪

选中一条抓包信息右击,选中追踪流,再选中HTTP流或者TCP流等其他流,可查看如下图所示的信息
路径信息,返回信息,返回服务器,包括返回内容信息

查看对应的请求和响应

可选择如何解码信息

可参考Linux命令之抓包命令tcpdump的使用_wireshark_较真的菜鸟的博客-CSDN博客

参考:wireshark抓包工具详细说明及操作使用_wireshark使用教程-CSDN博客

原文链接:https://blog.csdn.net/weixin_43790613/article/details/113786518


http://www.kler.cn/a/154016.html

相关文章:

  • 4A架构之间的关系和集成
  • MyBatis-Plus中使用JSON 类型字段
  • 运维面试题.云计算面试题集锦之二
  • arkUI:网格布局(Grid)
  • VSCode 常用的快捷键
  • python读写excel等数据文件方法汇总
  • TCP 重传、滑动窗口、流量控制、拥塞控制
  • vue el-button 封装及使用
  • Course2-Week1-神经网络
  • 手写实现一个动态代理框架
  • Ubuntu 安装 MySQL8 配置、授权、备份、远程连接
  • 算法通关村第七关—理解递归(青铜)
  • thinkphp控制器调用脚本
  • SQL Server 2016(基本概念和命令)
  • 2022年4月19日 Go生态洞察:Go开发者调查2021结果分析
  • Android --- Activity/Window/DecorView/ViewRootImpl的创建时机
  • [论文精读]利用大语言模型对扩散模型进行自我修正
  • 2016年五一杯数学建模C题二孩政策问题解题全过程文档及程序
  • 深入理解Linux =~
  • Easy Excel设置表格样式
  • 【Element-ui】Icon 图标与Button 按钮
  • 【代码】基于改进差分进化算法的微电网调度研究matlab
  • 6.1810: Operating System Engineering <Lab2 syscall: System calls>
  • 【MySQL】视图 + 用户管理
  • 2023 如何下载最干净的 win10 win11 微软官方原版系统镜像(详细图文)
  • VBA数据库解决方案第七讲:如何利用Recordset对象打开数据库的数据记录集