虹科分享 | 网络流量监控 | 构建大型捕获文件(Ⅰ)——Wireshark过滤器和其他Allegro网络万用表工具

news2024/11/28 1:46:15

数据包分析是一个复杂的话题。如果在没有设置参数的情况下启动Wireshark,就会开始实时捕获或打开一个预先录制的pcap文件。在很短的时间内,可能有成千上万的数据包等待分析。有一种危险,就是被大量的数据困住了。

然而,如果用户想深入分析数据包,没有一个其他产品可以替代Wireshark。但是,有一些方法可以使这项任务变得更加容易。

本文解释了应对挑战和减少数据包分析工作的策略--无论是为了排除故障还是为了评估网络质量。

第一部分也就是本篇讨论的是解释如何使用Wireshark工具进行结构化搜索的技术。这里涵盖了过滤器、颜色标记和协议层次的技术。

第二部分将会在下一期为大家进行介绍,我们该如何使用 Allegro 网络万用表来加快 pcap 分析器的工作。

旗舰级的Wireshark

开源程序Wireshark是一个非常好用的pcap分析器。该项目从前身 "Ethereal "中脱颖而出,自2006年以来一直存在,自其发布以来已将所有商业对比产品挤出市场。Wireshark是一个面向数据包的分析器,用于准确定位问题,并以图形显示数据日志。

大多数繁忙的网络会有许多水平的网络连接,需要准确的数据包分析。例如,只访问一个网站就会产生与许多其他主机的连接。

过滤器的使用

由于需要处理的数据量巨大,Pcap 文件的分析可能是一个挑战。可以使用过滤器来有选择地隐藏不感兴趣的连接。我们的目标是最终获得一组相对容易管理的数据包,作为详细分析的起点。

除了应用BPF语法等外部工具和技术来过滤流量外,Wireshark还有一些板载手段来减少大量的信息,以便更接近相关信息。Wireshark区分了两种类型的过滤器。捕获过滤器定义哪些数据包被记录下来;显示过滤器定义了哪些捕获的数据包被包括在当前的分析中。但是,这两种过滤器使用不同的语法。

在Wireshark中的简单显示过滤器

在Wireshark中最常用的使内容更精简得技术是使用显示过滤器。

显示过滤器最简单的用途是将流量减少到单一的应用程序、特定的协议或数据字段的确切规格。要做到这一点,你可以使用菜单(分析->显示过滤器)来选择,例如,HTTP协议,这将限制视图到所有的HTTP条目,或者直接在过滤器工具栏上插入所需的过滤器值。如果你想只看到所有的SIP连接,你只需在输入框中输入'sip',然后用'Enter'确认即可。

在Wireshark中通过显示过滤器进行特定的协议过滤

过滤器正在使用中,可以在过滤器工具栏的输入栏中看到(用绿色突出显示)。右下方的状态栏也显示过滤器已被设置,或者当时确实只显示了一定比例的数据包。

 在直接输入显示过滤器时,Wireshark提供了一个自动完成功能,因此在输入过滤器时,所有具有相同字母序列的可用过滤器都会被建议。

比较运算符

除了使用简单的过滤器,条件也可以被链接。Wireshark的过滤器语法提供了括号、逻辑运算符,如'and' 'or',以及比较运算符,如= =或! =。

例如,如果你想显示 "从IP地址10.17.2.5到80端口的任何TCP流量",翻译成Wireshark的过滤语法是ip.src = = 10.17.2.5 and tcp.dstport = = 80。

在这个例子中,条件是用 'and' 连接的。条件1规定,数据包的源IP地址必须是10.17.2.5,条件2规定,协议必须是TCP,目的端口必须是80。

任何数量的条件都可以连接起来,以进一步限制显示的流量的选择。

来自Wireshark的表达式生成器

作为一个熟练的Wireshark用户,表达式可以从内存中自由应用。最初,使用Wireshark的表达式生成器对话框将表达式添加到显示过滤器中是非常容易的。

当右击过滤器工具栏中的术语 "表达式 "时,这个对话框会打开。在这里,可以选择和链接预定义的运算符。为了检查所选的过滤器是否正确,过滤器工具栏变成绿色。如果过滤器是无效的,则该区域会以红色显示。

在Wireshark中调用表达式生成器

如果需要的话,可以保存Wireshark的过滤器。

捕获过滤器

除了上述减少显示数据包的显示过滤器外,还可以在流量记录开始的那一刻应用过滤器;这些被称为捕获过滤器,确保网络数据被限制在所需的选择范围内。

Wireshark捕获过滤器使用与tcpdump、libpcap过滤器相同的语法。就是说,用字节偏移、十六进制值和与真值相关的掩码的语法来过滤数据。捕获过滤器的应用并不简单,因为它们比显示过滤器更隐蔽。

Wireshark手册中包含了更多关于集成在Wireshark中的过滤器的信息。

在这篇文章中,只讨论了Wireshark作为机载工具所提供的最重要的过滤器。应用比最简单的显示过滤器更深奥的过滤器,需要对Wireshark的过滤器语法有深入的了解,以便持续使用过滤器来解决自己的研究问题。

使用Wireshark进行颜色标记

除了过滤功能外,Wireshark还有一个可定制的颜色编码系统。例如,默认情况下,所有UDP数据包都标为蓝色,标准TCP传输为紫色,HTTP为绿色。这些颜色编码有助于管理员一目了然地识别数据包的类型。用户定义的颜色规则可以分配给自己的配置文件并保存,完成系统。文本和背景颜色都可以自定义。

单个数据流可以通过自动颜色编码轻松追踪。然而,为了一目了然地看到哪些连接是活动的,或者单个数据包属于哪些连接,而不是通过IP地址/端口号来确定,你可以通过颜色代码来调节。要启用这一点,在右键单击数据包后,你可以在上下文菜单中点击 "彩色连接",并选择连接类型(以太网、IPv4、IPv6、TCP、UDP等)。

根据传输协议为连接着色,同一IP对之间的单个通信流可以被区分出来。这比只看IP地址能够进行更细化的分析。在多个主机同时进行通信的情况下,或者在同一主机之间有多个通信连接需要区分的情况下,对单个连接进行颜色编码特别有用。如果你想仔细观察任何潜在的可疑流量,颜色编码也是一种可行的记录方式。颜色编码为大型 pcap 数据文件的初始定位提供了一种易于使用的技术。

使用协议层次

这里要介绍的第三种技术是使用协议分层,以便在大型 pcap 文件中更好地定位。与颜色编码相比,这需要高级的 Wireshark 知识。协议层次的使用提供了有用的线索,例如,在追踪可疑的应用程序或协议时。

要显示记录文件中使用的日志,必须选择菜单项 "统计->日志层次结构"。层次结构提供了一个树状的日志视图,包括每个日志的统计值。它被称为层次结构,因为数据是根据通信层排列的,因为大多数数据包包含多个封装的协议。因此,一个HTTP数据包被列在一个TCP数据包下,两者都在IP数据包下,等等。

按协议层次的Wireshark视图

除了协议信息外,管理员还可以查看该协议在总流量中的份额有多高,数据包的确切数量或某一协议的带宽。如果在数据条目中发现意外的高值,应该更仔细地检查这个流量。为此,用鼠标右键标记该条目,以便进一步分析。一个上下文菜单打开,可以直接过滤或着色数据包。由于列表的分层结构,不可能对日志进行排序或重新排序。

然而,可以采用演绎策略,直接从日志层次视图中过滤掉不感兴趣的日志。可以从过滤后的结果中保存一个单独的捕获文件。

总的来说,协议分层技术是一种可扩展的方式,可以获得一个 pcap 文件的整体视图。协议层次结构通常是进一步分析的起点,因为在这里可以看到意外流量或错误的迹象,比如意外的协议或单个协议的意外数据比例。引起注意的往往不是某个协议的存在,而是其相对比例。

下一期我们将告诉大家,如何使用Allegro网络万用表作为预过滤器来过滤和构建大型捕获文件。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/142958.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

BPF学习笔记(八)--Linux tracing system对比分析

Linux trace技术发展已久,经常看到很多的专业术语,从perf LTTng systemtap bpftrace tracepoint trace BCC bpf ebpf等词汇,这些关键的词汇有着怎样的联系和关联,通过下面的这个图可以直观的认识到这几种关键技术的内在联系。 整…

Java认识多线程与Thread类的使用

目录 认识线程(Thread) 概念 为什么会有线程的出现? 刨根问底。为什么进程的创建与销毁效率很低呢? 多线程的轻量体现: 进程与线程的区别 第一个多线程程序 抢占式执行是啥 JDK中jconsole工具的使用 创建线程…

Live800:智能客服机器人的知识库怎么创建?

智能客服机器人的知识库是以知识为基础的系统,它可以明确地表达与实际问题相对应的知识,并构成相对独立的程序行为主体,有利于有效、准确地解决实际问题。从本质上来说,智能客服机器人的知识库实际上就像人类的大脑,储…

Flutter关于软键盘的一些问题

Scaffold类有个resizeToAvoidBottomInset 属性,它的作用是当弹出软键盘的时候,可以自动调节body区域的高度,撑起body的内容,使其底部高度刚好为键盘的高度,这样一来就不至于让键盘覆盖内容。 Scaffold( /// ..... ///…

教你如何搭建CRM—商机管理系统的demo

1、简介 1.1、案例简介 本文将介绍,如何搭建CRM-商机管理。 1.2、应用场景 CRM-商机管理应用完整记录所有商机资料,合理的对商机进行销售阶段的变更,实现商机管理智能化。 2、设置方法 2.1、表单搭建 1)新建主表【商机】表…

进程间通信——共享内存

目录 1 概念 2 操作流程 fork(获取key值) shmget(申请对象) shmat(内存映射) 读写共享内存:类似堆区内存的直接读写 shmdt(解除映射) shmctl(删除对象) 范例: 1 概念 共享内存是进程间通信中最简单最高效的方式之一。共享内存允许两个或更多进程…

使用Python的Selenium进行网络自动化的入门教程

使用Python的Selenium进行网络自动化入门 自动化可以被看作是在使用电子机器或机器人来执行任务的过程中去除人力的过程。 在这篇文章中,我们将研究网络流程的自动化。 让软件机器人在网络上自动执行流程和任务的能力被称为网络自动化。 使用网络自动化&#xf…

2022年协议转让投资策略研究报告

第一章 协议转让的概念 协议转让是指双方当事人就转让标的物所有权达成协议,是典型的商业交易方式。而在破产案件中,则是一种有别于拍卖和以物抵债的处置财产的方式。根据《企业破产法》第112条,变价出售财产应当通过拍卖进行。但是&#xf…

云原生|kubernetes|安全漏扫神器trivy的部署和使用

前言: 云原生领域内的安全漏扫工具有clair和trivy是比较常用的,而安全漏扫工具是可以和harbor这样的私有仓库集成的,自harbor-1.21版以后都是默认使用trivy这个漏扫工具的,而在此之前是使用clair的。 那么,本文将就什…

实验十七 VLAN间的三层通信

实验十七 VLAN间的三层通信配置要求:通过三层交换机实现VLAN间互通通过单臂路由实现VLAN间互通网络拓扑图:操作步骤:一、 通过三层交换机实现VLAN间互通1、配置交换机LSW1的接口为trunk接口,g0/0/1口允许vlan 10通过,g…

构建器/生成器模式Builder

1.意图:将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。 2.结构 Builder为创建一个Product对象的各个部件指定抽象接口。 ConcreteBuilder实现Builder的接口以构造和装配该产品的各个部件,定义并明确它所创建的…

实验十五 IS-IS协议基本配置

实验十五 IS-IS协议基本配置IS-IS(中间系统到中间系统)协议与OSPF(开放最短路径优先)协议有许多类似之处, 如都是链路状态的IGP路由协议,采用的都SPF路由算法,都划分了区域。为了支持大规模 的路由网络,IS-IS在自治系统内采用骨丁…

四、MySQL 存储引擎及数据类型

文章目录一、前置知识二、MySQL 存储引擎(先了解,初步有个印象)2.1 MySQL 存储引擎的概念2.2 查询 MySQL 中支持的存储引擎2.3 InnoDB 存储引擎2.4 MyISAM 存储引擎2.5 MEMORY 存储引擎2.6 如何选择 MySQL 存储引擎?三、MySQL 数据类型3.1 数字类型3.2 日…

Dataway让SpringBoot不在需要Controller、Service、DAO、Mapper了

Dataway介绍 Dataway 是基于 DataQL 服务聚合能力,为应用提供的一个接口配置工具。使得使用者无需开发任何代码就配置一个满足需求的接口。整个接口配置、测试、冒烟、发布。一站式都通过 Dataway 提供的 UI 界面完成。UI 会以 Jar 包方式提供并集成到应用中并和应用…

君子签用区块链打造电子合同证据链闭环,提升电子合同证据效力

电子合同作为电子证据的主要表现形式,采用电子合同发生纠纷时,相关的电子合同数据成为证据证明的关键。运用区块链去中心化、分布式存储、加密可溯源等技术特性,让电子合同的整个过程都可以在互联网上安全地进行,帮助打通数据信任…

JavaERP系统源码+数据库,业务闭环、灵活稳定的企业级ERP系统,真正的财务业务一体化系统

JavaERP系统源码数据库,业务闭环、灵活稳定的企业级ERP系统,真正的财务业务一体化系统 完整代码下载地址:JavaERP系统源码数据库 产品展示 社区版 主界面 权限模块 职员与组织 科目结构 库存管理 库存盘点 订单管理 出入库管理 凭…

【Spring【AOP】】——21、@EnableAspectJAutoProxy注解详解?

📫作者简介:zhz小白 公众号:小白的Java进阶之路 专业技能: 1、Java基础,并精通多线程的开发,熟悉JVM原理 2、熟悉Java基础,并精通多线程的开发,熟悉JVM原理,具备⼀定的线…

Docker二进制安装

目录 1、选择安装目录 2、了解默认安装 3、Docker网络了解 docker官网 1、选择安装目录 安装包下载 链接:https://pan.baidu.com/s/1mbUl2XLnlN4xZuHbvRF-vg?pwdpdoq 提取码:pdoq docker官网 1、选择安装目录 docker指定数据存储目录到 /data/…

mysql 乐观锁和悲观锁

悲观锁介绍(百科): 悲观锁,正如其名,它指的是对数据被外界(包括本系统当前的其他事务,以及来自外部系统的事务处理)修改持保守态度,因此,在整个数据处理过程中…

二叉树的一些练习题

前言 二叉树的简单题目,通过画栈帧图去理解过程。画一画,走一走递归过程,理解会更加深刻。 二叉树练习题前言二叉树的创建二叉树先序遍历创建PreCreat二叉树层次创建LevelCreat二叉树的销毁BinaryTreeDestory二叉树求节点个数BinaryTreeSize二…