IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 开发测试 -> wireshark数据包分析学习笔记 -> 正文阅读

[开发测试]wireshark数据包分析学习笔记

数据表分析与网络基础

在计算机网络中,每天都可能发生成千上万、各式各样的问题,从简单的软件感染、到复杂的路由器配置错误,不一而定。我们不可能立即解决所有问题,而只能期盼充分的准备好相关的知识和工具,从而能够快速的响应各种类型的错误。

要真正理解网络问题,就需要进入数据包层次,所有的网络问题都源于数据包层次,数据表层次无任何秘密可言,当然加密通信除外,学数据包分析让我们能对网络有更好的控制,更快的解决问题。

数据包分析也叫协议分析,指的是捕获和解析网络上传输数据的过程,通常是为了解网络上正在发生的事情,分析过程通常由数据分析嗅探器来执行,而数据包嗅探器则是用于在网络媒介上捕获原始传输数据的工具。

流行的数据分析软件有:Wireshark、Omnipeekd(GUI软件)、Tcpdump(命令行程序)

数据表嗅探器选择要考虑:支持协议、用户友好性、费用、技术支持、操作系统支持;

嗅探器工作过程:

  1. 选择网卡收集二进制数据;
  2. 将二进制数据转换为可读数据;
  3. 对捕获和转换的数据进行真正的深入分析,嗅探器以捕获的网络数据作为输入,识别并验证协议,然后开始分析每个协议的特定属性;

如要理解数据包分析技术,就必须要理解网络通信原理,如OSI模型、网络基础知识及网络通信的硬件知识。

OSI模型:物理层-数据链路层-网络层-传输层-会话层-表示层-应用层;
常见协议类型:TCP、UDP、DHCP、ARP等.

监听网络线路

  1. 混杂模式:
    <1>、它是一种允许网卡能够查到所有流经网络线路数据包的驱动模式;
    <2>、一般而言,计算机只会处理有需要的网络流量,哪怕是广播报文,能收到但并不会处理,arp协议用来对给定IP地址解析对应的mac地址,为了找到对应的mac地址,arp协议会发送广播包给广播域的每个设备,然后期望正确的客户端做出回应,设备识别出数据包对于它们是否有用,无用则丢弃(这样的方式可极大提高网络处理效率,但对于数据分析并不友好)。
    <3>、目前的网络都能支持混杂模式,只需要安装wireshark软件即可,因软件包含了“libpcap/winpacp”驱动,在使用软件时,就直接将网络切换到混杂模式了。

  2. 端口镜像:
    <1>、端口镜像是在网络中捕获目标端口所有网络通信最简单的方法;
    <2>、交换机需支持端口镜像功能,并使用配置命令开启及配置端口镜像;
    <3>、端口镜像原理就是将交换机某个端口(或多个端口)的流量,复制一份到嗅探器主机的端口作分析;
    <4>、端口镜像缺点:在高吞吐环境下,使用端口镜像可能会影响交换机业务流量转发性能;还会造成不稳定的结果,并导致无法追踪的数据丢失,从而使数据分析并不完全准确,对于这种情况,建议使用分流器;

  3. 分流器:
    <1>、网络分流器是硬件设备,将其放置于网络设备的两个端点之间,来捕获两个设备的流量,它是专门为了网络分析而设计的特殊硬件;
    <2>、分流器分为两种:1、聚合网络分流器,2、非聚合的网络分流器,它们之间的区别在于聚合型有3个端口,非聚合型有4个端口(它有两个监听口,分别能监听流出和流入方向的流量,但需要嗅探主机有两张网卡);
    <3>、聚合性网络分流器:计算机连接端口“in”,交换机连接“out”,嗅探主机连接“monitor”;
    <4>、非聚合网络分流器:计算机连接端口“in”,交换机连接“out”,嗅探主机网卡1连接“monitor B”,网卡2连接“monitor B”;
    <5>、当然,网络分流器除了用于计算机与交换机之间,也可以用于交换机与路由器之间;

  4. ARP缓存污染(别名:ARP欺骗):
    <1>、谈ARP缓存污染前,需了解ARP的工作过程:每台主机都有一个ARP缓存表,以表示ip地址和mac地址之间的对应关系,在发起通信时,先检查arp表是否有对应IP地址的目的主机的mac地址,有,则直接发送,如果没有,就向本网段中发送arp报文,报文包含:源主机ip,源主机mac,目的主机ip;
    当本网络所有主机收到arp主机包时,先检查报文中的目的地址是否是自己的IP,如果是则从报文中取出源主机ip和Mac写入到ARP缓存列表,如果不是则丢弃,如果已经存在则覆盖,然后将自己的Mac地址写入ARP响应包告诉原主机;
    源主机收到ARP相应包后,将目的主机的ip和Mac写入ARP表,并利用此发送数据;
    如源主机一直未收到ARP响应包,则表示ARP查询失败(ARP请求为广播包,ARP响应则为单播包);
    <2>、在windows下打开cmd命令行工具,用arp -a列出主机所有arp缓存,arp -d清空缓存;
    <3>、ARP缓存污染是如何工作的:ARP缓存污染有时也被称为ARP欺骗,是一种在交换网络中监听流量的高级方法,它是通过发送包含虚假Mac地址的ARP消息,来劫持其它计算机的流量。
    <4>、ARP攻击一般为攻击者使用,这是一种进行监听的高级技术,也是dos攻击的一种,
    <5>、使用“Cain & Abel”软件包含ARP缓存污染的功能之一,使用软件之前需要知道分析器主机的IP,希望嗅探网络流量的主机IP以及上层路由器IP;

未完待续。。

  开发测试 最新文章
pytest系列——allure之生成测试报告(Wind
某大厂软件测试岗一面笔试题+二面问答题面试
iperf 学习笔记
关于Python中使用selenium八大定位方法
【软件测试】为什么提升不了?8年测试总结再
软件测试复习
PHP笔记-Smarty模板引擎的使用
C++Test使用入门
【Java】单元测试
Net core 3.x 获取客户端地址
上一篇文章      下一篇文章      查看所有文章
加:2022-02-26 12:01:59  更:2022-02-26 12:02:44 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/18 2:44:57-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码