常用的爆款抓包工具综合对比(选择最合适的抓包工具才是最重要的!)

article/2025/9/28 16:11:04

在处理IP网络的故障时,经常使用以太网抓包工具来查看和抓取IP网络上某些端口或某些网段的数据包,并对这些数据包进行分析,定位问题。

在 IMON项目里,使用抓包工具抓包进行分析的场景在EPG采集、引流模块和软终端监看模块,一般情况下EPG 采集和引流模块比较稳定,软终端监看还涉及SS5代理,这部分出问题的几率比较大,这是就有可能要现场维护人员抓包进行分析、排查、定位问题,确定是网络问题还是软件问题,如果是软件问题则要将抓回的包发给研发解决。

EPG 抓包可分为对鉴权过程、采集过程抓包验证,主要是通过通过抓包分析与IPTV 鉴 权服务器之间的TCP交互。

流媒体交互抓包可分为对组播、点播进行抓包,一般交互的协议分为IGMP、RTSP、RTMP等,组播一般是基于UDP的IGMP流,点播是基于RTP的RTSP流或基于TCP的RTMP流。

软终端抓包主要是抓取软终端与IPTV服务器交互、SS5与IPTV服务器交互的数据包,一般跟流媒体交互的报文协议差不多,也是分为组播IGMP 、点播 RTSP等协议,不过经过测试发现江苏的部分组播(可能是用户不同所致)发送的是RTSP的包。

Fiddler

Fiddler 是一个使用 C# 编写的 http 抓包工具。它使用灵活,功能强大,支持众多的 http 调试任务,是 web、移动应用的开发调试利器。所以 Fiddler 经常被运用在网络爬虫抓包、HTTP API 测试、手机抓包等场景。

推荐原因:

  • 操作简单,上手容易,学习成本低。
  • 能够抓取 HTTP/HTTPS 协议的数据包。
  • 支持伪造 CA 证书来欺骗浏览器和服务器,从而实现解密 HTTPS 数据包。
  • 不仅支持抓取 PC 浏览器的数据包,而且支持抓取手机数据包。
  • 支持设置“断点”,从而能够修改 HTTP 的请求头信息以及请求体的数据。

Charles

Fiddler 虽然强大且好用,但是不支持 Mac OS 系统。Charles 是 Fiddler 在 Mac 系统上的代替品。目前 Charles 算是 Mac 系统上最好用的抓包工具。它使用 Java 语言开发的,所以安装以及使用之前,要事先安装好 Java 环境。另外,它还支持 Windows、Linux 等操作系统。

推荐原因:

  • 同样操作简单,使用方便。
  • 支持捕获 HTTP/HTTPS 的数据包
  • 支持修改网络请求参数
  • 支持截获网络请求并动态修改
  • 支持流量控制。可以模拟慢速网络以及等待时间(latency)较长的请求。
  • 支持AJAX调试。可以自动将json或xml数据格式化,方便查看。

Wireshark

Wireshark 也可以在各个平台都可以安装使用,不过它的功能侧重点和 Charles&Fiddler 有所不同,它主要用来抓取网络中的所有协议的数据报文,对于分析网络协议以及网络问题方面非常专业!

Wireshark 工具的优点:

  • 可以选择特定的网卡进行流量的捕获,那么就只会抓取关心的网卡经过的数据,针对性很强;
  • 可以抓取所有协议的报文,并且抓取的报文可以完整的以 OSI 七层网络模型的格式显示,可以清晰的看到客户端和服务器之间每一个交互报文,以及每一个数据包的网络各层级的详细内容显示。所以,这个工具抓包非常适合学习和分析网络协议。
  • 提供了非常强大的过滤规则。Wireshark 可以提供捕获前过滤,也可以捕获后过滤,并且过滤规则非常详细,可以实现精度和细粒度非常高的包过滤;可以结合 TCPdump 使用,分析线上服务器(Linux 系统)下抓取的数据报文,定位线上问题。

Wireshark 工具的缺点:

  • 如果要灵活的使用它需要具备一定的网络基础,对于初学者有一定的难度;

  • 无法分析 https 数据包,由于 wireshark 是在链路层获取的数据包信息,所以获取到的 https 包是加密后的数据,因此无法分析包内容。当然,我们可以对 https 数据包进行解密, 但是操作具有一定的复杂度,可能要消耗很多时间。

BurpSuite

Burpsuite 工具也是基于 Java 语言开发的,所以它也可以跨各平台使用,包括Windows,MacOS 及 Linux 等系统平台。

Burpsuite 可以提供抓包功能,它的工作方式同样也是在浏览器和网站之间做了代理从而实现报文截取的;也能够修改数据内容并转发的功能;甚至还可以选择使用爬虫爬下网站相关的数据…

但是,它绝对不仅仅是一款抓包工具,它集成了很多实用的小工具可以完成更加强大的功能,比如 http 请求的转发、修改、扫描等。同时这些小工具之间还可以互相协作,在 BurpSuite 这个框架下进行定制的攻击和扫描方案。

所以这个工具很多功能测试的人员会使用它进行报文抓取和篡改数据,很多安全测试人员会借用它进行半自动的网络安全审计,开发人员也可以使用它的扫描工具进行网站压力测试与攻击测试,功能作用范围更加广泛。

不过它也有自己的缺点,就是不免费!每个用户一年的费用为 299$,使用成本相对来说有点高。

F12

F12 是众多抓包工具中最简单、最轻量级的,因为它是浏览器内置的开发者工具来提供捕获浏览器的数据报文的功能。它免安装,直接打开浏览器就可以直接使用,所有使用非常好上手,适合入门级别的新手学习。

它主要针对的是 HTTP 协议和 HTTPS 协议, 可以确认我们的网络数据包的一个状态, 通过分析请求和响应报文里面的内容, 分析出来请求数据和响应数据是否正确, 定位问题是前端问题还是后端问题。

而且 F12 作为浏览器的一部分,是数据收发的一端,抓取到的 HTTPs 报文是可以得到明文数据的;不过因为只能抓当前浏览器的收发报文,层次只能是在应用层 Http(s)协议,不能抓取其他的数据报文。

虽然 F12 抓包调试也能满足我们基本的测试工作需求,但是作用面和强大性和其他的抓包工具还是有一定差距的。

TCPdump

TCPdump 我上周发过一篇文章专门介绍过,这是专门作用于 Linux 命令行的抓包工具,它可以提供非常多的参数来对网络数据包进行过滤和定义。

而它抓取到的报文可以直接打印在 Linux 的命令行界面,也可以进行保存成文件,并用 Wireshark 工具打开进行更加细致的分析。

1、tcpdump 的选项介绍

  • a将网络地址和广播地址转变成名字;

  • d将匹配信息包的代码以人们能够理解的汇编格式给出;

  • dd将匹配信息包的代码以c 语言程序段的格式给出;

  • ddd将匹配信息包的代码以十进制的形式给出;

  • e在输出行打印出数据链路层的头部信息;

  • f将外部的Internet 地址以数字的形式打印出来;

  • i使标准输出变为缓冲型形式;

  • n不把网络地址转换成名字;

  • t在输出的每一行不打印时间戳;

  • v输出一个稍微详细的信息,例如在ip 包中可以包括ttl 和服务类型的信息;

  • vv输出详细的报文信息;

  • c在收到指定的包的数目后,tcpdump 就会停止;

  • F从指定的文件中读取表达式,忽略其它的表达式;

  • i指定监听的网络接口;

  • r从指定的文件中读取包(这些包一般通过-w 选项产生 );

  • w直接将包写入文件中,并不分析和打印出来;

  • T将监听到的包直接解释为指定的类型的报文,常见的类型有rpc (远程过程调用)和snmp(简单网络管理协议; )

Linux系统下测试

软终端在通过SS5代理服务器进行接入IPTV 环境时,可能需要到 SS5所在的代理服务器上去抓包,抓包方式就是通过TCPDUMP命令来抓取,一般我们把与IPTV网口相关的所有包都抓下来存为PCAP文件进行分析。

抓包命令为tcpdump -i eth1 -wxx.pcap,这样可以把抓过来的包保存到linux 服务器的用户登录当前文件夹下,然后通过SSH 传到本地进行分析,当然了也可以通过过滤规则抓包,详见TCPDUMP的常用命令。

总结

综上所述,测试可以用的抓包工具非常多,然而它们各有各的优势,也有对应的不足,所以根据自己的使用场景,选择最适合的抓包工具才是最重要的!
在这里插入图片描述
上面是我收集的一些视频资源包

对于软件测试的的朋友来说应该是最全面最完整的备战仓库了,为了更好地整理每个模块,我也参考了很多网上的优质博文和项目,力求不漏掉每一个知识点,很多朋友靠着这些内容进行复习,拿到了BATJ等大厂的offer,这个仓库也已经帮助了很多的软件测试的学习者,希望也能帮助到你!

关注我的微信公众号【程序员二黑】免费获取

如果你对软件测试、接口测试、自动化测试、面试经验交流感兴趣欢迎加入:软件测试技术群:785128166 里面有大牛分享学习经验


http://chatgpt.dhexx.cn/article/9lEP5K4T.shtml

相关文章

日常工作中常用的抓包工具都有哪些呢?

大家好,今天我们一起来聊聊,在我们的日常工作中都有哪些抓包工具呢?你们平时工作中都在哪一款工具呢?一起学习交流。 一、Wireshark 这款抓包工具目前是使用最多的,分析网络交互非常方便 二、Fiddler,多数是…

四大抓包神器,非常好用

开发者(KaiFaX) 面向全栈工程师的开发者 专注于前端、Java/Python/Go/PHP的技术社区 来源 | 网络 一、概述 无论是开发还是测试,在工作中经常会遇到需要抓包的时候。本篇主要介绍如何在各个平台下高效抓包。目前的抓包软件总体可以分为两类&a…

抓包工具:Fiddler下载、安装、使用 教程

文章目录 抓包工具:Fiddler下载、安装、使用 教程一、Fiddler 下载二、Fiddler 安装三、Fiddler 使用3、Statistics 请求的性能数据分析4、Inspectors 查看数据内容5、AutoResponder 允许拦截指定规则的请求6、Composer 自定义请求发送服务器7、Filters 请求过滤规则…

彩虹歌词-周杰伦

一、歌曲目录 图片来源于:图片来源超链接 二、歌词目录 [歌曲名称:彩虹] [歌曲原唱:周杰伦] [所属专辑:我很忙] [00:14.11]哪里有彩虹告诉我 [00:19.98]能不能把我的愿望还给我 [00:26.56]为什么天这么安静 [00:32.70]所有云都跑到我这里 [00:38.79] [00:39.11] […

css实现霓虹灯特效字体

在开始之前先了解外部字体的引入: vite中字体的引入方法(.otf字体等)如下: 1、在src下的assets文件夹下创建font文件夹,将下载好的字体包放到该文件夹下 2、在font文件夹下创建font.css文件,如果你用的是…

声音彩虹

今天傍晚,在中国科技馆测试完展品之后从北门出来,忽听得身后偌大的科技馆墙壁上一声声鸟鸣呼啸而过。回身张望,在 一声声啾啾过后,没有看到任何鸟类踪影。 大家点击上面音频可以听到鸟叫的特殊的Chirp声响,是频率从高到…

七彩虹将星x15xs 2022款 怎么样

七彩虹新款的将星X15 XS游戏笔记本正式上市,搭载了英特尔刚刚推出的第十二代酷睿移动版处理器以及NVIDIA RTX 30系显卡,性能有了新的提升。 将星X15-XS依然采用延续了雷震子IP,机器的外观设计非常有特点,苍劲有力的书法“将”字位…

《彩虹屁》快夸夸我!彩虹屁生成器

在线直达地址: https://chp.shadiao.app/ 彩虹屁生成器的工作原理很简单, 每次打开页面或点击按钮,都会生成一句彩虹屁 t027-chp 我渴望你,想和你产生更多的联系,要和你交换香气和灵魂。有时候觉得,你应该遇见一个比我更好的人,可…

HTML5+CSS3小实例:炫彩的发光字特效

前言: 今天我们向大家精选了一款HTML5CSS3文字特效,文字特效有超酷的动画类型,不多说,一起来看看。 描述: 这款文字特效既有倒影的效果,又有随机的颜色,看起来非常的炫酷。全文基于 HTML5CSS3 完…

动态彩虹渐变字效,靓仔,快拿去装逼

前置知识 background-clip: text background-clip属性规定背景的绘制区域。类似photoshop里的 剪贴蒙版 的概念–>(指定一个固定区域,区域的内容随意更换.) 在W3C标准的它有三个值:  **border-box | padding-box | content-box;**动字面上来理解 分别是 以盒边界来裁…

纯 CSS 制作的彩虹条纹文字

效果预览 按下右侧的“点击预览”按钮可以在当前页面预览,点击链接可以全屏预览。 https://codepen.io/comehope/pen/ELpRxj点击预览 可交互视频教程 此视频是可以交互的,你可以随时暂停视频,编辑视频中的代码。 请用 chrome, safari, e…

关于彩虹表的介绍

彩虹表 1.彩虹表产生背景 起初黑客们通过字典穷举的方法进行破解,这对简单的密码和简单的密码系统是可行的,但对于复杂的密码和密码系统,则会产生无穷大的字典。 哈希加密算法是不可逆的,也就是说无论是网站的数据库管理员还是获…

彩虹形成原理

彩虹形成原理 本文摘自书籍《有趣的透镜》对于彩虹形成原理的探索,先从折射引起的散射开始吧!最先解释了彩虹发生的基本原理的是,前面提到的笛卡儿和牛顿。 笛卡儿–光的折射 笛卡儿提到了光的折射,在笛卡儿斯涅尔定律中提到:入射…

Js实现彩虹文字

在文本框中输入文字&#xff0c;点击提交按钮或按回车键Ctrl键实现将文字添加在页面上&#xff0c;并采用彩虹颜色的形式 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta http-equiv"X-UA-Compatib…

ps入门第6天_ps渐变字_彩色字 案例:彩虹桥or彩虹字特效

1、获得文字图层&#xff0c;形成文字选区 按住ctrl&#xff0c;同时点击文字图层的T。 2、新建一个图层 文字图层不是一个像素图层&#xff0c;不能编辑&#xff0c;所以要新建一个图层 3、添加渐变色 选择七彩色&#xff0c;然后点击确定&#xff0c;关闭渐变编辑器。 然后…

彩虹

彩虹 该程序是 EasyX 帮助中带的范例程序。略作修改 执行效果如下&#xff1a; 完整源代码如下&#xff1a; // 程序名称&#xff1a;彩虹 // 编译环境&#xff1a;Visual Studio 2013&#xff0c;EasyX 2017-9-19 // 最后更新&#xff1a;2018-12-8 // #include <grap…

Python绘制彩虹

彩虹 1. 列表&#xff08;颜色盒子&#xff09;1.1 概述1.2 颜色盒子使用方法 2. 坐标移动2.1 setx( )2.2 sety( ) 3. 绘制彩虹3.1 彩虹形状3.2 彩虹线条 4. 完整代码5. 颜色跑道 1. 列表&#xff08;颜色盒子&#xff09; 1.1 概述 1.2 颜色盒子使用方法 from turtle impor…

彩虹表(rainbow table)

1 彩虹表引入 在看微众银行开源的WeIdentity规范中的可验证凭证Credential数据结构时&#xff0c;看到有关于防止彩虹表方式反向破解哈希的问题&#xff0c;如下图所示。 在执行选择性披露用户的信息时&#xff0c;是将claim中的其他字段内容进行hash&#xff0c;只披露其中某…

【每日一练】64—CSS实现彩虹文字的动画效果

写在前面 最近有好几个小伙伴来问我&#xff0c;说【每日一练】里的gif动画是用什么软件录制的&#xff0c;在这里&#xff0c;我统一说一下&#xff0c;我录gif动画的工具是&#xff0c;LICEcap&#xff0c;录出来的文件&#xff0c;是默认为gif格式的。 在这里&#xff0c;我…

UGUI之Text彩虹字

博客迁移 个人博客站点&#xff0c;欢迎访问&#xff0c;www.jiingfengji.tech UGUI之Text彩虹字 脚本Rainbow直接挂在Text下 使得每个字母或者汉字均为一种随机颜色 Rainbow脚本如下&#xff1a; using UnityEngine; using System.Collections; using UnityEngine.UI; usi…