wireshark抓包工具使用说明

wireshark窗口介绍

主界面窗口:

wireshark抓包 黑色 wireshark抓包黑底红色字_TCP


wireshark抓包 黑色 wireshark抓包黑底红色字_数据_02


封包详细信息 (Packet Details Pane)这个面板是我们最重要的,用来查看协议中的每一个字段。各行信息分别为:

协议

说明

Frame

物理层的数据帧概况

Ethernet II

数据链路层以太网帧头部信息

Internet Protocol Version 4

互联网层IP包头部信息

Transmission Control Protocol

传输层T的数据段头部信息,此处是TCP

Hypertext Transfer Protocol

应用层的信息,此处是HTTP协议

wireshark抓包 黑色 wireshark抓包黑底红色字_TCP_03

wireshark基本配置

按自己的习惯来配置wareshark的布局,颜色,字体等等信息
调整布局

  • 点击菜单编辑栏的编辑->首选项->Appearance-Layout:

wireshark抓包 黑色 wireshark抓包黑底红色字_TCP_04


调整字体和颜色

  • 点击菜单编辑栏的编辑->首选项->Appearance-Font and Colors:

wireshark抓包 黑色 wireshark抓包黑底红色字_wireshark抓包 黑色_05


调整着色规则

  • 点击菜单编辑栏的视图->着色规则:(此处建议默认)
  • 这里详细介绍了每一种颜色对应的意思,当不知道某种颜色的意思时,可在这里查找

wireshark抓包 黑色 wireshark抓包黑底红色字_TCP_06


调整Wareshark时间

  • 建议使用UTC时间
  • 点击菜单编辑栏的视图->时间显示格式:

wireshark抓包 黑色 wireshark抓包黑底红色字_wireshark抓包 黑色_07


捕获时的配置

  • 点击菜单编辑栏的编辑->首选项->Capture:
  • 去掉实时更新,避免卡顿

wireshark抓包 黑色 wireshark抓包黑底红色字_HTTP_08

  • 混杂模式:它是一种允许网卡能够查看到所有流经网络线路数据包的驱动模式。使用它能确保捕获所有的网络流量,在混杂模式下,网卡会把它看到的数据包都复制一份给主机的处理。

过滤器

使用过滤是非常重要的, 初学者使用wireshark时,将会得到大量的冗余信息,在几千甚至几万条记录中,以至于很难找到自己需要的部分。搞得晕头转向。过滤器会帮助我们在大量的数据中迅速找到我们需要的信息。

过滤器有两种:

  • 一种是显示过滤器,就是主界面上那个,用来在捕获的记录中找到所需要的记录
  • 一种是捕获过滤器,用来过滤捕获的封包,以免捕获太多的记录。 在Capture -> Capture Filters中设置

捕获过滤器

捕获过滤器可手动输入或者进行选择,在菜单栏种捕获->选项

wireshark抓包 黑色 wireshark抓包黑底红色字_TCP_09


常用的捕获过滤表达式

过滤表达式

说明

tcp[13]&32==32

设置URG位的TCP数据包

tcp[13]&16==16

设置ACK位的TCP数据包

tcp[13]&8==3

设置PSH位的TCP数据包

tcp[13]&4==4

设置PST位的TCP数据包

tcp[13]&2==2

设置SYN位的TCP数据包

tcp[13]&1==1

设置FIN位的TCP数据包

tcp[13]==18

TCP SYN-ACK数据包

ether host 11:22:33:44:55:66

流入或流出指定MAC地址的流量

!ether host 11:22:33:44:55:66

不流入或流出指定MAC地址的流量

brodcast

仅广播流量

icmp

仅ICMP流量

icmp[0:2]

ICMP目标不可达、主机不可达

IP

仅IPv4流量

ip6

仅IPv6流量

udp

仅UDP流量

显示过滤器

wireshark抓包 黑色 wireshark抓包黑底红色字_TCP_10


显示过滤器表达式-BPF表达式:

过滤表达式

说明

!tcp.port==3389

排除PDP流量

tcp.flags.syn==1

具有SYN标志的TCP数据包

tcp.flags.rst==1

具有RST标志的TCP数据包

!arp

排除ARP流量

http

所有HTTP流量

tcp.port == 23 or tcp.port==21

文本管理流量(Telnet/FTP)

smtp or pop or icmp

文本邮件流量

统计分析功能

端点会话统计:
会话:两个端点间的通信就是会话

  • 端点窗口通过字节排序可知某进行了大流量通讯
  • 会话窗口通过包排序可在它大概在做啥,可通过whois网站来查它访问的IP地址运营商

协议分层:

  • 按百分比找到各层协议的占比,帮助找到需要筛选的协议

wireshark抓包 黑色 wireshark抓包黑底红色字_TCP_11

协议解析:

  • 如果有些时候Wareshark的解析结果与我们的经验不符时,那么它可能出错了,需要我们人为的解码为指定协议

wireshark抓包 黑色 wireshark抓包黑底红色字_HTTP_12


流追踪:

将来自不同数据包的数据重组成统一易读的格式 目前能重组四种流

  • TCP流:重组使用TCP协议的数据,比如HTTP和FTP
  • UDP流:重组使用UDP协议的数据,比如DNS
  • TLS流:重组加密的协议数据,比如TLS需要提供密钥进行解密
  • HTTP流:从HTTP协议中重组和解压数据,当使用TCP流跟踪但又没有完全识别 出HTTP数据的时候

分组长度:

  • 正常情况下一个以太网帧最大长度为1518字节
  • 除去以太网、IP及TCP头,还剩下1460字节
  • 那么就可以根据报文的最小需求进行猜测
  • 这里可以随时进行修改 ­­
    – 较大的数据包通常表示数据传输 ­­
    – 较小的数据包通常表示协议控制

专家信息:

  • 每个协议的解析器都有一些专家信息,可以提醒我们该协议的数据包中的特定状 态。
  • 对话(蓝色):有关常规工作流程的信息,例如 设置了SYN标志的TCP数据包
  • 注意(青色):值得注意的事物,例如: 应用程序返回“通常”错误代码,如 HTTP 404
  • 警告(黄色):警告,例如 应用程序返回“异常”错误代码,如连接问题
  • 错误(红色):严重问题,例如 [格式错误的数据包]

wireshark抓包 黑色 wireshark抓包黑底红色字_HTTP_13

实例

TCP包的具体内容,从下图可以看到wireshark捕获到的TCP包中的每个字段

wireshark抓包 黑色 wireshark抓包黑底红色字_数据_14


现在我们看一个TCP三次握手的实例,三次握手过程为:

wireshark抓包 黑色 wireshark抓包黑底红色字_HTTP_15

打开wireshark, 打开浏览器输入 http://www.baidu.com 在wireshark中输入http过滤, 然后选中GET /tankxiao HTTP/1.1的那条记录,右键然后点击"Follow TCP Stream",

这样做的目的是为了得到与浏览器打开网站相关的数据包,将得到如下图:

wireshark抓包 黑色 wireshark抓包黑底红色字_wireshark抓包 黑色_16


图中可以看到wireshark截获到了三次握手的三个数据包。第四个包才是HTTP的, 这说明HTTP的确是使用TCP建立连接的。

第一次握手数据包:

客户端发送一个TCP,标志位为SYN,序列号为0, 代表客户端请求建立连接。 如下图

wireshark抓包 黑色 wireshark抓包黑底红色字_wireshark抓包 黑色_17

第二次握手的数据包

服务器发回确认包, 标志位为 SYN,ACK. 将确认序号(Acknowledgement Number)设置为客户的I S N加1以.即0+1=1, 如下图

wireshark抓包 黑色 wireshark抓包黑底红色字_TCP_18

第三次握手的数据包

客户端再次发送确认包(ACK) SYN标志位为0,ACK标志位为1.并且把服务器发来ACK的序号字段+1,放在确定字段中发送给对方.并且在数据段放写ISN的+1, 如下图:

wireshark抓包 黑色 wireshark抓包黑底红色字_wireshark抓包 黑色_19


就这样通过了TCP三次握手,建立了连接,两方开始传送数据,序列号从其各自随机产生的序列号+1开始.

传输完成后,四次挥手断开连接

wireshark抓包 黑色 wireshark抓包黑底红色字_数据_20

端口

电脑端口:0-65535

  • 0-1023 :标准端口组
  • 1024-65535 :临时端口组

常用端口:

  • TCP 21端口:FTP 文件传输服务
  • TCP 23端口:TELNET 终端仿真服务
  • TCP 25端口:SMTP 简单邮件传输服务
  • UDP 53端口:DNS 域名解析服务
  • TCP 80端口:HTTP 超文本传输服务
  • TCP 110端口:POP3 “邮局协议版本3”使用的端口
  • TCP 443端口:HTTPS 加密的超文本传输服务
  • 56端口: DHCP 服务
  • 22端口: SSH 服务