Skip to content
Wireshark Wiki 中文翻译整理专题首页原始页面

安全

Wireshark 会处理来自网络和抓包文件的大量外部数据,因此使用时需要把它当作有攻击面的分析工具,而不是普通文本查看器。

安全使用 Wireshark 的核心原则是:不要用高权限运行不必要的解析工作,不要在关键生产环境中直接打开不可信抓包文件。

为什么 Wireshark 需要特别注意安全

Wireshark 的大量代码都在解析外部输入:

  • 从网络接口实时捕获的数据包。
  • 从他人提供的抓包文件中读取的数据。
  • 各种协议 dissector 处理的字段、长度、嵌套结构和异常数据。

这和普通应用不同。普通程序通常只有一小部分代码直接处理外部输入,而 Wireshark 的协议解析器覆盖面非常大。历史上,Wireshark 经常出现在安全公告中,主要就是因为解析器 bug 可能被恶意构造的数据触发。

哪些操作风险最高

操作风险原因
打开未知来源的捕获文件文件内容可能专门构造,用来触发解析器漏洞
实时抓包并开启实时更新列表数据包会边进入边被解析和显示
停止抓包后打开完整解析视图大量 dissector 会处理刚捕获的数据
用管理员/root 权限运行 GUI一旦被利用,影响范围更大

GUI 小问题通常只是崩溃或显示异常;真正需要关注的是处理外部数据的解析路径。

不要默认使用 Administrator/root 运行

很多人误以为 Wireshark 必须使用 Administrator 或 root 才能工作。实际上,大部分查看、过滤、解析和统计功能不需要高权限。

通常只有以下操作可能需要额外权限:

  • 访问抓包接口。
  • 收集接口列表。
  • 启动底层抓包驱动或服务。

更安全的做法是:让底层抓包组件具备必要权限,而不是让整个 Wireshark GUI 长期以高权限运行。

保护自己的做法

建议目的
使用最新版本 Wireshark获得安全修复和解析器修复
避免以 root/Administrator 运行 GUI降低漏洞被利用后的影响范围
在非关键环境分析不可信文件隔离潜在风险
使用 dumpcap/tcpdump 负责抓包用更小的程序完成高权限捕获动作
将抓包文件转移到分析环境避免在关键生产机器上做复杂解析
对敏感抓包做访问控制抓包文件可能包含账号、token、业务内容和内部拓扑

关于“能看到密码”的问题

Wireshark 能看到网络上传输的数据,这本身不是 Wireshark 的漏洞,而是网络协议、加密和访问控制设计的问题。不能依赖“别人看不到”来保证安全;应优先使用加密协议、最小权限和安全的网络边界。

Wireshark 项目的安全改进

Wireshark 开发者长期通过以下方式降低风险:

  • 自动化测试和 fuzzing。
  • 代码审查。
  • 移除潜在不安全函数。
  • 修复安全公告中暴露的问题。
  • 改进 dissector 的健壮性。

相关页面

  • CaptureSetup:抓包权限和环境设置
  • CapturePrivileges:抓包权限相关历史页面
  • SampleCaptures:公开样例抓包和测试文件
  • Development/Security:Wireshark 开发侧安全工作

Imported from https://wiki.wireshark.org/Security on 2020-08-11 23:24:32 UTC

相关 Wireshark Wiki 页面

网络分析技术档案