抓包是什么?我们为什么要抓包?

一、什么是抓包?
抓包(packet capture)就是将网络传输发送与接收的数据包进行截获、重发、编辑、转存等操作,也用来检查网络安全。抓包也经常被用来进行数据截取等。

二、抓包做什么?
不管做什么事情,首先要有明确的目的,其次是要清除能力的范畴,最后是要有清晰的思路。原始数据——过滤——分析,这时数据处理的基本套路,抓包的目的就是为了获取想要的原始数据,拿到数据以后,我们就可以做以下一些事情:

分析数据传输协议。

定位网络协议的问题。

从数据包中获取想要的信息。

将截取到的数据包进行修改,伪造,重发。

三、为什么抓包?
1、从功能测试角度,通过抓包查看隐藏字段

web表单中会有很多隐藏的字段,这些隐藏字段都有一些特殊的用途,比如收集用户的数据,预防CRSF攻击,防网络爬虫,以及一些其他用途。这些隐藏字段在界面上都看不到,如果想检测这些字段,就必须要使用抓包工具。

2、通过抓包工具了解协议内容,方便开展接口和性能测试

性能测试方面,性能测试其实就是大量模拟用户的请求,所以我们必须要知道请求中的协议内容和特点,才能更好的模拟用户请求,分析协议就需要用到抓包工具;

接口测试方面,在接口测试时,虽然我们尽量要求有完善的接口文档。但很多时候接口文档不可能覆盖所有的情况,或者因为文档滞后,在接口测试过程中,还是需要借助抓包工具来辅助我们进行接口测试。

3、需要通过抓包工具,检查数据加密

安全测试方面,我们需要检查敏感数据在传输过程中是否加密,也需要借助抓包工具才能检查。

4、处理前后端bug归属之争

在我们提交Bug的时候,经常会出现前端(客户端展示)和后端(服务端的逻辑)的争议,那么可以通过抓包工具,确定是数据传递问题还是前端显示问题,如果抓出来的数据就有问题的话,那么一般是后端的问题;如果抓取出来的数据是正确的,那么基本上可以判断是前端问题。

四、抓包的抓用?
通过抓包分析,可以更好的理解整个系统。

经常使用抓包工具辅助测试,可以很好的了解整个系统,比如数据传输过程前后端的关系,以及整个系统的结构。特别是对现在的微服务架构的产品,抓包能够更好的梳理和掌握整个系统各个服务之间的关系,大大增加测试的覆盖度。另外还可以增进对代码、HTTP协议方面知识的理解。

五、常用抓包工具
1、httpwatch

httpwatch与IE和Firefox浏览器集成,但不支持chrome;httpwatch界面清晰直观,发送请求后可以快速简单的查看cookies、headers、Query Strings and data,能够通过页面分组处理多页面场景。

2、Fiddler

Fiddler是一个独立的应用,可以调试PC、Mac、Linux、移动设备的之间的通信,支持大部分框架,如Java、.net、Ruby,需要设置代理。

3、wireshark

wireshark是一款专业的通过抓取网络数据包进行网络监测,网络协议分析工具,可以实时监测网络传输数据,全面透视整个网络的动态信息。

4、firebug

Firebug是Firefox下的一个扩展,它除了能进行网络分析还能够调试所有网站语言,如js、HTML、css等,支持各种浏览器如IE、Firefox、opera、safari。​

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

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

相关文章

3.8_理解代码(3)

fliplr函数 其中fliplr函数为flip array left to right,此处fliplr(i)的输出结果为[4 3 2 1] 我的代码实验 area1 fill(i,u_up(i),cyan,FaceAlpha,0.3);把我都弄得无语了,就实现fill怎么这么难 真是不知道向量长度哪里不同,知道了哈哈 终于…

[Java安全入门]三.CC1链

1.前言 Apache Commons Collections是一个扩展了Java标准库里的Collection结构的第三方基础库,它提供了很多强大的数据结构类型和实现了各种集合工具类。Commons Collections触发反序列化漏洞构造的链叫做cc链,构造方式多种,这里先学习cc1链…

python使用国内镜像源

使用格式 格式为:pip install 库名 -i 镜像地址(注意空格的存在) pip install pandas -i https://pypi.tuna.tsinghua.edu.cn/simple 推荐的镜像源: 清华大学(推荐):https://pypi.tuna.tsing…

知识文档管理系统平台:企业管理的王炸

无论是企业内部的文件共享,还是团队之间的协作编辑,知识文档管理系统都能发挥巨大的作用。它帮助企业整理、存储和查找各种文档资料,这不仅能提高企业的工作效率,还能增强企业的竞争力。今天就跟着LookLook同学一起来深入了解知识…

仿牛客项目Day6:账号设置——检查登录状态

账号设置 这个功能主要就是上传头像 在账户设置页可以点击上传头像,然后在首页可以改变头像(获取头像) 访问账号设置页面 controller getSettingPage的方法就是返回html页面 前端 改一下setting页面,index账号设置的url就可…

uView Toast 消息提示

Toast 组件主要用于消息通知、加载提示、操作结果提示等醒目提示效果&#xff0c;我们为其提供了多种丰富的API。 注意&#xff1a; 由于uni中无法通过js创建元素&#xff0c;所以需要在页面中调用<toast />组件&#xff0c;再通过ref开启 #平台差异说明 App&#xf…

代码随想录算法训练营第五十八天 739. 每日温度、 496.下一个更大元素 I

代码随想录算法训练营第五十八天 | 739. 每日温度、 496.下一个更大元素 I 739. 每日温度 题目链接&#xff1a;739. 每日温度 - 力扣&#xff08;LeetCode&#xff09; 情况一&#xff1a;当前遍历的元素T[i]小于栈顶元素T[st.top()]的情况 此时满足递增栈&#xff08;栈头…

安卓 修改系统时间

安卓 修改系统时间 参考资料实践修改 参考资料 链接&#xff1a;Android App 设置系统时间&#xff0c;语言和时区、系统重启_android断电重启后设置系统时间的类在哪-CSDN博客链接&#xff1a;【Android 应用】简单实测可行的获取NTP时间实例_android ntp地址-CSDN博客 实践…

ARMv8架构特殊寄存器介绍-1

1&#xff0c;ELR寄存器&#xff08;Exception Link Register &#xff09; The Exception Link Register holds the exception return address。 异常链接寄存器保存异常返回地址。最常用也很重要。 2&#xff0c;SPSR&#xff08;Saved Process Status Register&#xff09;…

react hook: useId

在 React 中直接编写 ID 并不是一个好的习惯。一个组件可能会在页面上渲染多次&#xff0c;但是 ID 必须是唯一的&#xff01;不要使用自己编写的 ID&#xff0c;而是使用 useId 生成唯一的 ID。 现在&#xff0c;即使 PasswordField 多次出现在屏幕上&#xff0c;生成的 ID 并…

Java中实现双向链表

一、目标 最近项目中实现双向链表&#xff0c;同时转为满二叉树。 二、代码 用java实现双向链表的代码如下&#xff1a; class TreeNode {int val;TreeNode left;TreeNode right;TreeNode(int x) { val x; } }public class FullBinaryTree {public TreeNode createTree(int[…

TypeScript 哲学 - Generic 和 ts表示构造函数

ts中 类的二义性 &#xff1a;做类型 和作为构造函数

基于PHP的店家服务与管理交互平台

目 录 摘 要 I Abstract II 引 言 1 1相关技术 3 1.1 PHP 3 1.2 ThinkPHP框架 3 1.2.1 Struts结构 3 1.2.2 MVC 3 1.2 Tomcat服务器 3 1.3 MySQL数据库 3 1.4 LayUI框架 4 1.5 ECharts 4 1.6 本章小结 4 2 系统分析 5 2.1 功能需求 5 2.2 用例分析 6 2.3 非功能需求 8 2.4 本章…

Vue3全家桶 - Vue3 - 【8】模板引用【ref】(访问模板引用 + v-for中的模板引用 + 组件上的ref)

模板引用【ref】 Vue3官网-模板引用&#xff1b;如果我们需要直接访问组件中的底层DOM元素&#xff0c;可使用vue提供特殊的ref属性来访问&#xff1b; 一、 访问模板引用 在视图元素上采用ref属性来设置需要访问的DOM元素&#xff1a; 该 ref 属性可采用 字符串 值的执行设…

PostgreSQL教程(三十九):客户端接口(三)之 信息模式

信息模式由一组视图构成&#xff0c;它们包含定义在当前数据库中对象的信息。信息模式以 SQL 标准定义&#xff0c;因此能够被移植并且保持稳定 — 系统目录则不同&#xff0c;它们是与PostgreSQL相关的并且是为了实现的考虑而建模的。不过&#xff0c;信息模式视图不包含与Pos…

RabbitMQ - 02 - 基本消息模型

目录 部署demo项目 什么是基本消息模型 实现基本消息模型 部署demo项目 首先配置好一个mq的练习demo,并配置好相关依赖 链接&#xff1a;https://pan.baidu.com/s/1oXAqgoz9Y_5V7YxC_rLa-Q?pwdv2sg 提取码&#xff1a;v2sg 如图 父xml文件已经配置好了 AMQP依赖了 什么…

js如何使多个接口串行访问,并行访问

可以使用async/await来保证多个接口串行访问。async/await提供了一种更清晰的方式来写异步代码&#xff0c;它会在等待一个异步操作完成之后再继续执行 async function fn(urls){ for(let i of urls){ let resawait $.fetch(i) } } fn([http://baidu.com,http://baidu.…

计算机408炸了给25考研人的几点警示

25年408考研&#xff0c;如果只用王道的复习资料&#xff0c;最多考100-120分 就是这么的现实&#xff0c;王道的资料虽然好&#xff0c;但是并不能覆盖全部的知识点和考点&#xff0c;而且24年的408真题考的很怪&#xff0c;总结起来就是下面这些特点&#xff1a; 偏&#xff…

安装PyTorch详细过程

安装anaconda 登录anaconda的官网下载&#xff0c;anaconda是一个集成的工具软件不需要我们再次下载。anaconda官网 跳转到这个页面如果你的Python版本正好是3.8版&#xff0c;那便可以直接根据系统去选择自己相应的下载版本就可以了。 但是如果你的Python版本号不是当前页面…

seata入门到实战三

seata datasourceProxy connectionProxy statementProxy和PreparedStatementProxy abstractStatementProxy SqlRecognizer Executor AT模式二阶段提交 一阶段 二阶段提交 全部事务执行成功 释放锁 提交并删除undo日志 二阶段回滚