转载请标明出处:http://blog.csdn.net/zhaoyanjun6/article/details/72823370
本文出自【赵彦军的博客】

1、什么是抓包?

不同主机之间的数据通信都是通过网络来进行传输,对那些在网络上传输的数据(发送、请求的数据)进行截获、编辑、转存等操作叫做抓包。抓包可以是抓取电脑端请求的数据,还可以抓取移动端(手机APP)的数据包。

2、为什么要进行抓包?

通过对网络上传输的数据进行抓取,可以对其进行分析,对于软件的Debug很大的帮助。当然也可以通过抓取用户发送的涉及用户名和密码的数据包来获取用户的密码。

3、能够进行抓包的技术原理是什么?

一般情况下,数据按照各种网络协议按照一定的格式在网络上进行传输,网络上传输的数据是以帧为单位,在对需要发送的数据进行包装的时候,会把数据的接收方、发送的的地址(MAC地址、IP地址等)一起进行包装并进行发送。根据发送方和接收方的地址,会有一条数据包的传输路径,在这条路径上,发送的数据包,会经过网络上很多台主机,标准的TCP/IP协议是这样处理的:当有数据经过主机时,主机会通过存放在数据包里面的地址来进行判断,这个数据包是否是发送自己的,如果不是发给自己的,主机就不会对它进行解析,简单的进行丢弃(转发)。如果是发送给自己的,那么主机就会对其进行解析和存储。

如果想要存储那些不是发送给自己的数据包,可以把网络适配卡设置为杂乱模式。这样它就会接收经过它的每一个数据包了。

4、常用的抓包工具有哪些?

Charles、mitmproxy、Fiddler、WireShark、TcpDump

5、常用的抓包工具对比

TcpDump

Android平台下的网络数据抓包工具,Android模拟器中自带 TcpDump 文件。用 TcpDump 对网络数据抓包,手机不用走代理——将网络数据包添加到 WireShark 中分析即可。

  • 缺点:

手机必须获取 root权限;
不能查看实时通信数据——因为抓取的是 dump出来的文件,而不能实时数据交互;
获取的数据很多,分析时需要过滤、只查看真正有用的信息。

WireShark

PC端截获、分析通过该网卡的所有网络通信的数据包(针对移动端时候,就要对移动端设置 代理服务器)强大的工具,完整查看网络中的每层、每个协议、每个数据包的详细组成信息;TCP、UDP、HTTP、HTTPS等协议的数据包均可获取;

  • 缺点:

获取的信息太多,需要手动过滤、进行分析。
只能查看,不能修改、重发送网络数据包。

Fiddler

HTTP协议的代理工具,抓取、分析电脑中所有进出该网卡、与网络进行数据交互的数据(针对移动端抓包时,需要设置代理服务器),主要针对的是 HTTP/HTTPS协议;能够清晰查看 数据包 中的内容——HTTPS中的数据包可以解密出来;简单易操作,选中后即可修改Response结果;所见即所得,修改后马上可以看到效果

  • 缺点:

只适用于一次请求,下次请求需要重新设定。

手动修改需要花费时间,如果程序等待超时,本次设定的Response结果失效


个人微信号:zhaoyanjun125 , 欢迎关注

Fiddler抓包使用教程-扫盲篇的更多相关文章

  1. Fiddler抓包使用教程-安装配置

    转载请标明出处:http://blog.csdn.net/zhaoyanjun6/article/details/72876628 本文出自[赵彦军的博客] Fiddler是什么? Fiddler是一 ...

  2. Fiddler抓包使用教程-过滤

    转载请标明出处:http://blog.csdn.net/zhaoyanjun6/article/details/72929800 本文出自[赵彦军的博客] Fiddler抓包可以完成我们移动开发者的 ...

  3. Fiddler抓包使用教程-会话图标

    转载请标明出处:http://blog.csdn.net/zhaoyanjun6/article/details/72933882 本文出自[赵彦军的博客] 使用fiddler抓包时,会看到左侧按照顺 ...

  4. fiddler抓包工具教程

    Fiddler是一个蛮好用的抓包工具,可以将网络传输发送与接受的数据包进行截获.重发.编辑.转存等操作.也可以用来检测网络安全.反正好处多多,举之不尽呀!当年学习的时候也蛮费劲,一些蛮实用隐藏的小功能 ...

  5. Fiddler抓包使用教程-Android应用抓包

    转载请标明出处:http://blog.csdn.net/zhaoyanjun6/article/details/74439165 本文出自[赵彦军的博客] Fiddler 也可以支持对手机应用进行 ...

  6. Fiddler抓包使用教程-模拟低速网络环境

    转载请标明出处:http://blog.csdn.net/zhaoyanjun6/article/details/73467267 本文出自[赵彦军的博客] 在无线测试中,网络测试是必不可少的环节,通 ...

  7. Fiddler抓包使用教程-Https

    转载请标明出处:http://blog.csdn.net/zhaoyanjun6/article/details/72956016 本文出自[赵彦军的博客] 开启 Https 抓包 Fiddler 默 ...

  8. Fiddler抓包使用教程-断点调试

    转载请标明出处:http://blog.csdn.net/zhaoyanjun6/article/details/62896784 本文出自[赵彦军的博客] Fiddler 里面的断点调试有2种方式. ...

  9. Fiddler抓包使用教程-QuickExec

    转载请标明出处:http://blog.csdn.net/zhaoyanjun6/article/details/73468287 本文出自[赵彦军的博客] 在 Fiddler 中自带了一个 Quic ...

随机推荐

  1. (转)30 个实例详解 TOP 命令

    原文:http://blog.jobbole.com/112873/?utm_source=blog Linux中的top命令显示系统上正在运行的进程.它是系统管理员最重要的工具之一.被广泛用于监视服 ...

  2. CentOs 7 安装Spark

    环境 centos7 hadoop 2.7.3 java 1.8 下载 http://spark.apache.org 解压到安装目录 可以自由选择,我安装到hadoop同一目录 配置 (cd spa ...

  3. OAuth 2.0 安全案例回顾

    原文:http://drops.wooyun.org/papers/598 0x00 背景 纵观账号互通发展史,可以发现OAuth比起其它协议(如OpenID)更流行的原因是,业务双方不仅要求账号本身 ...

  4. JDK7 异常的多重捕获

    Java 7之前的版本: 1 2 3 4 5 6 7 8 9 10 catch (IOException ex) {      logger.error(ex);      throw new MyE ...

  5. mysql命令行查看建表语句

    命令如下: SHOW CREATE TABLE tbl_name 例子: mysql> SHOW CREATE TABLE t\G . row ************************* ...

  6. CentOS6.5 QT5.3 找不到GLIBCXX3.4.15解决方法

    下载安装后 启动的时候提示 GLIBCXX_3.4.15,发现libstdc++.so.6的版本过, 在安装qt-creator的时候运行这个IDE就出现了这个问题,是由于libstdc++.so.6 ...

  7. Flux --> Redux --> Redux React 基础实例教程

    本文的目的很简单,介绍Redux相关概念用法 及其在React项目中的基本使用 假设你会一些ES6.会一些React.有看过Redux相关的文章,这篇入门小文应该能帮助你理一下相关的知识 一般来说,推 ...

  8. Oracle基础语句练习记录

    1.往scott的emp表插入一条记录 insert into scott.emp(empno,ename,job) values(9527,'EAST','SALESMAN'); 2.scott的e ...

  9. 【转】CSS选择器笔记

    作者: 阮一峰 日期: 2009年3月12日 来源:http://www.ruanyifeng.com/blog/2009/03/css_selectors.html 去年我学jQuery的时候,曾经 ...

  10. 从Spring-Session源码看Session机制的实现细节

    Re:从零开始的Spring Session(一) Re:从零开始的Spring Session(二) Re:从零开始的Spring Session(三) 去年我曾经写过几篇和 Spring Sess ...