本文相关的TryHackMe实验房间链接:https://tryhackme.com/room/wiresharkthebasics
通过学习相关知识点:了解Wireshark的基础知识以及如何分析协议和PCAP文件。
简介
Wireshark是一款开源、跨平台的网络数据包分析工具,能够嗅探和调查实时流量并检查数据包捕获(PCAP)文件,它通常被用作最好的数据包分析工具之一。在本文中,我们将了解Wireshark的基础知识并使用它来执行基本的数据包分析。
在Tryhackme的相关实验房间页面中,点击如下所示的Start Machine按钮,即可一键部署用于本文实验的VM(虚拟机)。
实验虚拟机中提供了两个数据包捕获文件,你可以使用名为http1.pcapng
的文件来模拟屏幕截图中显示的操作;但请注意,你需要使用Exercise.pcapng
文件来回答问题。简而言之,实验环境下给定的实验虚拟机中有两个可用文件,一个用于模拟操作,另一个用于回答问题。
答题
阅读本小节内容并回答以下问题。
http1.pcapng
Exercise.pcapng
Wireshark工具概述
使用案例
Wireshark是目前最强大的流量分析工具之一,它的使用有多种目的:
-
检测网络问题并对问题进行故障排除,例如网络负载故障点和网络拥塞。
-
检测安全异常,例如恶意主机、异常端口使用和可疑流量。
-
研究和学习协议详细信息,例如响应代码和有效负载数据。
注意: Wireshark不是入侵检测系统 (IDS-Intrusion Detection System),它只允许分析人员发现和深入调查数据包,它也不会修改数据包,而是会读取它们。因此,通过Wireshark来检测任何异常或网络问题将高度依赖于分析师本身所掌握的知识和调查技能。
图形用户界面和数据
Wireshark GUI打开时会显示一个一体化页面,可帮助用户以多种方式调查流量。乍一看,有五个部分引人注目。
区域 | 简介 |
---|---|
Toolbar 工具栏 | 主工具栏包含了用于数据包嗅探和处理的多个菜单和快捷方式,包括过滤、排序、汇总、导出和合并。 |
Display Filter Bar 显示过滤栏 | 主要是查询和过滤部分。 |
Recent Files 最近的文件 | L最近调查的文件列表。你可以通过双击调用列出的文件。 |
Capture Filter and Interfaces 捕获过滤器和接口 | 捕获过滤器和可用的嗅探点(网络接口)。网络接口是计算机和网络之间的连接点。通过软件连接(例如lo、eth0 和ens33)可以启用网络硬件。 |
Status Bar 状态栏 | 工具状态、配置文件和数字包信息。 |
下图是Wireshark的主窗口图示,上表中所解释的部分已突出显示。现在我们可以在实验虚拟机中打开Wireshark并完成下文中的演练。
加载PCAP文件
上图为Wireshark的空界面。唯一可用的信息是最近处理过的“http1.cap”文件。让我们加载该文件并查看Wireshark中的详细数据包展示。请注意,你还可以使用“文件-File”菜单,通过拖放文件或者双击文件来加载pcap。
如上图所示,我们可以看到正在处理的文件名、详细的数据包数量和数据包详细信息;数据包信息会显示在三个不同的窗格中,这使得我们能够以不同的格式发现它们。
窗格 | 介绍 |
---|---|
Packet List Pane 数据包列表窗格 | 这里会显示每个数据包的摘要(源地址和目标地址、协议和数据包信息)。你可以单击列表选项以选择一个数据包来做进一步调查。选中具体的数据包之后,相关的详细信息将显示在其他面板中。 |
Packet Details Pane 数据包详细信息窗格 | 所选数据包的详细协议分解情况。 |
Packet Bytes Pane 数据包字节窗格 | 所选数据包的十六进制和解码的ASCII表示形式,它会根据数据包详细信息窗格中单击的部分来突出显示数据包字段。 |
对数据包进行着色
除了可以快速查看数据包信息之外,Wireshark还能按照不同条件和协议的顺序对数据包进行着色,以快速发现捕获的数据包文件中的异常和协议(这解释了为什么给定屏幕截图中几乎所有内容都是绿色的)。浏览数据包信息可以帮助你在分析过程中准确地找到你要查找的内容。当然,你也可以使用显示过滤器创建自定义颜色规则来发现感兴趣的事件。现在让我们关注默认的着色规则并了解如何查看和使用其所表示的数据详细信息。
Wireshark有两种类型的数据包着色方法:仅在当前程序会话期间可用的临时着色规则以及保存在首选项文件(配置文件)下并可用于下一个程序会话的固定规则。
你可以使用“右键单击菜单”或者使用“查看View -->着色规则Coloring Rules”菜单来创建固定的着色规则。 在“Colourise Packet List”菜单中可以激活/停用着色规则。临时数据包着色是通过“右键单击菜单”或“查看View --> 对话过滤器Conversation Filter ”菜单来设置的,这在第五小节中有所介绍。
默认的固定着色规则如下图所示:
流量嗅探
你可以点击蓝色的“shark-鲨鱼图标按钮”来启动网络嗅探(捕获流量),点击红色按钮将停止嗅探,点击绿色按钮将重新启动嗅探过程。底部状态栏还将提供正在使用的嗅探接口和已收集的数据包数量。
合并PCAP文件
Wireshark可以将两个pcap文件合并为一个文件。你可以使用“文件File --> 合并Merge”菜单路径将当前的pcap与已处理的pcap合并。当你选择第二个文件时,Wireshark将显示所选文件中的数据包总数。单击“打开”后,它将把现有的pcap文件与所选中的pcap文件合并并得到一个新的pcap文件。请注意,你需要在开始处理“已合并”的pcap 文件之前保存它。
查看文件详细信息
了解数据包文件详细信息对我们分析流量很有帮助。特别是在处理多个pcap文件时,有时你需要了解并检索文件详细信息(文件哈希、捕获时间、捕获文件注释、接口和统计信息)以识别文件、对其进行分类以及判断优先级。你可以通过"统计信息-->捕获文件属性"或者单击窗口中"位于左下角的pcap图标"来查看文件详细信息。
答题
阅读本小节内容并回答以下问题。
部署实验虚拟机,并打开机器中的wireshark,然后加载Exercise.pcapng文件:
捕获文件注释中的flag是:TryHackMe_Wireshark_Demo
数据包总数是:58620
捕获文件的SHA256 哈希值:f446de335565fb0b0ee5e5a3266703c778b2f3dfad7efeaeccb2da5641a6d6eb
数据包解析
概念介绍
数据包剖析也被称为协议剖析,它指的是通过解码可用协议和字段来调查数据包详细信息。 Wireshark支持解析一长串的协议,并且你还可以编写相关的解析脚本。你可以在此处找到有关数据包解析的更多详细信息。
注意:接下来将介绍Wireshark如何基于OSI分层来分解数据包以及如何根据这些层来进行分析,因此,你应该具备OSI分层模型及其工作原理的背景知识。
数据包详细信息
你可以单击数据包列表窗格中的数据包以展开其详细信息(双击数据包将在新窗格中打开相关的数据包详细信息)。根据OSI模型,数据包由5至7层组成,我们将从捕获的数据包文件示例中的HTTP数据包中查看所有这些内容。下图为查看27号数据包的详细信息。
每次单击窗口左下面板中的详细信息时,它都会在数据包字节窗格中突出显示相应的部分。
让我们仔细查看数据包详细信息窗格(窗口左下面板)。
我们可以看到数据包的七个不同层:帧/数据包、源 [MAC]、源 [IP]、协议、协议错误、应用协议和应用数据。下面我们将更详细地讨论各个层。
帧(第 1 层):这将向你显示你正在查看的帧/数据包(frame/packet )以及特定于OSI模型物理层的详细信息。
源 [MAC](第 2 层):这将显示源 MAC 地址和目标 MAC 地址;来自OSI模型中的数据链路层。
源 [IP](第 3 层):这将显示源IPv4地址和目标IPv4地址;来自OSI模型中的网络层。
协议(第 4 层):这将向你显示所使用的协议( UDP / TCP )以及源端口和目标端口的详细信息;来自 OSI 模型的传输层。
Protocol Errors: This continuation of the 4th layer shows specific segments from TCP that needed to be reassembled.
协议错误:第四层的延续,显示了TCP中需要重新组装的特定段。
应用程序协议(第 5 层):这将显示特定于所使用协议的详细信息,例如 HTTP、 FTP和SMB 。来自 OSI 模型的应用层。
应用程序数据:第五层的扩展,可以显示特定于应用程序的数据。
现在我们了解了一般数据包的组成部分。
答题
阅读本小节内容并回答以下问题。
继续使用上文所部署好的环境进行答题。
eXtensible Markup Language
5/13/2004
47
424
9a01a-4696-7e354b00
数据包导航
数据包数量
Wireshark 计算所调查数据包的数量,并为每个数据包分配一个唯一的编号。这有助于大型捕获的分析过程,并可以轻松返回到事件的特定点。
跳转查看数据包
数据包编号不仅有助于计算数据包总数或更容易查找/调查特定数据包。此功能不仅可以在数据包之间上下导航;它还提供帧内数据包跟踪,并能在会话的特定部分中查找下一个数据包。你可以使用“Go”菜单和工具栏来查看特定的数据包。
查找数据包
除了数据包编号之外,Wireshark 还可以通过数据包内容查找数据包。你可以使用“编辑Edit --> 查找数据包Find Packet”菜单在数据包内搜索感兴趣的特定事件。这有助于分析人员和管理员找到特定的入侵模式或故障痕迹。
查找数据包有两个关键点。首先是了解输入类型。此功能接受四种类型的输入(显示过滤器、十六进制、字符串和正则表达式)。字符串和正则表达式搜索是最常用的搜索类型。搜索不区分大小写,但你可以通过单击单选按钮在搜索中设置区分大小写。
第二点是选择搜索字段。你可以在三个窗格(数据包列表、数据包详细信息和数据包字节)中进行搜索,了解每个窗格中的可用信息对于查找感兴趣的事件非常重要。例如,如果你尝试在数据包详细信息窗格中查找可用信息并在数据包列表窗格中进行搜索,则即使存在,Wireshark 也不会找到它。
标记数据包
标记数据包是对分析师来说另一个有用的功能。你可以通过标记来查找/指向特定数据包以进行进一步调查。它可以帮助分析人员指出感兴趣的事件或从捕获中导出特定数据包。你可以使用“编辑Edit”或“右键单击”菜单来标记/取消标记数据包。
无论表示连接类型的原始颜色如何,标记的数据包都将以黑色显示。请注意,标记的数据包信息在每个文件会话中都会更新,因此关闭捕获文件后标记的数据包将丢失。
数据包注释
与数据包标记类似,注释是对分析师来说另一个有用的功能。你可以为特定数据包添加注释,这将有助于进一步调查或提醒其他层分析人员指出重要/可疑点。与数据包标记不同,注释可以保留在捕获文件中,直到操作员将其删除。
导出数据包
捕获文件可以在单个文件中包含数千个数据包。如前所述,Wireshark 不是 IDS,因此有时需要从文件中分离出特定的包并进行更深入的挖掘以解决事件。此功能可帮助分析人员共享唯一的可疑包(确定的范围)。因此,分析过程中不包含冗余信息。你可以使用“文件File”菜单导出数据包。
导出对象(文件)
Wireshark可以提取通过线路传输的文件。对于安全分析师来说,发现共享文件并保存它们以供进一步调查至关重要。
导出对象仅适用于选定协议的流(DICOM、 HTTP 、IMF、 SMB和 TFTP)。
时间显示格式
Wireshark会列出捕获的数据包,但调查默认流并不总是最佳选择。在默认情况下,Wireshark会以“自捕获开始以来的秒数”显示时间,我们可以使用UTC时间显示格式来获得更好的视图,使用“查看View -->时间显示格式Time Display Format”菜单来更改时间显示格式即可。
权威信息
Wireshark 还可以检测协议的特定状态,以帮助分析人员轻松发现可能的异常和问题。请注意,这些只是建议,并且总是有可能出现误报/漏报。权威信息可以提供一组具备不同严重性的状态类别,详情如下表所示。
Severity严重性 | Colour颜色 | Info信息 |
---|---|---|
Chat | 蓝 | 有关通常工作流程的信息。 |
Note | 青 | 应用程序错误代码等值得注意的事件。 |
Warn 警告 | 黄 | 警告,例如异常错误代码或问题陈述。 |
Error 错误 | 红 | 数据包格式错误等问题。 |
下表列出了经常遇到的信息组。关于权威信息条目的更多信息可以参考Wireshark的官方文档。
Group | Info | Group | Info |
---|---|---|---|
Checksum 校验和 | Checksum errors. 校验和错误 | Deprecated已弃用 | Deprecated protocol usage. 已弃用的协议使用。 |
Comment 注释 | Packet comment detection. 数据包注释检测 | Malformed畸形 | Malformed packet detection. 畸形数据包检测。 |
你可以使用状态栏中的左下角按钮或“分析Analyse --> 权威信息 Expert Information”菜单通过对话框查看所有可用的信息条目,它将显示数据包编号、摘要、组协议和总发生次数。
答题
阅读本小节内容并回答以下问题。
继续使用上文所部署好的环境进行答题。
r4w8173
911cd574a42865a956ccde2d04495ebf
捕获文件中有一个“.txt”文件,找到该文件并进行读取:
PACKETMASTER
1636
数据包过滤
概念介绍
Wireshark 拥有强大的过滤引擎,可以帮助分析人员缩小流量范围并专注于感兴趣的事件。 Wireshark 有两种类型的过滤方法:捕获过滤器和显示过滤器。捕获过滤器用于“捕获”仅对所用过滤器有效的数据包;显示过滤器用于“查看”对所使用的过滤器有效的数据包。在本文中,我们不会展开讨论这些过滤器的差异和高级用法。现在让我们重点关注显示过滤器的基本用法,它能够首先帮助分析人员更好地进行分析。
过滤器是为 Wireshark 官方协议参考中提供的协议设计的特定查询。虽然过滤器只是调查感兴趣事件的选项,但有两种不同的方法可以过滤流量并从捕获文件中消除噪音。第一个使用查询,第二个使用右键菜单。 Wireshark 提供了强大的 GUI,对于不想为基本任务编写查询的分析师来说,有一条黄金法则:“如果你可以点击它,你就可以过滤和复制它”
应用为过滤器
这是过滤流量的最基本方法。在调查捕获文件时,你可以单击要过滤的字段,然后使用“右键单击菜单”或“分析--> 应用为过滤器”菜单来过滤特定值。应用过滤器后,Wireshark 将生成所需的过滤器查询,应用它,根据你的选择显示数据包,并从数据包列表窗格中隐藏未选择的数据包。请注意,总数据包数和显示的数据包数始终显示在状态栏上。
对话过滤器-Conversation filter
当你使用“应用为过滤器”选项时,你将仅过滤数据包的单个实体。此选项是调查数据包中特定值的好方法。但是,假设你想要通过关注 IP 地址和端口号来调查特定数据包编号和所有链接的数据包。在这种情况下,“对话过滤器”选项可帮助你仅查看相关数据包并轻松隐藏其余数据包。你可以使用“右键菜单”或“分析-->对话过滤”菜单来过滤对话。
为对话着色
此选项类似于“对话过滤器”,但有一点不同。它会突出显示已链接的数据包,而不是应用显示过滤器并减少被查看的数据包的数量。此选项与“着色规则”选项配合使用,可以更改数据包颜色,而不考虑先前应用的着色规则。你可以使用“右键单击菜单”或“查看View --> Colourise Conversation着色对话”菜单,只需单击一下即可为已链接的数据包着色。请注意,你可以使用“查看 --> 着色对话 --> 重置着色”菜单来撤消此操作。
准备作为过滤器
与“应用为过滤器”类似,此选项可以帮助分析师使用“右键单击”菜单创建显示过滤器。然而,与前一个模式不同的是,该模式在选择后不应用过滤器。它将所需的查询添加到窗格中,并等待执行命令(enter)或使用“右键单击菜单”中的“..和/或..(.. and/or..)”选择另一个过滤选项。
应用为列
在默认情况下,数据包列表窗格会提供有关每个数据包的基本信息。你可以在数据包详细信息窗格中选择某个值并使用“右键单击菜单”或“分析-->应用为列”菜单将列添加到数据包列表窗格。单击某个值并将其应用为列后,它将在数据包列表窗格中可见。此功能可帮助分析人员检查捕获文件中可用数据包中的特定值/字段。你可以通过单击数据包列表窗格顶部来启用/禁用数据包列表窗格中显示的列。
跟踪数据流
Wireshark会以数据包部分大小显示所有内容,但是我们也可以重建数据流并查看在应用程序级别所呈现的原始流量。我们可以Follow(跟踪)基于协议的流,而数据流可以帮助分析人员重新创建应用程序级数据并了解分析员感兴趣的事件,此外还可以帮助我们查看未加密的协议数据,例如用户名、密码和其他被传输的数据。
你可以使用“右键菜单”或 “分析--> 跟踪 TCP/UDP/HTTP 流”菜单来跟踪数据流,流会显示在单独的对话框中;来自服务器的数据包以蓝色突出显示,来自客户端的数据包以红色突出显示。
在我们点击跟踪流后,Wireshark就会自动创建并应用所需的过滤器来让我们查看特定的流。请记住,一旦应用了过滤器,被查看的数据包数量就会发生变化,你需要使用显示过滤器栏右上侧的“ X按钮”来删除显示过滤器并查看捕获文件中的所有可用数据包。
答题
阅读本小节内容并回答以下问题。
继续使用上文所部署好的环境进行答题。
http
1089
3
Blad3
小结
恭喜你刚刚完成了关于“Wireshark:基础知识”的学习,在本文中,我们简单介绍了 Wireshark,它是什么、它如何运行以及如何使用它来调查流量捕获情况。
注意:本文只涉及Wireshark基础知识,在后继的学习中,我们可以通过深入研究数据包来提高我们的Wireshark使用技能。
标签:文件,Basics,更新版,菜单,过滤器,窗格,数据包,Wireshark From: https://www.cnblogs.com/Hekeats-L/p/18631228