简介
在网络安全领域,了解用于网络分析的工具和技术至关重要。Wireshark 是一款广泛使用的网络协议分析器,提供了强大的功能,可帮助安全专业人员有效地监控和排查网络流量故障。本教程将深入探讨 Wireshark 中捕获过滤器和显示过滤器之间的区别,让你掌握利用这些工具增强网络安全监控和事件响应的知识。
Wireshark 简介
Wireshark 是一款强大的网络协议分析器,可让你捕获、分析和排查网络流量故障。它是网络安全领域广泛使用的工具,用于了解网络通信、识别安全问题以及调查与网络相关的事件。
什么是 Wireshark?
Wireshark 是一款开源软件应用程序,提供用于捕获、分析和排查网络流量故障的图形用户界面(GUI)。它适用于各种操作系统,包括 Windows、macOS 和 Linux。
Wireshark 的关键特性
- 数据包捕获:Wireshark 可以从各种网络接口捕获网络流量,包括有线和无线连接。
- 数据包分析:Wireshark 可以解码和分析捕获的网络流量,提供有关每个数据包的协议、头部和有效负载的详细信息。
- 协议剖析:Wireshark 支持广泛的网络协议,并可以提供有关每个协议的结构和行为的详细信息。
- 过滤和搜索:Wireshark 提供强大的过滤和搜索功能,允许用户专注于特定类型的流量或在捕获的数据中查找相关信息。
- 可视化:Wireshark 提供各种可视化工具,如基于时间的图表和协议层次结构图,以帮助用户理解网络流量。
安装和使用 Wireshark
要使用 Wireshark,你需要在系统上安装它。以下是在 Ubuntu 22.04 系统上安装 Wireshark 的示例:
sudo apt-get update
sudo apt-get install wireshark
安装完成后,你可以从应用程序菜单中启动 Wireshark,或在终端中运行 wireshark 命令。
Wireshark 中的捕获过滤器
Wireshark 中的捕获过滤器用于控制捕获并存储以供分析的网络流量。通过应用捕获过滤器,你可以专注于特定类型的流量,减少捕获的数据量并提高分析效率。
理解捕获过滤器
捕获过滤器基于一种名为“Wireshark 显示过滤器语法”的强大过滤语言。此语法允许你创建针对特定协议、IP 地址、端口号和其他网络特征的复杂过滤器。
应用捕获过滤器
要在 Wireshark 中应用捕获过滤器,请执行以下步骤:
- 打开 Wireshark 并点击“捕获”菜单。
- 选择“捕获过滤器”以打开捕获过滤器配置窗口。
- 点击“+”按钮添加新的捕获过滤器。
- 为过滤器输入一个描述性名称和过滤器表达式。
- 点击“确定”保存过滤器并关闭窗口。
- 通过点击 Wireshark 主窗口中的“开始”按钮开始捕获。
以下是一个仅捕获 HTTP 流量的捕获过滤器示例:
tcp.port == 80 or tcp.port == 443
此过滤器将捕获端口 80(HTTP)和 443(HTTPS)上的所有网络流量。
捕获过滤器语法
Wireshark 的捕获过滤器语法基于伯克利数据包过滤器(Berkeley Packet Filter,BPF)语言。该语法允许你使用各种运算符和表达式创建复杂过滤器,例如:
- 协议过滤器:
tcp、udp、icmp等。 - 端口过滤器:
tcp.port == 80、udp.port == 53 - IP 地址过滤器:
ip.src == 192.168.1.100、ip.dst == 8.8.8.8 - 逻辑运算符:
and、or、not
你可以在 Wireshark 文档中找到捕获过滤器表达式的完整列表。
Wireshark 中的显示过滤器
Wireshark 中的显示过滤器用于控制在 Wireshark 主窗口中显示哪些捕获的网络流量。捕获过滤器决定捕获哪些流量,而显示过滤器则让你能够专注于特定类型的流量进行分析。
理解显示过滤器
显示过滤器基于与捕获过滤器相同的强大过滤语言,即“Wireshark 显示过滤器语法”。此语法允许你创建针对特定协议、IP 地址、端口号和其他网络特征的复杂过滤器。
应用显示过滤器
要在 Wireshark 中应用显示过滤器,请执行以下步骤:
- 打开 Wireshark 并捕获一些网络流量。
- 在 Wireshark 主窗口中,找到显示过滤器输入字段,通常在窗口顶部。
- 输入你的显示过滤器表达式并按 Enter 键。
以下是一个仅显示 HTTP 流量的显示过滤器示例:
http
此过滤器将仅显示使用 HTTP 协议的捕获数据包。
显示过滤器语法
Wireshark 中的显示过滤器语法与捕获过滤器语法类似,但具有一些额外的功能和能力。一些常见的显示过滤器表达式包括:
- 协议过滤器:
tcp、udp、icmp - 端口过滤器:
tcp.port == 80、udp.port == 53 - IP 地址过滤器:
ip.src == 192.168.1.100、ip.dst == 8.8.8.8 - 逻辑运算符:
and、or、not - 特定字段过滤器:
http.request.method == "GET"、dns.qry.name contains "example.com"
你可以在 Wireshark 文档中找到显示过滤器表达式的完整列表。
结合使用捕获过滤器和显示过滤器
需要注意的是,捕获过滤器和显示过滤器的用途不同。捕获过滤器决定记录哪些流量,而显示过滤器决定在 Wireshark 界面中显示哪些流量。
在许多情况下,你可能希望同时使用捕获过滤器和显示过滤器来优化你的分析工作流程。例如,你可以使用捕获过滤器来限制收集的数据量,然后使用显示过滤器在捕获的数据中专注于特定类型的流量。
总结
本教程探讨了 Wireshark 中捕获过滤器和显示过滤器之间的区别,Wireshark 是网络分析和故障排除的重要网络安全工具。通过了解这些过滤器的不同作用和应用,你现在可以有效地利用 Wireshark 来增强你的网络安全监控和事件响应能力,最终加强你组织的整体安全态势。


