第一章:抓包工具charles的使用

一.charles的工作原理

关于HTTPS,你需要知道的全部中,分析了HTTPS的安全通信过程,知道了HTTPS可以有效防止中间人攻击。但用过抓包工具的人都知道,比如Charles,Fiddler是可以抓取HTTPS请求并解密的,它们是如何做到的呢?

首先来看Charles官网对HTTPS代理的描述:

Charles can be used as a man-in-the-middle HTTPS proxy, enabling you to view in plain text the communication between web browser and SSL web server.`

Charles does this by becoming a man-in-the-middle. Instead of your browser seeing the server’s certificate, Charles dynamically generates a certificate for the server and signs it with its own root certificate (the Charles CA Certificate). Charles receives the server’s certificate, while your browser receives Charles’s certificate. Therefore you will see a security warning, indicating that the root authority is not trusted. If you add the Charles CA Certificate to your trusted certificates you will no longer see any warnings – see below for how to do this.

Charles作为一个“中间人代理”,当浏览器和服务器通信时,Charles接收服务器的证书,但动态生成一张证书发送给浏览器,也就是说Charles作为中间代理在浏览器和服务器之间通信,所以通信的数据可以被Charles拦截并解密。由于Charles更改了证书,浏览器校验不通过会给出安全警告,必须安装Charles的证书后才能进行正常访问。

下面来看具体的流程:


charles工作原理

1.客户端向服务器发起HTTPS请求

2.Charles拦截客户端的请求,伪装成客户端向服务器进行请求

3.服务器向“客户端”(实际上是Charles)返回服务器的CA证书

4.Charles拦截服务器的响应,获取服务器证书公钥,然后自己制作一张证书,将服务器证书替换后发送给客户端。(这一步,Charles拿到了服务器证书的公钥)

5.客户端接收到“服务器”(实际上是Charles)的证书后,生成一个对称密钥,用Charles的公钥加密,发送给“服务器”(Charles)

6.Charles拦截客户端的响应,用自己的私钥解密对称密钥,然后用服务器证书公钥加密,发送给服务器。(这一步,Charles拿到了对称密钥)

7.服务器用自己的私钥解密对称密钥,向“客户端”(Charles)发送响应

8.Charles拦截服务器的响应,替换成自己的证书后发送给客户端

9.至此,连接建立,Charles拿到了 服务器证书的公钥 和 客户端与服务器协商的对称密钥,之后就可以解密或者修改加密的报文了。

HTTPS抓包的原理还是挺简单的,简单来说,就是Charles作为“中间人代理”,拿到了 服务器证书公钥 和 HTTPS连接的对称密钥,前提是客户端选择信任并安装Charles的CA证书,否则客户端就会“报警”并中止连接。这样看来,HTTPS还是很安全的。

转自:https://www.jianshu.com/p/405f9d76f8c4

二.charles版本的安装

请参考官方网站:https://www.charlesproxy.com/download/previous-release/

其中v3.12.3可以抓取客户端安装完证书之后可以抓取https的请求,另外charle破解码可以网上百度搜索

最新版本v4.5.1暂时无法安装证书

三.pc端以及移动端证书的安装

1.pc端安装正式的遇到的问题:使用Charles代理工具导致电脑无法正常访问网站(您的连接不是私密连接)

解决方案:

很多开发者都需要使用代理工具来调试接口,查看数据等等,但是有时候发现打开代理工具之后,代理工具同时也拦截了电脑的所有网络请求,导致电脑访问网站时提示(您的连接不是私密连接)。。。

造成这种问题的原因就是charles等代理工具也拦截了电脑网页的请求,但是使用的是charles代理工具的证书,导致浏览器无法验证此网页的证书,进而导致了报错,那么该如何解决呢?我们只需要将charles的证书添加到电脑的信任证书中即可。

进入Charles的Help中,选择SSL Proxying,然后点击Install Charles Root Certificate。

此时我们的Charles证书是不被系统信任的,所以访问网站每回都会报证书问题,然后我们点击安装证书。

可以选择证书的安装位置,我选择的是本地计算机,所有用户都可以用,或者为了安全,也可以选择只给当前用户安装,那么别的windows用户就没有被安装此证书;

然后为证书选择存储位置,这里必须手动选择存储位置,否则自动选择出来的证书位置仍然是不被信任的。

然后点击浏览,我们手动指定证书的存储位置为“受信任的根证书颁发机构”。

然后点击确定,完成,此时再次进入安装证书的步骤,我们就发现Charles证书已经被系统信任。

此时,开着Charles再次访问网站,是不是已经可以正常访问了?如果还是报证书问题的话,试着重启一下电脑,重启之后就可以正常访

————————————————

版权声明:本文为CSDN博主「mengzhiyuan93」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。

原文链接:https://blog.csdn.net/mengzhiyuan93/article/details/74699032

2.移动端安装证书

Andriod一些版本安装完证书之后,抓取的https请求还是乱码展示

参考文章:https://jingyan.baidu.com/article/b2c186c80b1cb3c46ef6ffcc.html

oppo R15安装charels证书

参考文章:https://blog.csdn.net/plychoz/article/details/80832405

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 220,295评论 6 512
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 93,928评论 3 396
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 166,682评论 0 357
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 59,209评论 1 295
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 68,237评论 6 397
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,965评论 1 308
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,586评论 3 420
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,487评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 46,016评论 1 319
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 38,136评论 3 340
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 40,271评论 1 352
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,948评论 5 347
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,619评论 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 32,139评论 0 23
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,252评论 1 272
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,598评论 3 375
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 45,267评论 2 358

推荐阅读更多精彩内容

  • 客户端向服务器发起HTTPS请求 Charles拦截客户端的请求,伪装成客户端向服务器进行请求 服务器向“客户端”...
    IT卡农阅读 2,437评论 0 2
  • mitmproxy 如果你偏爱geek风,命令行,可以采用mitmproxy。在采用mitmproxy官网给出的安...
    Rangethan阅读 5,310评论 0 0
  • 类似Charles这样的抓包工具,对于高效程序员是必不可少的;本文不会介绍Charles的安装及使用,主要是浅显的...
    _小沫阅读 14,156评论 7 44
  • 来自公众号 : DeveloperPython 阅读本文需要7.66分钟 抓包 其实很多程序员都不陌生了,但是真正...
    xiyouMc阅读 13,713评论 8 100
  • [今天看到很多朋友都在传播一张图片,图中的条幅告诉女生要多喝热水,并且给出了参考文献(图1)。这引起了谷君的好奇。...
    DrDavidNC阅读 360评论 0 2