常用抓包工具

常见抓包工具

HTTP抓包工具:Fiddler、Charles、Firebug、开发者工具等等。。。

Chrome开发者工具简单演示

  1. 打开Chrome 浏览器,按下F12快捷打开Chrome开发者工具

  2. 点击Network 标签

  3. 勾选 Preserve log选项,确保页面刷新不会把已抓到的请求清空


    image.png
  4. 打开网站首页,输入登录名和密码,点击登录

  5. 查看开发者工具,可以找到如下图Login的请求接口


    image.png
  6. 查看Login 请求的详细信息
    请求方法:POST
    请求的URL:http://test.logwing.com/Home/Login
    请求参数格式:Content-Type: application/x-www-form-urlencoded
    请求参数:UserName=XXX&Password=XXXX&CheckCode=&Remember=false&LoginCheckCode=7119
    请求结果类型:Content-Type: application/json; charset=utf-8
    请求结果:

    image.png

    response

更多关于Chrome开发者工具帮助中文帮助文档可以参考:https://github.com/CN-Chrome-DevTools/CN-Chrome-DevTools

Fiddler

Chrome开发者工具依赖于Chrome浏览器,也只能抓取Chrome浏览器发起的请求,如果我们想获取所有程序发起的请求,我们就可以通过Fiddler来抓取。

简介

Fiddler(中文名称:小提琴)是一个HTTP的调试代理,以代理服务器的方式,监听系统的Http网络数据流动,Fiddler可以也可以让你检查所有的HTTP通讯,设置断点,以及Fiddle所有的“进出”的数据(我一般用来抓包),Fiddler还包含一个简单却功能强大的基于JScript .NET事件脚本子系统,它可以支持众多的HTTP调试任务。

工作原理

Fiddler是以代理WEB服务器的形式工作的,浏览器与服务器之间通过建立TCP连接以HTTP协议进行通信,浏览器默认通过自己发送HTTP请求到服务器,它使用代理地址:127.0.0.1, 端口:8888. 当Fiddler开启会自动设置代理, 退出的时候它会自动注销代理,这样就不会影响别的程序。不过如果Fiddler非正常退出,这时候因为Fiddler没有自动注销,会造成网页无法访问。解决的办法是重新启动下Fiddler。

工作原理.png

简介和原理摘录自:作者:daoyidao的文章https://www.jianshu.com/p/99b6b4cd273c

简单演示

抓取http请求

  1. 启动Fiddler。
  2. 点击Fiddler主界面右下角的监听程序,选择ie浏览器则该系统上所有的浏览器发起的http请求都将被抓取。


    image.png
  3. 打开chrome浏览器 ,打开官网首页,输入用户名密码登录。
  4. 查看Fiddler主面板,可以查看到Login请求。
  5. 查看Login请求的信息
    可以查看到跟Chrome插件查看到类似的信息。


    request\response

    请求参数

抓取https协议

  1. 打开Tools --> fiddler options...
  2. 点击HTTPS标签,做如下配置,期间会让你安装证书全部点击确定便可。


    image.png
  3. 使用同http

拦截请求

Fiddler除了能抓包外,还能拦截请求。 拦截请求是非常实用的一个操作,你可以把请求拦截,然后修改请求内容。

  1. 设置拦截方式,请求发送前或者请求发送后。


    image.png

1)before response。发送请求之后,但是Fiddler代理中转之前,这时可以修改请求的数据,可以简单理解为修改请求内容。
2)after response。服务器相应之后,但是在Fiddler将响应中转给客户端之前。这时可以修改响应的结果,可以简单理解为修改返回内容。
3)Disabled 未取消拦截

  1. 拦截请求
    2.1设置before response拦截方式,发起请求,这时会看到请求被拦截,修改请求参数点击 Run to Completion 则按修改后的请求发送


    image.png

2.2 设置after response拦截方式。 发起请求,这时会fiddler会看到接口返回的数据,修改返回的数据点击 Run to Completion 会看到接口返回的数据为你修改后的数据。


image.png

更多帮助

官方帮助文档:http://docs.telerik.com/fiddler/configure-fiddler/tasks/configurefiddler

推荐阅读更多精彩内容

  • 转载地址 image.png 前言 fiddler是一个很好的抓包工具,默认是抓http请求的,对于pc上的htt...
    菜菜编程阅读 8,499评论 0 17
  • 前言fiddler是一个很好的抓包工具,默认是抓http请求的,对于pc上的https请求,会提示网页不安全,这时...
    胖子爱猪蹄阅读 4,828评论 4 13
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 127,681评论 18 546
  • 用两张图告诉你,为什么你的 App 会卡顿? - Android - 掘金 Cover 有什么料? 从这篇文章中你...
    hw1212阅读 6,809评论 1 38
  • 福楼拜曾说过“世界上所有的小说都已经被十九世纪的小说家写尽了”,可见故事就像我们生活的环境,是可见的,是可以穷尽的...
    深见江阅读 189评论 0 1