什么是抓包(详细版)

什么是抓包?


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

抓包做什么?

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

  1. 分析数据传输协议。 
  2. 定位网络协议的问题。 
  3. 从数据包中获取想要的信息。 
  4. 将截取到的数据包进行修改,伪造,重发。

为什么抓包?


1.从功能测试角度,通过抓包查看隐藏字段

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

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

性能测试方面,性能测试其实就是大量模拟用户的请求,所以我们必须要知道请求中的协议内容和特点,才能更好的模拟用户请求,分析协议就需要用到抓包工具;接口测试方面,在接口测试时,虽然我们尽量要求有完善的接口文档。但很多时候接口文档不可能覆盖所有的情况,或者因为文档滞后,在接口测试过程中,还时需要借助抓包工具来辅助我们进行接口测试。

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

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

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

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

5. 通过抓包分析,可以更好的理解整个系统

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

最常⽤的⽹络抓包和分析⼯具:

(1)tcpdumpWireshark,那这两者有什么区别呢?

两者经常搭配使⽤,先⽤ tcpdump 命令在 Linux 服务器上抓包(保存成 .pcap 后缀格式的⽂件),接着把抓包的⽂件拖出到Windows 电脑后,⽤ Wireshark 可视化分析。

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值