zoukankan      html  css  js  c++  java
  • Charles抓包

    Charles——收费——需要破解(不用担心因为语言问题不会使用)可以抓取手机端的包,手机可以设置代理

    Charles是目前强大、流行的http抓包调试工具,MacUnixWindows各个平台都支持,其功能强大到包括:

    1. 支持SSL代理,可以截取分析SSL的请求

    2. 支持流量控制。可以模拟慢速网络以及等待时间(latency)较长的请求。

    3. 支持AJAX调试。可以自动将jsonxml数据格式化,方便查看。

    4. 支持AMF调试。可以将Flash Remoting Flex Remoting信息格式化,方便查看。

    5. 支持重发网络请求,方便后端调试。

    6. 支持修改网络请求参数。

    7. 支持网络请求的截获并动态修改。

    8. 检查HTMLCSSRSS内容是否符合W3C标准

     

    准备篇

     

     

    安装

     

    安装包解压 —— x64——charles安装——选择路径——安装——破解(原包Charles.jar复制到安装后的文件夹内)  ——汉化(安装包内有汉化补丁选择中文版本)

     

     

     

     

     

    电脑抓包

     

    1. 浏览器设置代理,在(设置——配置访问互联网的代理服务器,选择手动设置代理)浏览器设置了代理——代理服务器(Charles)——dns——服务器——返回代理服务器——浏览器
    2. 配置访问互联网的代理服务器,选择手动设置代理——http代理服务器ip地址(本机127.0.0.1)——端口号(Charles端口号,在Charles代理设置上会有)——勾选(为所有协议使用相同代理服务器)

      HTTPS包需要下载证书

      Charles——帮助——ssl代理——保存Charles根证书 选择路径必须是根目录下,不写名字,到保存路径下找到.pem的文件,再到浏览器——选项——查看证书——导入.Pem——下载证书弹窗,勾选信任再确认——确认

      Charles打开——代理——SSL代理设置——勾选启用SSL代理——添加—— 主机可不填(补贴写就是默认所有https请求),端口写443

      完成以上操作就可以进行HTTPS抓包了,一个证书可以在多个浏览器进行设置

      手机抓包

      1. 电脑防火墙要关闭,
      2. 手机和电脑要在同一个网络
      3. 设置手机代理(具体看手机截图)
      4. 电脑端Charles会收到链接请求(deny拒绝allow允许)如果上一步选择了拒绝,可以在Charles——代理——访问控制设置添加上手机的IP地址就行(允许的情况下打开访问控制设置时就已经存在手机IP地址)
      5. 手机抓https包:需要安装证书,手机浏览器输入chla.pro/ssl下载证书,对于高版本的ios,需要在设置-通用-关于本机-信任设置里,把证书设为信任
      6. 手机浏览器输入chla.pro/ssl下载证书

      7. ios需要设置

    3. 实战篇

      1、随便点开一个APP或浏览器,抓去它的请求。

      2、首先让我们先点下扫帚图标,清空之前记录。

      3、在手机上使用下拉刷新操作或者在电脑端进行请求发送,观察Charles反应,可以看到网络请求的地址和类型等数据。

      模拟弱网

      代理——节流设置

      不使用工具自带的配置的话可以自己填写各个参数的值

      配置参数解析:bandwidth —— 带宽,即上行、下行数据传输速度

      utilisation —— 带宽可用率,大部分modern是100%

      round-trip latency —— 第一个请求的时延,单位是ms。

      MTU —— 最大传输单元,即TCP包的最大size,可以更真实模拟TCP层,每次传输的分包情况

      Releability —— 指连接的可靠性。这里指的是10kb的可靠率。用于模拟网络不稳定。

      Stability —— 连接稳定性,也会影响带宽可用性。用于模拟移动网络,移动网络连接一般不可靠。

      面板上的小乌龟图标也可以开启或者关闭节流设置

       

       

      设置断点,篡改和伪造数据

      1、选择你要设置断点的接口

      2、右键选择 Breakpoints(断点)

      3、断点的相关配置, Proxy ——>Breakpoint Settings(代理-断点设置)

      4、双击刚刚已经设置的断点借口,进行设置

    4.  

    5. (1)把查询参数写“*”、(2)可修改请求(3)可修改响应

    6. 点击“确认”,重新再跑一下接口,当跑到设置断点的借口时,网页会暂停,这个时候charles进入断点

    7. 点击Edit Request(编辑请求) 修改请求参数。这里根据你要测试的数据来修改

       

       

      8、修改好参数后,点击Execute (执行)。 另外 Abort (中止), Cancel (取消)

       

      9、点击执行后,来到返回的页面,这个时候在Charles可以查看返回的数据。也可以对其进行修改,好了之后 点击 Execute

       

      10、这个时候页面就可以执行完成啦,可以看到 修改过后的请求返回是什么效果,达到测试的目的。

      高级重复

      1、找到想法测试的接口选中

      2、右键选择高级重复

      3、编辑想要迭代次数和并发的线程点击确定

     

     

  • 相关阅读:
    Convert、Parse、TryParse、(int)区别及可能引发性能问题
    重写、覆盖、重载、多态几个概念的区别分析
    计算机系统的硬件组成(转)
    如何选择Html.RenderPartial和Html.RenderAction
    位运算(转)
    Java程序员面试中的多线程问题
    请转到控制面板来配置或安装系统组件
    开篇
    DropDownList 不能有多个项被选定!
    有关rollup和cube的使用方法讨论
  • 原文地址:https://www.cnblogs.com/shianliyi/p/12624464.html
Copyright © 2011-2022 走看看