常见Web应用程序—软件测试专项技术(7)

发表于:2020-4-27 10:46

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:51Testing教研团队    来源:51Testing软件测试网原创

  1.3 常见Web应用程序--Wireshark的使用
  Wireshark(以前称为Ethereal)是一个网络数据包分析软件。它的功能是截取网络数据包,并尽可能显示详细的网络数据包数据。Wireshark使用WinPcap(Windows Packet capture)作为接口,直接与网卡进行数据报文交换。
  1.Wireshark的安装
  Wireshark的安装过程可采用默认设置,这基本上不会出现错误。在使用前,需要了解一下WinPcap(打开方式见图1-40)的作用,了解安装Wireshark 需要同时安装WinPcap的原因。
  
图1-40  WinPcap的打开方式
  WinPcap是Windows平台下一个免费、公共的网络访问系统。它为Win32应用程序提供访问网络底层的能力。也就是说,没有WinPcap和Wireshark就没有办法抓取底层数据包。
  WinPcap特别适用于下面这几个领域:
  ●网络及协议分析;
  ●网络监控;
  ●通信日志记录
  ●Traffic Generators;
  ●用户级别的桥路和路由;
  ●网络入侵检测系统(Network Intrusion Detection System,NIDS);
  ●网络扫描;
  ●安全工具。
  2.Wireshark的基本操作
  启动Wireshark后,选择左上角的Interface List选项,如图1-41所示,其中列出了所有的可用接口。
  
图1-41  选择Interface List选项
  在弹出的"Wireshark:Capture Interfaces"对话框中,单击Start按钮,如图1-42所示。如果计算机有多张网卡,就选择启动Packets数据在变化的网卡。也可以根据需要选择要跟踪的网卡。
  
图1-42  单击Start按钮
  单击Start按钮后,Wireshark就开始抓包,直到单击Stop按钮才停止抓包,如图1-43所示。
  
图1-43  停止抓包
  Wireshark的界面如图1-44所示。
  3.Wireshark的过滤规则
  由于Wireshark抓取的包有大量冗余信息,以致很难找到用户需要的部分,因此必须通过过滤来得到用户想要的包。
  
图1-44  Wireshark的界面
  1)过滤源IP地址和目的IP地址
  (1)查找源地址的过滤格式为ip.src==172.16.201.140,如图1-45所示。
  
图1-45  查找源地址的过滤格式
  注意,在输入过滤条件时,无须以";"结尾,直接单击后面的Apply按钮即可过滤。
  (2)查找目的地址的过滤格式为ip.dst==192.168.101.8。
  (3) 若查找的源地址和目的地址都为某一个IP地址,则使用ip.addr==172.16.201.140。这个方法在查看3次握手时非常有用,通过它可以看到3次握手的完整过程,如图1-46所示。
  
图1-46  通过ip.addr==172.16.201.140显示3次握手的完整过程
  2)过滤端口
  (1)若要过滤的源端口为80端口,则tcp.srcport==80,如图1-47所示。
  (2)若要过滤的目的端口为80端口,则tcp.dstport==80。
  (3)若要过滤的源和目的端口都为80端口,则tcp.port==80。
  
图1-47  过滤源端口号的示例
  3)过滤协议
  可直接输入相关协议(如http),如图1-48所示。
  
图1-48  过滤协议
  注意:在进行HTTP过滤时,因为它属于粗粒度的过滤,所以在过滤后的协议中看到的SSDP、OCSP等其实都属于应用层协议。
  4)过滤HTTP模式
  (1)过滤GET包的格式是http.request.method=="GET"。
  (2)过滤POST包的格式是http.request.method=="POST"。
  以上这两种过滤属于细粒度过滤。
  5)过滤逻辑运算
  若进行逻辑运算过滤,则要使用not、and和or等对多个条件进行连接。使用and进行逻辑运算过滤的示例如图1-49所示。
  注意:not具有最高的优先级,or和and具有相同的优先级,运算从左至右进行。
  
图1-49  使用and进行逻辑运算过滤的示例
  4.Wireshark数据与协议层的对应关系
  Wireshark数据与协议层的对应关系如图1-50所示。
  
图1-50  Wireshark数据与协议层的对应关系
  以下是Wireshark的分层数据内容和TCP/IP层的对应关系。
  ●Frame:表示物理层的数据帧概况。
  ●Ethernet II:表示数据链路层中以太网帧头部信息。
  ●Internet Protocol Version 4:表示网络层IP包头部信息。
  ●Transmission Control Protocol:表示传输层的数据段头部信息。
  ●Hypertext Transfer Protocol:表示应用层的信息。
  TCP头的内容和Wireshark的具体数据之间的对应关系,如图1-51所示。
  
图1-51  TCP头的内容和Wireshark的具体数据之间的对应关系

查看《软件测试专项技术--基于Web、移动应用和微信》全部连载内容>>
版权声明:51Testing软件测试网获得人民邮电出版社和作者授权连载本书部分章节。
任何个人或单位未获得明确的书面许可,不得对本文内容复制、转载或进行镜像,否则将追究法律责任。
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号