手把手教你认识wireshark



系列文章目录

        最近入职了一家企业,就是专门负责网络部分,wireshark对于网络开发同学们是相当重要,并且wireshark也就相当于网络开发同学们中的显微镜,一些病毒,木马的研究却少不了的工具。



一、为什么要学习wireshark工具?

        wireshark是一种网络抓包及分析工具,是网络分析人员手中的显微镜。       

        主要也就是解决一下几个问题

        1.网络通讯的真实内容?

        2.网络故障分析?

        3.程序网络接口分析?

        4.木马通讯数据内容?等等



二、学习wireshark的目的

  1. 为后期学习计算机网络通讯协议做准备
  2. 后期的所有涉及网络的问题都会用到它
  3. 跨平台性,降低学习好吃呢根本
  4. 作为其他抓包工具的后期分析软件

三、wireshark工作原理和功能模块

  1.wireshark 抓包原理

  1.网络原理:那种网络情况能够抓到包?

        网络 情况分成三种情况:本机环境,集线器环境,交换机环境

        本机环境:本机网卡进出的网络流量

        集线器环境:可以抓取同一个集线器网域下的所有物理机发送的数据包(集线器已淘汰)

        交换机环境:使用更多的(交换机环境下,两个主机通信的时候用的是mac表)

                1.端口镜像(SPAN):通过在交换机上把两个通信的主机的接口复制一份,然后本机的wireshark调成混杂模式,就可以抓取到两个电脑的数据流量。

混杂模式是指一台主机能够接受所有经过它的数据流,不论这个数据流的目的地址是不是它,它都会接受这个数据包。也就是说,混杂模式下,网卡会把所有的发往它的包全部都接收。在这种情况下,可以接收同一集线器局域网的所有数据

                2.ARP欺骗:通过cain&abel工具进行arp攻击是可以进行欺骗交换机,从而拿到其他主机通往的数据

                3.MAC泛洪:泛洪垃圾包,产生大量的MAC地址,把MAC地址表进行挤出去,然后本来发送MAC二的数据,就会发送到我们的主机

  2.底层原理:抓包的底层架构是什么?

                GTK1/2:图形化的处理工具,处理用户的输入输出显示

                Core  : 核心引擎,通过函数调用其他的插件和引擎,进行联动调度的功能

                wiretap: 格式支持引擎,从抓包文件中读取数据包,支持多种文件格式

                Capture:抓包引擎,利用libpacp从底层抓取网络数据包,能从不同类型的网络接口进行抓包

                WIN-/libcap :wireshark抓包依赖的库文件

  2.wireshark的功能模块

 2.wireshark协议转码

 

 因为HTTP协议底层实现是TCP所以可以转码成TCP协议进行数据分析,向QICQ协议就可以转码成UDP协议一样。

3.wireshark数据分析

可以指定分析那种协议的数据通过图标,表格等形式进行表示出来

四、如何抓取数据包?

        ​ 

         首先,需要设置过滤器,如果不设置过滤器也可以进行抓包,但是抓的包是所有协议的数据包,看起来回头很大滴!

       1.如何设置过滤器?

        

Capture Filters(捕获过滤器)

语法:<Protocal name>  <Direction> <Host(s)><value><Logical operations><Expression>

例子:
    1. tcp   src  port 443  :只抓取源端口是443的tcp数据
    2. not   arp            :不获取arp数据
    3. port  80             :获取端口80的数据,
    4. src 192.168.1.121 and port 233  :获取源ip是192.168.1.121端口是233的数据

1.<Protocal name> <Direction> <Host><value>  是为一个组或者叫一个表达式
2.<Logical operations> 是可以链接多个表达式的

<Protocal name>  <Direction> <Host(s)><value><Logical operations>
1.Protocal 可选值:ether,fddi,ip,arp,rarp,tcp,udp等。默认为全部协议

2.Direction 可选值:src,dst,src and dst, src or dst. 默认是src or dst

3.Host(s)  可选值:net ,port ,host,portange. 默认为host(有主机,网络,端口,端口范围等意思)

4.Logical 可选值:not ,and ,or  ;
    运算优先级: not 是最高优先级,  or  和 and具有相同的优先级
    运算顺序:从左到右

 五、如何展示过滤器?

   1.展示的首要问题:选择

Display Filters (展示过滤器)

语法:<Protocal>. <string1>. <string2>. <Comparison operator><value> <logical operators><experssions>
  
实例:
    1. tcp.port==80  展示端口是80的数据

    2. !arp          不展示ARP协议的数据

    3. ip.addr==192.168.1.111   只展示地址是有192.168.1.111的数据,不论来源还是目标地址

    4.(ip.dst == 42.156.152.144)and (ip.dst == 42.156.152.144)

六、wireshark保存抓包文件

        

 可以通过设置捕获->选项->输出 ,来保存什么格式的和捕获了多少数据,或者多少秒之后的数据

七、如何具体分析每个数据包?

可以自己添加列表项 

图中的time表示多少毫秒后抓到的数据包,也可以进行点对应的列选项,可以进行排序

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

悟道xn

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值