你听说过 Wireshark 抓包么?
学习python的正确姿势
共 1713字,需浏览 4分钟
· 2020-05-26
先吹一波:它支持上百种协议的解密嗅探分析,在互联网上发生的事情,多微小的细节都能通过它分析出来,而且它不仅可以实时抓包,还可以离线分析,它还提供了 GUI 界面工具,你在其它大部分的抓包工具中抓到的数据文件都能拿来这里分析一波,而且,Wireshark 是跨平台的,市面上大多数系统都能运行。
吹了这么多,还是先来认识下 Wireshark 吧。
首先当然是要安装一波,你可以到以下链接中根据你的系统版本进行相应的安装:
https://www.wireshark.org/download.html
如果你网络有问题的话,没关系,我已经帮你把它们的最新版本都下载下来了,你可以在公众号后台发送 4 获取到相应的版本:
安装完成之后,打开它,差不多长这个鸟样:
我来给你标注一下每个模块是干什么用的,最上面的这几栏分别是:
这个一看就知道,而当你抓包的时候,界面会变成这样:
再来标注一下这几个面板都是干啥的:
先来简单抓一波包,感受一下流程。
首先我们要开启 wireshark 的数据访问监听,你可以使用快捷键 Ctrl + E,或者点击工具栏的第一个图标:
我们先过滤一下 HTTP 的请求:
然后随便百度一下图片:
这时候 wireshark 就监听到请求的数据包了:
在数据包列表中,每个 item 所表示的都一目了然,从左到右分别是请求的时间、请求的 IP 、响应的IP、请求的协议、内容长度、以及相关信息:
每条数据下方都会有具体信息的显示,你也可以直接双击具体的数据包,这时候会弹出一个窗口,专门用来展示具体数据包的相关传输信息:
我们来看看应用层抓到的信息:
可以看到,这里我们是通过 Get 请求,其中 Http 协议参数以及请求头的相关信息都可以在应用层这里获取。
响应的信息:
那么除了 Hypertext Transfer Protocol 之外,上面的那几个显示的都是什么内容呢?
我们一个一个来,其中的 Frame 里面主要是展示这个数据包报文的具体信息:
比如这里就展示了网卡信息,抓取的时间,数据的大小,协议等信息。
因为网络数据包的传输是分层的,所以这里的以太网 Enternet II 表示的是数据链路层,在这里可以看到的是源 mac 地址和目的 mac 地址:
接下来就是 IP 网络层,这里可以看到 IP 协议头的一些信息:
最后就是我们刚刚看到的 HTTP 协议应用层:
大概认识了 Wireshark 之后,接下来我再跟你说说它的常用功能。
我们刚刚输入 http 进行了显示过滤:
实际上 Wireshark 的过滤很强大,可以定义不同的参数过滤,你可以点击菜单栏的:
View-internals-Support Protocols
在这里可以看到各种协议的过滤字段:
比如 http 协议的过滤字段:
通过 Filter 字段中的值,就可以直接用它来定义过滤了,比如过滤 fxxkpython.com 的请求就可以这样:
http.host == fxxkpython.com
过滤 80 端口的数据:
另外,你还可以选择不同网卡设备的抓取:
设置完之后点击 start 就能开始根据你定义的规则进行抓包了。
在抓包的时候你会看到数据包列表各种颜色:
这些不同颜色代表不同的协议,你可以在 View-Coloring Rules 中自定义:
你点击具体的数据包的时候,在数据列表的左侧会出现类似这样的图:
被框住的数据包表示一整个会话,其中的虚线表示与会话无关,而 --> 代表的是请求, <-- 代表的是返回。
而 √ 表示的是报文的确认:
如果你想晚点再去分析数据包的话,你也可以把你想要的数据包给导出到本地,点击菜单栏的 File--Export Specified Packets:
等你想要分析了的时候,打开 Wireshark, 导入文件就可以继续分析了:
ok,关于 Wireshark 的基本使用介绍就先到这里,其实不应该只把它看成一个抓包工具,它还有很多好玩的地方,比如在学习网络的时候它就是一个不错的辅助学习工具,感兴趣可以去了解一下。官网在这:
https://www.wireshark.org/
那么,我们下回见啦,peace!
相关:
教你在 Chrome 浏览器轻松抓包教你通过 Fiddler 进行手机抓包如何使用 mitmproxy 监控你的手机
天涯何处无芳草,何必单恋 Fiddler?
评论
偷偷告诉你如何一台电脑开多个微信!
大家好,我是轩辕。前几天在粉丝群里,有人问我是怎么在一台电脑上同时登录两个微信的?正好之前写过一篇文章,分析过原理,分享给没看过的小伙伴学习一下。手机端多开微信估计很多人都知道,像华为、小米等手机系统都对此做了支持,不过在运行Windows系统的电脑上怎么启动两个微信呢?其实很简单,你只需要写一个批
编程技术宇宙
0
盘点Lombok的几个骚操作,你绝对没用过!
👉 欢迎加入小哈的星球 ,你将获得: 专属的项目实战 / Java 学习路线 / 一对一提问 / 学习打卡 / 赠书福利全栈前后端分离博客项目 2.0 版本完结啦, 演示链接:http://116.62.199.48/ ,新项目正在酝酿中
小哈学Java
0
堪称最优秀的Docker可视化管理工具——Portainer你真的会用吗?
来源:blog.csdn.net/shark_chili3007/article/details/123366179👉 欢迎加入小哈的星球 ,你将获得: 专属的项目实战 / Java 学习路线 / 一对一提问 / 学习打卡 / 赠书福利全栈前后端分离博客项目
小哈学Java
0
JS的这些新特性,你都用过么?
大厂技术 高级前端 Node进阶点击上方 程序员成长指北,关注公众号回复1,加入高级Node交流群作为一门不断演进的语言,JavaScript每年都会引入新特性。这些特性的加入,能够帮助我们编写更加简洁、高效、易于维护的代码。然而,并非所有新特性
程序员成长指北
1
五一抢票难,Github上这几个Python项目,你可以试试
又到五一长假啦(虽然其实就放了1天),大家是打算家里蹲or出去玩,又或者是在公司加班呢...今天给大家介绍三个和12306相关的项目,看看你是否用得上。/01/ py12306py12306购票助手,顾名思义,12306买票的~需要在python 3.6以上版本运行程序。1. 安装依赖gi
Crossin的编程教室
0
springboot第70集:字节跳动后端三面经,一文让你走出微服务迷雾架构周刊
创建一个使用Kubernetes (K8s) 和 Jenkins 来自动化 GitLab 前端项目打包的CI/CD流水线,需要配置多个组件。下面,我将概述一个基本的设置步骤和示例脚本,以帮助你理解如何使用这些工具整合一个自动化流程。前提条件确保你已经有:Kubernetes 集群:用于部署 Jenk
程序源代码
0
接口响应慢?那是你没用 CompletableFuture 来优化!
来源:blog.csdn.net/qq_43372633/article/details/130814200👉 欢迎加入小哈的星球 ,你将获得: 专属的项目实战 / Java 学习路线 / 一对一提问 / 学习打卡 / 赠书福利全栈前后端分离博客项目 2.0
小哈学Java
3
金三银四你都拿到了哪些offer?
本文继续分享最新真实面经,希望对粉丝股东们有帮助,另外文末有直投大厂的机会,别错过。都说行情不好,可是有的同学拿到了很多Offer,各种对比;也有同学连面试都很难约到。“能拿到Offer的大多相似,拿不到的各有各的原因。”金三银四你拿到了哪些offer?也欢迎大家在评论区留言讨论,不要错过文末的企业
高级前端进阶
0