本文参考:charles 抓包手机

charles经常会进行手机上的网页抓包,比如去copy别人网站图片或脚本的时候o(∩_∩)o ;

手机抓包的原理,和PC类似,手机依靠charles与服务端进行对话;

目标:把手机的网络委托给charles进行代理;

手机抓包设置,需要进行3步;

第一步,在charles里设置允许手机联网的权限;你需要把charles设置为允许的状态并且设置允许的端口号,这样手机端才能正常的接入;

第二步,把手机按照charles的IP和端口进行配置;

第三步,手机配对成功后,charles还会弹窗是否允许;(charles虽然开放了端口,但并不知道是那一台手机会配入,此窗口起到提示和安全防护的作用;)

上面的三步,有点类似HTTP的握手原理,双方都保证正常通信后,就可以愉快的玩耍了;

第一步:设置charles为允许状态,并设置好接入端口

在Charles的菜单栏上选择“Proxy”->“Proxy Settings”,填入代理端口8888(注意,这个端口不一定填写8888,也可以写别的端口,但是需要记住这个段扩,因为这里设置的允许接入的端口,手机端配置的时候需要用到),并且勾上”Enable transparent HTTP proxying” 就完成了在Charles上的设置。如下图;

需要找到charles的本机IP;

点击HTLP -> local IP Address 可以看到当前的本机IP地址;

当然,你也可以在终端打开查看,比如window,cmd下;输入ipconfig可以查看本机的IP

此时我们可以看到,charles允许手机接入的IP和端口是 192.168.0.103:8888

此时如果你手工在浏览器输入 这个HOST会发现charles会提示一个窗口问你是否允许接入;

第二部:把手机按照charles的IP和端口进行配置

手机链接wifi,wifi的HTTP代理选择手动那项(安卓类似)

在iPhone的 “设置”->“无线局域网“中,可以看到当前连接的wifi名,通过点击右边的详情键,可以看到当前连接上的wifi的详细信息,包括IP地址,子网掩码等信息。在其最底部有“HTTP代理”一项,我们将其切换成手动,然后填上Charles运行所在的电脑的IP,以及端口号8888

第三步,手机配对成功后,charles弹窗询问是否允许

设置好之后,我们打开iPhone上的任意需要网络通讯的程序,就可以看到Charles弹出iPhone请求连接的确认菜单

如上图的弹窗,点击允许即可;此时已经配对成功,开始愉快的抓包吧;

比如此时,访问zhubangbang.com

就可以电脑上就抓到访问的资源了;

因为本站用的是SSL,所以如果您的charles没有配置过,是抓取不到HTTPS这种加密协议的内容的;

如果需要抓取HTTPS网站的资源,请查看 Charles的HTTPS抓包方法及原理

注意:需要明白一个可能存在的弊端,如果你把手机的上网相关事情委托给了charles,那么当charles出错或者没有开启的时候,此时手机必定没有办法正常上网;这个一定要了解,因为很多人把手机的IP委托给charles进行代理后,第二天早晨上本的时候,手机wifi会默认链接你常用的高清度wifi;而此时的wifi的设置里面可能已经委托给charles了,但是此时电脑刚没有开charles或者重启后ip变动等;造成charles无法正常使用;由此而导致了无法上网的问题;

注意charles此种捕获方式,只能捕获发出请求的资源,如果是APP里,内部的代码和资源,因为没有向服务器发情请求,所以这是抓不到的;

判断是不是调用内部资源,你可以把手机的网络给断了,如果此时还可以正常的显示,说明该资源是写在APP内部的,通过代理的方式是抓不到的;

代理的原理详见“抓包工具Charles的使用教程”里面的原理图介绍;
本文参考:https://www.axihe.com/

charles 手机抓包设置的更多相关文章

  1. Charles手机抓包设置&无法打开火狐网页设置

    1. Charles抓取手机上的网络包,需要安装证书(Charles的和手机的) 操作方法: https://blog.csdn.net/lea__dongyang/article/details/7 ...

  2. Charles 手机抓包HTTPS设置以及证书安装

    本文参考:charles 抓包手机 charles经常会进行手机上的网页抓包,比如去copy别人网站图片或脚本的时候o(∩_∩)o : 手机抓包的原理,和PC类似,手机依靠charles与服务端进行对 ...

  3. Charles 手机抓包

    Charles 手机抓包 请求抓包对于程序员调试代码必不可少,Charles是一个用与抓包的好工具(也可以使用Fiddler),Charles抓包是通过中间人代理实现,在客户端和服务端通信时,Char ...

  4. Fiddler之常用操作(过滤器设置,代理设置,手机抓包设置,手机代理配置)

    记录下,工作中常用的一些设置和操作~ 1.过滤“脏”请求 两个下拉框的名词解释: A.内外网过滤 No Zone Filter:不分区域过滤(内网外网都显示) Show only Intranet H ...

  5. charles抓包工具的使用:手机抓包设置和安装证书

    一. 设置手机抓包 第一步:在charles里设置允许手机联网的权限,并设置接入接口 在Charles的菜单栏上选择"Proxy"->"Proxy Settings ...

  6. day2.jmeter简单压测,下载文件,Charles手机抓包准备

    一.压测 压测衡量一个系统的好坏:1.tps每秒钟处理的事物数,2.qps响应时间 添加聚合报告,更改线程组,运行接口请求 **添加压力机 1.首先确保都在同一网段 2.其他电脑要先启动jmeter- ...

  7. Charles手机抓包实用教程

    一.Charles官网下载链接:https://www.charlesproxy.com/download/ 二.抓包步骤: 1.安装Charles,并打开 2.电脑设置代理端口:打开charles- ...

  8. Charles手机抓包常见问题(各种常见坑)

    坑1.安装好charles后,浏览器搜索会显示不是秘密连接.如果需要搜索东西,请关闭charles

  9. Fiddler手机抓包设置

    前提条件:1).电脑需要安装Fiddler2).测试手机需要支持Wifi3).测试手机与电脑需要同一网络4).所测APP需支持代理 三.设置Fiddler 1.(1)电脑端打开安装好的的fiddler ...

随机推荐

  1. Vue + ElementUI的电商管理系统实例02 主页

    1.打开Element网站,找到主页需要的布局格式 修改Home.vue: <template> <el-container class="home-container&q ...

  2. Clean Code 代码检查清单

    注释: 不恰当的信息:注释只应该描述有关代码和设计的技术性信息. 废弃的注释:过时.无关或不正确的注释就是废弃的注释. 冗余注释:注释应该谈及代码自身没提到的东西 糟糕的注释:值得编写的注释,也值得好 ...

  3. java的ReentrantLock类详解

    ReentrantLock 能用于更精细化的加锁的Java类, 通过它能更清楚了解Java的锁机制 ReentrantLock 类的集成关系有点复杂, 既有内部类, 还有多重继承关系 类的定义 pub ...

  4. Redis 缓存问题及解决方案

    [相关概念] 缓存击穿:指的是一些热点数据过期,由于热点数据存在并发量大的特性,所以短时间内对数据库的造成很大的冲击,导致系统瘫痪.常见于例如微博系统中明星结婚或出轨时微博瘫痪的情况. 缓存雪崩:指的 ...

  5. 关于工作中.net转java遇到的一个远程调用传递重复参的问题。

    工作中遇到一个很奇怪的传参问题.之前.net使用的是一个List列表,列表中有几个重复的参数.列表中使用的model类是KeyValue. 我使用java模仿其写法,传递List和KeyValue.对 ...

  6. 创建线程的三种方式(Thread、Runnable、Callable)

    方式一:继承Thread类实现多线程: 1. 在Java中负责实现线程功能的类是java.lang.Thread 类. 2. 可以通过创建 Thread的实例来创建新的线程. 3. 每个线程都是通过某 ...

  7. Keras中图像维度介绍

    报错问题: ValueError: Negative dimension size caused by subtracting 5 from 1 for 'conv2d_1/convolution' ...

  8. docker 实践十一:docker 跨主机通讯

    在上一篇了解了关于 docker 的网络模型后,本篇就基于上一篇的基础来实现 docker 的跨主机通信. 注:环境为 CentOS7,docker 19.03. 本篇会尝试使用几种不同的方式来实现跨 ...

  9. AS3.0 位图翻转、旋转

    /* * * *-------------------------* * | *** 位图翻转.旋转 *** | * *-------------------------* * * 作 者:fengz ...

  10. 怎样获取iframe节点的window对象

    需要使用iframeElement.contentWindow;  var frame = document.getElementById('theFrame'); var frameWindow = ...