2022.10.4 Wireshark 4.0.0 新版本正式发布了,身处十一假期期间,自然是懒得开电脑,简单扫了下 Wireshark 4.0.0 Released,发现大版本更新的东西还挺多,当然其中也是包含前期发布的候选版本 4.0.0rc1 和 4.0.0rc2 的东西。
上一个稳定版本 3.6,开发版本 3.7,此次直接跳过 3.8 和 3.9 ,来到了稳定版本 4.0,也不清楚是不是新的大版本刚发布的原因,开发版本 4.1 暂不见下载身影。。本篇简单整理下 Wireshark 4.0.0 部分新内容。
Wireshark 4.0.0 Released
https://www.wireshark.org/news/20221004.html
Wireshark 4.0.0rc2 Release Candidate
https://www.wireshark.org/news/20220914.html
Wireshark 4.0.0rc1 Release Candidate
https://www.wireshark.org/news/20220816.html
从 4.0 版本开始,不再发布正式的 32 位 Windows 软件版本了。如果还需要在 32 位平台上使用 Wireshark ,建议使用 3.6 版本。
问题说明可见:Issue 17779
通过许多新的扩展,显示过滤器语法更加强大。粗略数了下,大概二三十项更新和增强,以下摘取了几项做简要说明,详细的可见官网说明。
譬如 IP-over-IP 数据包里的 IP 协议分层,可以单独匹配内外层地址,如下
Wireshark 4.0.0 匹配第一层 IP 地址,显示过滤语法如下
ip.addr #1 == 10.0.0.1
ip.addr #2 == 1.1.1.1
重点 #1 和 #2 代表分层语法
另一个 ICMP 显示过滤例子
此外包括 QinQ 数据包也能支持该语法
但是 MPLS 测试了下,过滤结果会有些问题,下图示例理应是 #2 ,可能 MPLS 设计就是这样或者是 BUG 或者是语法尚未完全覆盖。。。 暂时未知
而旧版本如 3.6.8 ,并无相关命令
在所有的关系运算符中增加了 “any” 和 “all”,匹配任一字段和匹配全部字段。
譬如在以下 TCP 数据包例子中,过滤 TCP 端口号,在每一个 TCP 数据包存在两个 TCP 端口号 57678 和 80,因为 57678 的存在,显示过滤表达式 tcp.port > 80
匹配到任一个即为真,所以可以匹配到所有数据包。
新增加的 “any” 关键字,也代表上述关系,过滤到所有数据包。
但是关键字 “all” 不行,需要两个端口号全部大于 80 。
改为 >= 80 ,也可正常过滤。
显示过滤表达式 “a === b” 当且仅当所有 a 等于 b 时为真。" === " 的否定可以写成 “!==” 或者 “any_ne” 。
譬如 ip.addr 字段,ip.addr 可以匹配源或目的 IP 地址,“==” 表示当任一 IP 地址匹配时为真。
而使用严格匹配 " === " 时,则无法匹配上。
严格匹配 " === " 的否定表达式 “!==”,任一 IP 地址不匹配时为真。
另外需要注意的是,运算符“~=”已弃用,将在未来的版本中删除(目前语法上以黄色标记)。使用“!==”,意思相同。
增加负索引,从后往前对协议字段进行索引。
譬如 tcp 协议字段从后往前匹配 2 个字节,-2 表示 2 个字节。
从后往前匹配 4 个字节,-4 表示 4 个字节。
统计中的会话和端点框更新。包括调整列大小选项、导出 JSON 数据格式、选项卡可以任意分离和重新附加、会话通过第二个地址和第一个端口号排序、端点通过端口号排序、TCP和UDP会话可以直接展示“Follow Stream”和 “Graph”等等。
Statistics
-> Conversations
Statistics
-> Endpoints
看不习惯。。。还不如重点改造一下
Flow Graph
,相较于科来的流图,真的是不太好看~
默认的主窗口布局已被更改,“Packet Detail”和“Packet Byte”并排位于“Packet List”窗格下方。
现在默认主窗口布局
原有默认主窗口布局
Hex Dump 导入改进
改进了从 Wireshark 和 text2pcap 导入的 Hex dump 。
MaxMind 地理定位改进
使用 MaxMind 进行地理定位时的速度有了很大的提高。
构建 Wireshark 所需的工具和库更新,详见官方说明 “Other Development Changes”。
其他方面的改进,详见官方说明“New and Updated Features”。
包括如下 :
macOS 安装包附带 Qt 6.2.4,需要 macOS 10.14;Windows 安装包附带 Npcap 1.71;
editcap
和 mergecap
中 ‘v’ (lower case) 和 ‘V’ (upper case) 功能交换;
ip.flags
字段仅匹配 3 个高 bit 位,而不是整个字节;
“捕获选项”对话框包含与欢迎页面相同的配置图标;
欢迎页面上的接口列表首先对活动接口进行排序,并且只显示活动接口的流量示意线;此外,现在可以通过接口列表中的菜单隐藏和显示接口;
ciscodump 现在支持 IOS, IOS- XE 和 ASA 远程捕获。
Allied Telesis Loop Detection (AT LDF)
AUTOSAR I-PDU Multiplexer (AUTOSAR I-PduM)
DTN Bundle Protocol Security (BPSec)
DTN Bundle Protocol Version 7 (BPv7)
DTN TCP Convergence Layer Protocol (TCPCL)
DVB Selection Information Table (DVB SIT)
Enhanced Cash Trading Interface 10.0 (XTI)
Enhanced Order Book Interface 10.0 (EOBI)
Enhanced Trading Interface 10.0 (ETI)
FiveCo’s Legacy Register Access Protocol (5co-legacy)
Generic Data Transfer Protocol (GDT)
gRPC Web (gRPC-Web)
Host IP Configuration Protocol (HICP)
Huawei GRE bonding (GREbond)
Locamation Interface Module (IDENT
CALIBRATION
SAMPLES - IM1
SAMPLES - IM2R0)
Mesh Connex (MCX)
Microsoft Cluster Remote Control Protocol (RCP)
Open Control Protocol for OCA/AES70 (OCP.1)
Protected Extensible Authentication Protocol (PEAP)
Realtek
REdis Serialization Protocol v2 (RESP)
Roon Discovery (RoonDisco)
Secure File Transfer Protocol (sftp)
Secure Host IP Configuration Protocol (SHICP)
SSH File Transfer Protocol (SFTP)
USB Attached SCSI (UASP)
ZBOSS Network Coprocessor product (ZB NCP)