最近公司要进行一下流量分析,于是我顺便记录一下我对该软件的理解。
介绍

Wireshark 是一款功能强大、广受欢迎的开源网络协议分析工具,帮助网络管理员、安全专家和开发人员深入了解网络流量,诊断网络问题,确保网络安全。包含实时数据捕获,以截取各种网络封包,显示网络封包的详细信息。

wireshark是开源软件,可以运行在WIN和Mac OS上。使用wireshark需要先了解一下常见网络协议。
网络协议
先学习一下我们熟知的网络协议:
TCP/IP:保证网络数据信息及时、完整传输的两个重要的协议,提供各种可靠的网络协议。
UDP :无连接的传输协议,该协议称为用户数据报协议,UDP 为应用程序提供了一种无需建立连接就可以发送封装的 IP 数据包的方法。RFC 768描述了 UDP。
HTTP:超文本传输协议,简单的请求-响应协议,通常运行在tcp之上。它指定了客户端可能发送给服务器什么样的消息以及得到什么样的响应。
HTTPS:安全超文本传输协议,是基于HTTP的扩展,通过SSL(安全套接层)/TLS(安全传输层协议)协议加密,提供安全通信通道。
FTP:文件传输协议,允许用户通过网络上传、下载文件以及进行文件和目录的管理。
SMTP:简单邮件传输协议,SMTP是一组用于由源地址到目的地址传送邮件的规则,确保电子邮件能够准确、快速地送达。
WebSocket:在单个TCP连接上进行全双工通讯的协议,它实现了浏览器与服务器之间的全双工通信。
IP:互联网协议,负责将数据包从源主机发送到目的主机。
SSH:安全外壳协议,是一种为网络安全通信提供加密传输的协议。
常用信息
在进行流量分析时我常常用到以下这些选项来加快工作效率。
着色规则:视图->着色规则->编辑各协议的颜色

ACL规则:工具->防火墙ACL规则->指定针对不同防火墙设备的ACL规则

抓包协议过滤:分析->显示过滤器->选择要抓取的协议或指定IP地址

数据包具体信息:

从上到下依次是应用层、传输层、网络层、数据链路层,点击可查看详细信息。
显示过滤器查找规则
常用的排查规则
类型Type:host、net、port
方向Dir:src、dst
协议Proto:ether、ip、tcp、udp、http、icmp、ftp等
逻辑运算符:&&、|| 、!
比如:
ini
ip.addr == 192.168.42.42 显示源IP地址或目标IP地址为192.168.42.42的数据包列表
tcp.port ==80, 显示源主机或者目的主机端口为80的数据包列表
http.request.method=='POST', 只显示HTTP POST方法的
常用表达式
分析时需要定位一些指定的位置,通常用以下分析:
数据链路层筛选指定mac地址数据包
ini
eth.src == mac地址
网络层筛选指定ip地址数据包
ini
ip.addr == IP地址
传输层筛选指定端口的数据包
ini
tcp.port == 80
应用层筛选url中包含.php的http数据包
sql
http.request.uri contains '.php'
筛选内容包含loginname的http数据包
sql
http contains 'loginname'