《精通Wireshark》—第1章1.5节抓取信息的方式

1.5 抓取信息的方式
抓取网络数据包有很多不同的方法。管理员可以根据需求的不同,有针对性地对协议分析软件进行配置,并将它部署在网络中的某个位置。

1.5.1 基于集线器的网络
基于集线器的网络是最容易抓取数据包的,在这种环境中管理员可以把协议分析软件部署在任何地方,因为集线器会将所有数据包广播到它们所在的整个网络中。有鉴于此,我们根本不用考虑在哪里部署数据包分析软件。然而,集线器亦有其弱点,由于数据包之间会发生冲突,因此集线器网络的性能也会显著降低。由于集线器中没有任何按照优先级转发数据包的机制,所以任何希望发送数据包的人都可以通过HUB(中心设备)发起连接,并且开始传输数据包。一般来说,如果有超过一台设备同时发送数据包,数据包之间就会发生冲突。此时,网络就会通知发送方重新发送之前的数据包。在这种情况下,用户就会感受到流量拥塞和带宽过量占用等问题。

1.5.2 交换环境
在交换机连接的网络中会出现很多限制。有鉴于此,在这种环境中进行数据包分析稍显复杂。下面会介绍一些解决方案(如端口镜像和插拔网络),这些解决方案可以帮助管理员摆脱这些限制,简化网络管理的工作。

在使用端口镜像技术时,只要管理员可以接触到访问设备(路由器/交换机)的命令行配置界面或者Web界面,就可以轻松配置端口镜像技术。

下面,我们通过一个逻辑环境来简化一下这项技术的作用。假如我们有一台拥有24个端口的交换机,这台交换机连接了8台PC(PC1~PC8)。此时,这台交换机还剩下15个端口。我们可以将数据包分析软件部署在连接这15个端口中的任何一个端口的设备上,然后配置端口镜像技术。这项技术可以将管理员所指定的交换机端口所转发的所有流量,复制给协议分析软件所在的那个端口。这样,协议分析软件就可以抓取到被映射端口所传输的所有流量了。

一旦配置完成,我们就可以轻松对被映射端口所传输的每一条信息一一进行分析了。在所有配置方案中,这种方法无疑是最为简单的;读者在实现这种方案时,唯一应该提前具备的知识就是了解如何通过命令行界面来配置交换机。当今,管理员往往可以通过GUI界面来进行配置,如果读者要处理的交换机就是通过GUI进行管理的,那就通过GUI进行配置吧。在图1-2中,我们用一种比较简单的方式介绍了端口镜像技术的作用。

如果这台交换机不支持端口镜像技术的话,管理员就只能通过插拔的方式(Hubbing out)来抓取数据包了。如果采用这种方法,那么管理员就真的需要找到那台要抓取其数据包的目标PC,把它连接局域网的那根网线拔掉,然后用一台集线器连接交换机,接下来再将安装协议分析软件的计算机和目标PC连接到集线器上,通过这种方式将这两台设备连接到同一个网络 当中。
现在,协议分析软件和目标设备处于同一个广播域当中。因此,协议分析软件可以轻松抓取到所有去往这台目标PC以及所有从这台目标PC发送出来的数据包。但是,管理员一定要保证目标设备的用户知道自己插拔设备的过程之中造成的丢包,是因为自己试图进行数据包分析而插拔设备所造成的。图1-3可以让读者更容易理解我们在这里介绍的概念。

1.5.3 ARP毒化
抓取网络流量还有一种不道德的方式,那就是在传输信息的双方之间冒充另一台设备。比如说,我们的默认网关位于192.168.1.1,而客户端则位于192.168.1.2。这两台设备一定都拥有一个本地ARP缓存,这样方便这两台设备相互发送数据包,而不需要在局域网中传输多余的管理流量。接下来,我们的问题就成了ARP缓存会以什么形式、保存哪些信息呢?不妨告诉你,命令arp –a可以查看ARP缓存,这条命令会显示出某个特定IP地址所对应的MAC地址。输入命令arp –a(这条命令在绝大多数平台上都没有什么变化)之后,系统会显示出一个表格,其中包含了设备的IP地址和MAC地址。图1-4和图1-5显示了ARP毒化的常规原理。

Before ARP Cache
 

192.68.1.1 – (Server)
192.68.1.2 – AA:BB:EE
192.68.1.3 – AA:BB:DD
 
192.68.1.2 – (Client)
192.68.1.1 – AA:BB:CC
192.68.1.3 – AA:BB:DD
 
192.68.1.3 – (Attacker)
192.68.1.1 – AA:BB:CC
192.68.1.2 – AA:BB:EE

既然已经看到了ARP缓存中所存储的信息,下面我们可以尝试来对信息进行毒化。

After ARP Cache
 

192.68.1.1 – (Server)
192.68.1.2 – AA:BB:DD
192.68.1.3 – AA:BB:DD
 
192.68.1.2 – (Client)
192.68.1.1 – AA:BB:DD
192.68.1.3 – AA:BB:DD
 
192.68.1.3 – (Attacker)
192.68.1.1 – AA:BB:CC
192.68.1.2 – AA:BB:EE

既然我们已经理解了ARP协议的重要性,以及这个协议的工作方式,下面我们可以尝试用攻击者PC的MAC地址来毒化默认网关和客户端的ARP缓存。说得简单一点,就是我们要用攻击者的MAC地址来替换掉默认网关ARP缓存中的客户端MAC地址。这样一来,所有从默认网关发往客户端的数据包,以及所有从客户端发往默认网关的数据包,就都会被发送给攻击者的设备了。

如果攻击者使用的设备上配置了端口转发,那么这台设备接收到的数据包就会被转发给真正的目的设备。在这个过程中,客户端和默认网关都不会发现数据包在传输的过程中遭到了嗅探攻击。

除了这两种方法之外,市面上还有很多硬件可以选择。这类设备一般称为分线器(taps),可以部署在任意两台设备之间,对它们之间的流量进行嗅探和分析。虽然在有些场合中,使用这种方法来抓取流量效率很高,但这种方法只适用于可控的环境中,因为有些人会出于恶意在企业网络中用这种方法抓取数据包。

1.5.4 穿越路由器
在路由环境中,进行数据包分析最重要的一点是要把数据包分析软件部署在合理的位置,这样才能获取到管理员所需的信息。在路由环境中分析数据包对技术的要求相对比较高,有时管理员需要反复思考要在哪里部署协议分析软件。假设有下面这样一个包含3台路由器的路由环境。

路由器1、路由器2和路由器3处于同一个网络当中;每台路由器都连接了2~3台PC。其中路由器1充当根节点,同时控制其连接的节点(路由器2和路由器3)。路由器3的客户端不能连接到路由器1的客户端。要解决这个问题,这个机构的管理员将数据包分析软件部署在了路由器3所在的区域中。

过了一段时间之后,管理员收集到了不少数据包;但管理员仍然无法检测出网络中的异常情况。因此,他决定把数据包分析软件迁移到网络中的另一个区域。在将数据包分析软件移动到路由器1所在的区域之后,管理员可以看到很多自己之前就在寻找的有用数据流。这是一种移动协议分析软件的简单案例,移动协议分析软件所在的位置在某些场合对于解决问题很有帮助,因为把协议分析软件部署在网络架构中是一项相当重要的任务。

读到这里,希望读者已经了解到了Wireshark的使用方法。接下来介绍一下这款软件的GUI界面,以及如何初始化抓包的进程。

1.5.5 为什么要使用Wireshark
但愿我不是唯一一个因Wireshark在抓包时操作十分简便,而对这款软件深感着迷的人。下面简单介绍一下人们选择Wireshark这款软件来执行数据包分析的几大原因。

对用户友好:这一点对我们使用过的所有GUI界面都适用,它的标准是这个GUI界面中各个选项的呈现方式有多清晰、这些选项使用起来有多方便(我估计,即使是那些对于数据包分析一无所知的人,也可以在不加事先准备的前提下运用Wireshark进行抓包)。
强大稳定:Wireshark可以处理的信息量大得惊人;我说这句话的意思是,在显示网络中传输的数据包时,这类软件有可能会出现死机或者崩溃的情况(因为它需要每秒钟抓取并显示成千上万个数据包)。但Wireshark就不会出现这种情况——请给创建Wireshark这款软件的程序员报以热烈的掌声。
可用于各类平台:没错,这一点绝对值得一提。这款免费的软件可以安装在当今所有用于数据计算目的的平台上,包括基于Linux的系统、基于Windows的系统或者基于Macintosh的系统。
过滤功能:Wireshark提供了下面两类过滤方式。
选择抓取什么数据包(即抓取过滤)。
选择抓取后显示什么数据包(即显示过滤)。
成本:Wireshark是免费的,这款软件是由一个专门的社区进行开发和维护的。不过Wireshark也提供了一些付费的专业工具。读者如果希望了解详细信息,可以访问Wireshark的官方网站。
支持:Wireshark是由分布在全球范围内的一个贡献者小组来开发的。我们可以加入Wireshark的邮件列表或者通过GUI界面访问在线文档来寻求帮助;各类在线论坛是解决问题效率最高的平台。读者可以在Google上搜索paid Wireshark support来了解相关信息。
1.5.6 Wireshark的GUI界面
在开始讨论Wireshark的各类特性之前,先借这个机会来解释一下Wireshark的历史,以及这款软件的诞生。

Wireshark是在20世纪90年代末问世的。一位来自堪萨斯城的毕业生Combs研发出了Ethereal(Wireshark的基本版),在Combs做出这项伟大的发明时,他也找到了一份全职工作,于是他签订了一份正式的工作合同。当他在这个职位上工作了几年之后,Combs决定离职,他希望继续开发Ethereal这款软件,因为这是他的梦想。不幸的是,根据法律条款,Combs的发明也属于企业私有的软件。尽管如此,Combs还是选择了离职并继续开发Ethereal的新版本,他把新版的Ethereal命名为了Wireshark。从2006年开始,Wireshark就一直处于积极的开发状态,并且在世界范围内得到了广泛的应用。这款软件支持大量的协议(支持超过800种协议),这都是当今网络中使用相当广泛的协议。

安装的流程
读者在自己系统中安装Wireshark的流程如下。

1.在本书中,我使用的是一台Mac PC。如果读者使用的是其他系统平台,安装的流程也是一样的。在有些系统(如Kali Linux)中,会有一个预装的Wireshark版本。

2.所以,如果读者使用的是Macintosh,那么你要做的第一件事就是下载X11 Quartz(XQuartz-2.7.7),它可以模拟出一个运行Wireshark的环境(Windows系统的用户需要下载与处理器相兼容的版本)。

3.现在,我们就可以开始安装Wireshark了(Wireshark 1.12.6 Intel 64)。Wireshark的安装软件在本书前文中就已经要求读者下载了。

4.在这些软件安装成功后,需要重启计算机。

5.PC重新启动之后,需要启动Wireshark。一旦启动了数据包分析软件,读者会看到软件自己启动了X11服务器。无需理会,把它留在后台  即可。

6.一旦软件成功启动,读者就应该看到图1-6所示的界面。

在使用这个系统第一次抓取数据包之前,需要熟悉一下这款软件中可以使用的选项和菜单。

Wireshark的GUI界面分为6大部分,下面一一进行解释。

菜单栏(Menu Bar):这里会通过一种汇总的方式,显示应用(Applications)菜单中的工具。
主工具栏(Main Tool Bar):由使用频率最高的工具组成,这些工具可以提升软件的使用效率。
数据包列表面板(Packet List Pane):这个窗口会显示Wireshark抓取的全部数据包。
数据包详细信息面板(Packet Details Pane):这个窗口会显示与我们在数据包列表面板中所选数据包有关的详细信息。比如,我们可以按照自底向上(自链路层至应用层)的方式,查看不同通信协议的源IP地址和目的IP地址。与数据包有关的信息会按照协议的分类进行展示,这些内容可以展开,显示更多与所选数据包有关的详细信息。
字节面板(Bytes Pane):这个窗口会按照十六进制字节和对应的ASCII值来显示数据包中承载的数据。这个面板会将数据包以它们穿越线缆时的形式显示出来。
状态栏(Status Bar):这里会显示一些详细信息,包括软件抓取到的数据包总数。
下面的截图可以帮助读者熟悉应用界面中的各个窗格,在继续阅读本书之前,读者一定要保证自己已经对这些区域耳熟能详。

在工具栏中,我们可以看到一些有用的工具。下面对这些工具进行简单的说明。
:这个图标的作用是让用户选择要进行侦听的接口。
:管理员可以点击这个图标来自定义抓取数据包的流程。
:这3个图标的作用是启动/停止/再次启动抓包进程。
:这个图标的作用是打开一个之前保存的抓包文件。
:这个图标的作用是将当前抓包的结果保存为一个文件。
:这个图标的作用是重新载入当前的抓包文件。
:这个图标的作用是关闭当前的抓包文件。
:这个图标的作用是返回到最近一次查看的数据包。
:这个图标的作用是前进到最近一次查看的数据包。
:这个图标的作用是前往某个特定编号的数据包。
:这个图标的作用是打开/关闭自动给数据包标记颜色编码的操作。
:这个图标的作用是打开/关闭自动滚动的操作。
:这些图标的作用是放大、缩小和将大小恢复默认状态。
:这个图标的作用是根据需求来修改颜色编码。
:这个图标的作用是为抓包而缩小窗口。
:这个图标的作用是配置显示过滤策略,让软件只显示用户指定的内容。
在选择了抓包的接口之后,用户有时候在数据包列表面板中看不到任何数据包。造成这种现象的原因很多,其中包括下面几项:

接口连接的网络中没有任何流量;
穿越网络的数据包并不是以这台设备作为最终目的地;
用户没有将接口切换为杂合模式,或者这个接口无法切换为杂合模式。
在启动Wireshark应用之后,用户会看到类似于图1-7所示的界面。虽然这个界面乍看之下并不是特别有吸引力,但真正让这个界面魅力无穷的其实是流经软件的数据包。没错,我说的就是抓包这件事儿。

1.5.7 开启第一次抓包之旅
在学习了Wireshark的基本概念,看到了Wireshark的安装方式之后,估计读者应该已经对开始抓包跃跃欲试了。下面会按照开始抓包/停止抓包/保存文件的流程,带领读者完成人生中首次抓包之旅。
1.打开Wireshark应用。

2.选择要侦听的接口(见图1-8)。

3.在点击Start之前,我们可以点击Options按钮,这里可以让用户对抓包的进程进行一些自定义;不过在这里,我们会使用默认的配置。

要保证启动了promiscuous(杂合)模式(见图1-9),这样才能抓到那些并不是以这台设备作为最终目的地的数据包。

4.点击Start按钮启动抓包进程。

5.打开浏览器。

6.随便访问一个网站(见图1-10)。

7.回到Wireshark的界面;如果一切正常的话,此时读者应该在Wireshark GUI界面的数据包列表面板中看到了大量的数据包。

要想让软件停止抓包,只需要在工具栏中点击stop capture按钮或者在Capture菜单栏中点击Stop按钮(见图1-11)。

8.我知道这个界面提供的信息对于读者来说有点复杂,别担心,我来将这些信息化繁为简。
9.其实,数据包分析是指抓取到数据包(也就是进行数据包过滤)之后的工作。接下来,我会通过后面的章节详细介绍数据包过滤的方法。

10.现在,最后一步是将抓包的结果保存起来以备日后使用。

11.将文件用默认的.pcapng扩展名保存到文件夹中。
如果您从头至尾读完了上面的操作步骤,我希望您能够创建出自己的第一个抓包文件。

时间: 2024-10-27 11:40:54

《精通Wireshark》—第1章1.5节抓取信息的方式的相关文章

《精通Wireshark》—第2章2.2节抓包过滤器

2.2 抓包过滤器 抓包过滤器可以让管理员只抓取自己想要抓取的信息,同时丢弃其他的信息.抓包这个进程是一个处理器密集型任务,同时Wireshark也会占用大量的内存空间.所以,我们有时候需要保留一些资源以兹他用,这些资源可以用来进行数据包分析,有时候我们只想要抓取那些满足某些条件的数据包,同时丢弃其他的数据包. Wireshark可以让用户采用一些比较有意思的方法来对接口进行配置,让软件只抓取那些满足某些条件的数据包,这些条件需要在Capture Options窗口中进行配置,这个窗口的截图如图

《Nmap渗透测试指南》—第7章7.4节搜集E-mail信息

7.4 搜集E-mail信息表7.4所示为本章节所需Nmap命令表,表中加粗命令为本小节所需命令--搜集E-mail信息. E-mail是我们日常用的方便的通信工具,上一次Metasploit网站被黑客攻破的原因正是因为黑客向Metasploit管理员发送了一封邮件导致的,邮件可能包含恶意代码或者恶意程序.当然,这必须要正确地搜集到目标E-mail,本小节将演示如何有效搜集E-mail信息.操作步骤使用命令"map --script http-email-harvest 目标"即可进行

《Photoshop图像合成专业技法(修订版)》—第1章1.3节抠取头发

1.3 抠取头发Photoshop图像合成专业技法(修订版)一直以来,无论我是不是在教授Photoshop,总会有朋友问我一个问题"怎么才能在把一个人从一个背景转移到另一个背景的过程中让她的头发也保持完整?"好吧,你真的很幸运,如果你完成了前面的教程,你现在已经知道了其中的大多数技巧了.现在,我再为你介绍一个小工具专门来搞定头发. 步骤1打开这张照片,人物的衣服边缘还算是很整齐的,但她的头发看起来真的很蓬松. http://write.epubit.com.cn/api/storage

《精通Wireshark》目录—导读

版权精通Wireshark• 著 [印度] Charit Mishra 译 YESLAB工作室 责任编辑 傅道坤 • 人民邮电出版社出版发行 北京市丰台区成寿寺路11号 邮编 100164 电子邮件 315@ptpress.com.cn 网址 http://www.ptpress.com.cn • 读者服务热线:(010)81055410 反盗版热线:(010)81055315 版权声明精通WiresharkCopyright Packt Publishing 2016. First publi

《Wireshark网络分析实战》—第1章1.1节 Wireshark简介

第1章 Wireshark简介 Wireshark网络分析实战 本章涵盖以下内容: 安置Wireshark(主机/程序): 开始抓包: 配置启动窗口: 配置时间参数: 调整配色规则: 保存.打印及导出数据: 配置用户界面(点击EDIT菜单的Preferences菜单项,会弹出Preferences窗口.所谓配置用户界面,就是配置该窗口中User Interface配置选项里的内容): 配置协议参数(即配置Preferences窗口中Protocol配置选项里的内容). 1.1 Wireshark

《Wireshark网络分析实战》—第1章1.9节配置Preferences窗口中的Protocol选项

1.9 配置Preferences窗口中的Protocol选项 Wireshark网络分析实战 借助于Preferences窗口中的Protocol选项,可调整Wireshark对相关协议流量的抓取和呈现方式.本节会介绍如何借助Preferences窗口中的Protocol配置选项,来调整Wireshark对常见协议流量的抓取和呈现方式. 1.9.1 配置准备 1.点击Edit菜单中的Preferences菜单项,Preferences窗口会立刻弹出,如图1.29所示. 2.在Preferenc

《精通Wireshark》—第1章1.1节Wireshark简介

第1章 欢迎来到Wireshark数据包分析的世界精通Wireshark在这一章里,我们会介绍TCP/IP模型的基本概念,并在帮助读者熟悉Wireshark GUI界面的同时,向读者展示一个抓包的实例.在这一章中,读者会学到下列内容: 什么是Wireshark:Wireshark是怎么工作的:TCP/IP模型概述:数据包分析简介:为什么要使用Wireshark:理解Wireshark的GUI界面:第一次抓包.1.1 Wireshark简介Wireshark是最强大的抓包软件之一,这款软件不仅能让

《精通Wireshark》—第2章2.1节过滤器简介

第2章 用Wireshark过滤出我们需要的数据精通Wireshark本章会对Wireshark可以使用的不同过滤方式进行介绍,也就是如何抓取和显示我们使用的过滤配置.我们也会介绍如何创建和使用不同的配置文件.下面是我们在这一章中会进行介绍的内容: 抓包过滤器简介:使用抓包过滤器的原因与方法:实验操作--抓包过滤器:显示过滤器简介:使用显示过滤器的原因与方法:实验操作--显示过滤器:给流量标注颜色:创建新的Wireshark配置文件:实验操作--配置文件.希望读者已经作好了充份的准备,在接下来的

《精通Wireshark》—第1章1.4节通过Wireshark进行数据包分析

1.4 通过Wireshark进行数据包分析 数据包分析(也称为数据包嗅探或协议分析)的作用是抓取在网络(以太网或WiFi)传输中的数据包,并且对其中的信息进行解答的过程,其目的在于了解网络中正在发生的情况.数据包分析需要借助像Wireshark这样的协议分析软件来实现,这些软件可以在互联网上进行下载.其中有些软件是免费的,也有一些软件需要付费才能用于商业目的.在本书中,我们会使用Wireshark来进行网络分析.Wireshark是一款开源软件,同时也是互联网上最优秀的免费网络分析软件. 在当