本文主要介绍如下内容:

1、Charles如何抓取HTTP报文

2、Charles如何抓取手机上的HTTP包

3、使用Charles篡改数据信息


一、Charles抓取HTTP包

1、Charles的安装

1、下载地址:官网http://www.charlesproxy.com下载

2、破解:Charles是收费软件,需要破解。破解方法是下载charles.jar替换原来的 jar包。

3、charles.jar下载地址:http://pan.baidu.com/s/1i3Qt24H(我下的charles版本为3.11.2)

ps:jar包对应的charles版本3.11.2 ,可网上搜取最新的

2、安装完成后打开Charles,默认打开之后就可以正常抓取数据报文

在浏览器中输入:http://bj.58.com/

然后Charles抓取到的报文如下图:

如果感觉请求太多,可以切换到Sequence窗口设置过滤条件进行查看必要的请求,如下图:

选中筛选出来的请求,然后选择相应的Request、Response选项,对该请求进行分析,如下图:


二、Charles抓取手机上的HTTP包

前提:手机和安装有Charles的PC要在同一个局域网内

1、选择Charles,对代理进行设置

Proxy>Proxy Setting,设置代理端口号为:8888(默认值),也可以修改为其他未占用的端口号

2、设置手机代理

选择手机的WiFi打开无线网设置界面,选择代理>手动,然后主机名填写Charles主机的IP,端口号为8888,如下图:

3、设置完成后,直接在手机上浏览网页,Charles即可抓取响应的HTTP请求,如下图:

注意:如果不在抓取手机的包,请取消代理的设置,不然会影响手机的正常上网


三、Charles篡改数据信息

以访问http://bj.58.com/ 为例

原理说明:

当访问http://bj.58.com/这个网址的时候,是client端发起HTTP请求到server服务端,然后server服务端在返回给client端相应的数据信息。

那么如果我们要篡改数据,那么我们需要在client与server端进行拦截,这样无论是client端发送的数据还是server端返回的数据这样我们就都可以看到了,然后就可以对其数据进行修改,那该如何拦截呢?看下面

1、先使用Charles抓取访问http://bj.58.com/访问的请求,如下图:

2、选择该请求,右键然后选择Breakpoints,相当于在该请求上打了一个断点,如下图:

也就是说当在此方位bj.58.com这个网址的时候,会被Charles进行拦截,

3、清除访问的数据,重新访问bj.58.com这个网址

我们发现界面会一直在转圈请求数据,这是看我们的Charles发现已经拦截到了访问58的请求数据,如下图:

在该界面我可以对其访问的请求方式和访问的URL进行修改,如下图:

这里我们不做任何修改,选择下面的Execute进行放过

4、放过后会发现服务器返回的数据也被我们拦截到了,如下图:

然后在该选项卡我们可以查看Headers、Cookie、和界面的一些信息;选择HTML,将其中的家教老师修改成;家教老师666666,如下图:

然后选择Execute进行放过

5、然后我们在看浏览器返回的界面,发现界面的数据已经被修改了,如下图:

注意:

使用完成后将添加的断点去掉,否则每次访问都会被Charles进行拦截。

Charles基本使用—http抓包、手机抓包、数据篡改的更多相关文章

  1. Fiddler怎样抓取手机的包

    Fiddler作为代理服务器,可以拦截到手机发出的请求,再经过Fiddler发送到服务器,获取到服务器响应的数据,这个过程,只要设置配置好了,使用过程不受影响. 要想抓取到手机的包,先要给手机设置一个 ...

  2. Android利用Fiddler进行网络数据抓包,手机抓包工具汇总

    Fiddler抓包工具 Fiddler抓包工具很好用的,它可以干嘛用呢,举个简单例子,当你浏览网页时,网页中有段视频非常好,但网站又不提供下载,用迅雷下载你又找不到下载地址,这个时候,Fiddler抓 ...

  3. Android利用Fiddler进行网络数据抓包,手机抓包工具汇总,使用mono运行filddler

    Fiddler抓包工具 Fiddler抓包工具很好用的,它可以干嘛用呢,举个简单例子,当你浏览网页时,网页中有段视频非常好,但网站又不提供下载,用迅雷下载你又找不到下载地址,这个时候,Fiddler抓 ...

  4. 使用Fiddler抓取手机上的数据包

    在IIS中,如果网站已经绑定了域名在使用IP是不能访问的,需要添加一个空的主机名与IP的映射才能访问.如下图: Fiddler抓取手机包 在PC上建一个WIFI热的 勾选Fiddler中Tool-&g ...

  5. Fiddler抓取手机APP程序数据包

    1.下载并安装Fiddler 下载地址:https://www.telerik.com/download/fiddler 2.设置Fiddler可监听远程通讯 前提条件:需要监听的手机和Fiddler ...

  6. Python3爬虫:利用Fidder抓取手机APP的数据

    1.什么是Fiddler? Fiddler是一个http协议调试代理工具,它能够记录并检查所有你的电脑和互联网之间的http通讯,设置断点,查看所有的“进出”Fiddler的数据(指cookie,ht ...

  7. fiddler抓取手机APP包相关的设置

    一.设置手机的代理服务器 1.前提:手机与电脑用的是同一个网络 2.fiddler设置允许远程连接,并设置好端口 3.查询电脑所在网络的ip地址(windows下,命令行窗口使用:ipconfig进行 ...

  8. 【原创】使用Fiddler抓取手机网络包

    一: 下载安装Fiddler 二: 打开 tools--Telerik Fiddler Options, 进行如下设置

  9. Python爬虫:抓取手机APP的数据

    摘要 大多数APP里面返回的是json格式数据,或者一堆加密过的数据 .这里以超级课程表APP为例,抓取超级课程表里用户发的话题. 1.抓取APP数据包 表单: 表单中包括了用户名和密码,当然都是加密 ...

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

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

随机推荐

  1. Linux压缩打包方法连载之三:bzip2, bzcat 命令

    Linux压缩打包方法有多种,本文集中讲解了bzip2, bzcat 命令的使用.案例说明,例如# 与 gzip 同样的,都是在计算压缩比的参数,-9 最佳,-1 最快. AD: 我们遇见Linux压 ...

  2. 2->集群架构主机优化流程

    集群架构优化流程: 有道笔记分享链接

  3. geoserver 启动闪退

    跟JDK版本有关: 比如geoserver2.11需要JDK版本为JDK1.8 windows配置两个jdk环境: 网上有方法,但如果只需要满足geoserver的话,可以只安装jdk(注意jdk和j ...

  4. python基础--re模块

    常用正则表达式符号 '.' 默认匹配除\n之外的任意一个字符,若指定flag DOTALL,则匹配任意字符,包括换行 '^' 匹配字符开头,若指定flags MULTILINE,这种也可以匹配上(r& ...

  5. dragstart drag dragend dragenter dragover dragleave drop

    dragstart drag dragend dragenter dragover dragleave drop   前端框架层出不穷,网页上的效果越来越绚丽,制作绚丽的效果的成本越来越低,其中有种拖 ...

  6. UVA10212 【The Last Non-zero Digit.】

    暴力可做!!!(十秒还不打暴力!!!)暴力算阶乘边算边取余上代码 #include<iostream> #define int long long //开long long using n ...

  7. (四)SpringMvc文件上传

    第一节:SpringMvc单文件上传 第二节:SpringMvc多文件上传

  8. SQLSERVER中的系统存储过程的使用的总结

    -----------------------------系统存储过程-------------------------------- --列出SQL Server实例中的数据库sp_database ...

  9. USACO 6.4 Wisconsin Squares

    Wisconsin Squares It's spring in Wisconsin and time to move the yearling calves to the yearling past ...

  10. 30:最小的K个数

    import java.util.ArrayList; import java.util.TreeSet; /** * 面试题30:最小的K个数 * 输入n个整数,找出其中最小的K个数.例如输入4,5 ...