zoukankan      html  css  js  c++  java
  • 抓包原理杂谈

    抓包原理

    目的
    了解抓包的工作原理,在合适的场景下选取合适的抓包工具
    一、抓包抓包,什么是包?
    互联网是一直被喻为信息高速公路,那高速公路上最小的单位就是小汽车,网络中叫
    Bit(比特),简写b。
    一辆一辆小汽车汇集成车水马龙,在网络中又叫比特流,流传输。
    那什么是包呢?疫情期间,我们的家乡对湖北同胞们进行援助,一辆车,两辆车,N辆 车,载着厚重的物资驶向了湖北各地。这些有着共同目标的车辆,简称援鄂车队。网络中也是把相同目标的比特集合称为数据包。也就是说,数据包就是我们发送的应用数据, 这个包,可大可小,甚至可以空(援鄂车队返航应该是空车回去的吧?)
    二、为什么要抓包?
    工作中经常性遇到BUG,但是这个BUG应该找前端?还是应该找后台?或者说这个BUG产生原因是什么?能否准对数据进行更深层次的测试?等等等等。。。抓包,可以拿到中间传输的数据,如果返回数据没错,还是有BUG,是不是
    可以初步判断是前端的BUG?如果返回数据就有错误,找后台同事吧,把具体的数据抛给研发,问他:你这个字段是不是没处理,还能不能干了?(应该会挨打吧, 根据关系来聊了啊);篡改前端字段信息,篡改订单金额信息,如果窜改后生效了? 问后台同事:请吃饭不?一点点,大杯谢谢。
    三、抓包原理
    至于这个抓包原理,本质上是我们在看传输中的数据。我将抓包原理分为有感和无感。
    有感就像疫情期间对我们体温,在公司内可能通过电子体温计进行查看体温
    (需要我们配合),对应的抓包工具就是Fiddler,Charles这样通过代理服务器的方式进行查看数据内容(需要配置代理,安装证书,被抓取那一方是需要一定操作的)
    无感就像要进商场的时候,通过红外摄像的方式进行查看体温(可以直接走过去,近乎于无感),对应的抓包工具就是Wireshark,tcudump,科莱数据分析这种直接对网卡数据进行抓取(由于是对网卡直接进行操作,上层应用不需要进行任

    何操作)
    四、工具比较
    Fiddler/Charles(代理) 共同点:

    1. 都是通过代理服务器的方式进行抓包
    2. 篡改数据
    3. 网络限速不同点:
      1.Fiddler只有Window环境,Charles有Window和MAC
      2.Fiddler支持自动响应功能,例如mock数据
      3.Fiddler报文显示是一条一条数据显示,Charles的显示是根据域名,然后路径,接口进行分层显示。这一点Charles比较适合没有接口文档的同学做接口测试。
      Wirshark/Tcpdump
      共同点:
      1.过滤命令几乎一致
      2.报文格式统一,tcpdump报文可以导出到wireshrak打开
      不同点:
      1.tcpdump工作在应用层,只能抓取应用层协议,wireshark工作在7层,任何一层数据都可以抓取
  • 相关阅读:
    杜教筛
    linux运维好书推荐:《高性能Linux服务器构建实战Ⅱ》热销中,附实例源码下载
    分布式监控系统ganglia配置文档
    基于Web应用的性能分析及优化案例
    一次Linux系统被攻击的分析过程
    Keepalived中Master和Backup角色选举策略
    linux运维好书《高性能Linux服务器构建实战Ⅱ》已出版发售,附封面照!
    并行分布式运维工具pdsh
    安全运维之:Linux系统账户和登录安全
    安全运维之:文件系统安全
  • 原文地址:https://www.cnblogs.com/Testking/p/12844986.html
Copyright © 2011-2022 走看看