zoukankan      html  css  js  c++  java
  • fiddler

     
     

    fiddler抓包

    fiddler简介

    fiddler是位于客户端和服务器端的HTTP代理,目前最常用的http抓包工具之一,功能非常强大,是web调试的利器。

    1. 监控浏览器所有的http和https的流量
    2. 查看、分析请求内容细节
    3. 伪造客户端请求和服务器响应
    4. 测试网站的性能
    5. 解密https的web会话
    6. 全局、局部断点功能
    7. 第三方插件

    场景使用

    1. 接口调试、接口测试、线上环境调试、web性能分析
    2. 判断前后端bug、开发环境hosts配置、mock、弱网断网测试

    B/S架构

    1. 编写程序部署到web服务器
    2. web服务器运行在服务器上,绑定ip的地址并监听某端口,接收和处理http请求
    3. 客户端通过http协议获取服务器上的网页、文档等资源
    4. https://www.baidu.com/
      1. https    表示协议
      2. www.baidu.com    表示域名也就是主机,一般主机是一ip地址的形式出现,查询ip使用ping+域名
    5. 域名后面的内容是相关文档的地址

    Fiddler的代理问题

    1. 在打开IE和chrome的时候。使用Fiddler,默认会获取IE和chrome的系统代理
    2. 但是在使用Firefox的时候,需要配置系统代理    8888

    HTTP

    在使用Fiddler的时候,必须要掌握HTTP与HTTPS的相关内容,具体更详细的解释单独的将协议的内容列出来了。

    具体的详细解释内容单独列出HTTP协议的相关内容。

       

    FIddler菜单栏相关

    为了方便抓包,隐藏相关设置

      

    断点的使用

    为了在请求前请求后做动作,需要实现断点,红色部分点一下对请求前进行设置断点,在点一下对请求后进行设置断点,在点一下取消断点

      

    工具栏快捷键

    1. R表示重放
    2. shift+R进行多次重放
    3. del表示删除请求
    4. 选中需要留下的请求,shift+del删除以外的请求
    5. ctrl+x 删除所有的会话请求

    工具栏的使用

      

    1. go的使用    一般在进行请求前设置断点的时候,在使用工具go的时候,就会跳过直接进行下一步.
    2. decode的使用    一般在请求响应返回是一键进行解码
    3. any process的使用    选择抓取的程序,一般点击之后,再次点击需要抓取的程序,比如谷歌
    4. textwizard的使用    一款编码解码的神器,可以对数字进行MD5加密等等
    5. online的使用    可以查看本机主机的ip地址

    会话列表(也就是请求列表)

      

    1. #    http request的顺序,从1开始
    2. result    http响应的状态
    3. protocol    请求使用的协议
    4. host    请求地址的域名
    5. url    请求服务器路径和文件名,也包括get参数
    6. body    请求的大小,以byte为单位
    7. caching    请求的缓存过期时间或缓存控制和header等值
    8. content-type    请求响应的类型
    9. process    发出此请求的windows进程及进程id
    10. comments    用户通过脚本或者右键菜单给此session增加的备注
    11. custom    用户可以通过脚本设置的自定义值

    状态栏与Quick Exec(https://docs.telerik.com/fiddler/knowledgebase/quickexec)

      

    1.  黑色部分表示quick Exec,可以使用特殊方式,进行快速定位    比如:>1000  表示大于1000byte的会话请求
    2. capturing表示会话正在进行代理运行或者捕获会话,点击过后表示关闭代理或者关闭捕获会话

    Statistics统计分析

       

    Inspectors检查器

    fiddler抓包出现乱码解决方案

    1. 修改注册表
      1. windows按钮+R 

      2. 输入regedit  +回车+是

      3. HKEY_CURRENT_USERSoftwareMicrosoftFiddler2

      4. 右键新建,选字符串值  加上HeaderEncoding  然后值输入 ,GBK值设置为默认编码(GBK)。建议设成GB18030

    2. 在抓包之前点击工具栏中的Decode

     Inspectors页签的不同格式查看请求内容

    Inspectors 页签允许你用多种不同格式查看每个请求和响应的内容。Inspectors 页签分为上下两部分,上部显示的是发出的请求相关信息,下部显示的是接收的响应相关信息。

    请求Request部分详解
    1. Headers :显示客户端发送到服务器的 HTTP 请求的 header,显示为一个分级视图,包含了 Web 客户端信息、Cookie、传输状态等
    2. Textview : 显示 POST 请求的 body 部分为文本
    3. WebForms :显示请求的 GET 参数 和 POST body 内容,特别说明,这里的QueryString为url后接的内容;这里 body 为是 application/x-www-form-urlen-coded 格式
    4. HexView: 用十六进制数据显示请求
    5. Auth :显示 header 中的 Proxy-Authorization 和 Authorization 信息
    6. Cookies:显示请求的cookie信息 
    7. Raw :将整个请求显示为纯文本(用的较多)
    8. XML:如果请求的 body 是 XML 格式,就是用分级的 XML 树来显示它
     响应(Response) 部分详解
    1. Transformer :显示响应的编码信息
    2. Headers :用分级视图显示响应的 header
    3. TextView : 使用文本显示相应的 body
    4. ImageVies :如果请求是图片资源,显示响应的图片,左侧区域会显示图片的大小、宽高、文件格式等信息,在下方还可以选择缩放模式:自动缩放、缩放以适应显示区域大小、无缩放
    5. HexView : 用十六进制数据显示响应
    6. WebView :响应在 Web 浏览器中的预览效果
    7. Auth:显示响应 header 中的 Proxy-Authorization 和 Authorization 信息
    8. Caching : 显示此请求的缓存信息
    9.  Cookies:显示返回的cookie信息
    10. Raw : 将整个响应显示为纯文本
    11. JSON:返回的响应内容如果是一个json格式的,这里会显示
    12. XML:如果相应的 body 是 XML 格式,就是用分级的 XML 树来显示它

     AutoResponder自动响应器(需要掌握,再次刷新网页时使用ctrl+F5进行强制刷新)

    AutoResponder可用于拦截某一请求,进行如下操作:

    1. 重定向到本地的资源
    2. 使用fiddler的内置响应
    3. 自定义响应

     替换发出的请求

    目的是将发出的请求,替换为其他的请求或者本地图片等相关,钓鱼网站多用于此方法

      

    替换服务器返回的数据

    能够在发送请求之前就能够将数据替换

      

     Composer设计器(篡改数据,包括cookie,有些接口测试的样子)

      

     filters过滤器(过滤相关请求)

      

     断点

    全局断点(只需要进行设置)

      

     局部断点(需要输入命令)    结合设计器方便操作

    1. 使用bpu来对请求进行单个请求前断点,也就是局部断点    bpu+关键字(或者整个请求)
    2. 再次输入bpu取消局部请求前断点
    3. 使用bpafter对请求进行单个响应后断点,也就是局部断点     bpafter+关键字(或者整个请求)
    4. 再次输入bpafter取消局不响应后断点

    弱网测试

    1. 选择弱网设置

    2. 进行设定弱网条件

    3. 保存弱网条件设定

    抓取HTTPS以及安装证书

      

      

    手机抓包

    手机抓包前的准备设置

    1. 设置options→connections

      

    2. 查看本机ip(需要查找的是无线局域网适配器WLAN)

    3. Android手机安装证书(ios设置和Android设置基本一样)     前提条件就是手机和电脑处在同一个wifi下,一个证书对应一个ip,更换电脑后需要重新安装证书,在不能安装证书的情况下,有如下两种方法    操作方式:输入ip地址:8888

      1. 方法一:手机——设置——搜索【证书】二字——选择:安装证书或者证书管理:点击安装证书,在你的众多文件里面去选择刚刚下载的fiddler的证书,点击安装
      2. 方法二:在浏览器里面,直接打开已经下载的文件,安装即可,安装步骤是:先输入手机锁屏密码——后到上图为证书命名界面。

    4. ios手机安装证书    直接点击已下载的文件安装即可,安装文件成功后,需要在【设置——通用——关于本机——证书信任设置】开启证书信任。

    5. 设置代理    设置——无线网络(WLAN)——WLAN——长按已连接的WiFi 去修改网络——在高级选项里面——选择【手动代理】    输入服务器主机名(ip地址)和服务器端口

    6. 证书安装好后,查看已信任证书:具体位置在【安全——更多安全设置——加密和凭据——受信任的凭据】

     

  • 相关阅读:
    异常处理(throw,throws,try,catch,finally)
    内部类、匿名内部类、静态内部类
    Object,equals,toString
    有关于多态和静态绑定与动态绑定的知识
    接口的基本知识
    关于继承的基本知识,方法重写,final和abstract的使用, 动态绑定和静态绑定的知识
    设计模式: 单列设计模式 、模块方法设计模式、装饰设计模式、工厂设计模式、适配器设计模式
    zabbix设置维护周期
    zabbix入门
    yum安装zabbix 5.0 LTS
  • 原文地址:https://www.cnblogs.com/wp950416/p/12191211.html
Copyright © 2011-2022 走看看