纯原创,思路也是本人花了半个小时整理出来的,整个完成花费了本人半天时间,由于不才刚大学毕业,所以有的编码方面可能不入大牛们的眼,敬请原谅!如有转载请附上本地址,谢谢!

最近微信朋友圈刚刚被跳一跳血洗,新一轮的头脑王者又是给了我们一场风暴,之前的跳一跳外挂同事们也很满意(需要的评论),所以同事们这次又来坑我,看我没事做,让我制作一个头脑王者的外挂,我当时就在想这还不简单吗,直接获取分析发送过来的数据包,在伪造response给它好了啊,但是坑比的同事说这种挂已经被抓的很厉害了,机智的我只能换一种方式,一种又蠢又累的方式,但是却很安全!!!

首先,还是老套路,先抓取手机数据包,这里就以本人的ios11.2.2为例,安卓基本一样。

抓取数据包的工具Charles,大家最好下载最新的4.2.1,附上地址 https://www.charlesproxy.com/download/大家下载安装即可。

然后打开charles界面大家就会看见这样的界面!!

1.这时我们先将这个放一边,设置手机代理(设置代理的意义大概就是手机所获取和发送的数据包就会经过代理的服务器或者是硬件),我们将电脑设置为手机的代理,那么我们手机的数据包都能够被我们的电脑所捕获到。这里我们通过wifi进行代理。

(1)手机连上电脑的wifi

(2)进入wifi点击配置代理——>手动。服务器就是电脑的ip地址,端口号一般都是8888.

(3)这里配置好你就能在左边看到手机的数据包了,(不能看见的查看以上步骤),但是你会发现关于https的数据包基本都是unknown的,那是为什么呢,其实百度一下,你就能知道,https其实是加密的,较之http会更加安全,我去!这么坑啊,还加密,那我怎么看手机上的https数据包啊,现在大多数据包都是利用的https协议的啊,别急,这时候我们只要在手机端安装安全证书,被服务器识别出我们是安全的,那就没事啦!

(4)手机端安装安全证书,点击Help,选择SSL Proxying,再点击Install  charles root cerfiticate on a mobile sevice....这个选项,会弹出一个提示框

这是什么意思呢,他就是再说"你要先确保手机连上了设备,也就是电脑,再去chls.pro/ssl"网站dowload安装安全证书,天哪!这个提示太开心了吧,这简直是帮你做好了一切,还等什么,赶快用safari浏览器,(安卓任意浏览器),输入chls.pro/ssl,他会提示你安装一个东西,直接下一步,确定之类的一顿操作,安装完毕就行了,最后安装好在ios上是这样的

这时!如果你已经开始洋洋得意,觉得自己已经完成的时候,你会发现,其实你还是没有获取到数据包,哈哈哈哈哈!这时因为自从ios10.3开始你还要多一步设置,那就是!!下图所示,你需要打开设置,通用,关于本机,滑到最下面,有一个证书信任设置,打开我们的charles证书的信任即可

(5)最后一步,设置ssl的数据包的过滤,打开charles,点击proxy,选择proxy setting,勾选上enable transparent http proxying ,端口号8888

再选择SSL proxy setting 勾选enable SSL Proxying 并且add我们的过滤器,这边我们所有的数据包都想捕获,所以host和port都填写*号

(这一步我建议一上来就完成,因为其实我也忘了,这一步我是啥时候完成的QAQ,嘻嘻,别打我)

(6)最后如果也想捕捉电脑的https数据包的话,就也要在电脑安装安全证书,步骤就是点击Help——>SSL proxying——>选择Install  charles root cerfiticate

直接安装证书,下一步下一步下一步。。。。

只有在下图的时候注意选择安装位置是受信任的什么证书颁发机构的,就行了。。。

以上就是配置charles获取https协议的数据包的全过程,有问题的小朋友可以评论或者私我啊,(虽然私了我也不怎么看,虽然我也不知道博客园有没有私信的功能!!!)

2.如果以上完成的小童鞋,恭喜你,我们进入到了第二个步骤!就是利用之来制作头脑王者的答题辅助了,我们的思路也很简单,获取到头脑王者发送给我们的数据包,从而保存到本地,进一下利用代码读取本地数据,解析,保存到数据库,完成持久化,之后遇到相同的题目就查询,数据库没有的话就进行保存。

当然在做这些之前,我们得考虑一个问题,怎么用我们的所使用的的编程语言拿到charles的数据?虽然charles的用java做的但是我好像也没有找到某个接口,可以跟java实现数据的共通,那我们怎么把数据存到本地呢???

(1)分析我们的头脑王者的是哪个https发送过来的数据包。手机打开头脑王者就能容易发现到每次答题都会给我们发送一个findQuiz的数据包,每次答题完都会给我们一个choose数据包,就是这题的结果

我们所需要的也就是这两个数据包

(2)建立镜像。每次获取到的数据包,都会讲数据发送到镜像文件里,会把前一次的覆盖,具体操作选择tools,点击mirror。我的配置如下,你们可以自己改动

获取数据包的时候就能在我们choose save to 的文件夹位置就能看到这两个文件了

(3)接下来还要我教你们吗????哈哈哈数据都能搞到了还不while(true)去获取每次的题目和答案吗????建立用线程做去数据库检索的动作,不然while(true)里面出问题了出现堵塞可别怪我没提醒你哦。

本人用java和c#都做了一遍,效果基本一样的,只是java的稍微卡点。基本效果就是手机上面题目还没有出来,而电脑上已经获取到数据包并且显示题目了。

(4)获取到题目就去数据库里面检索一遍,如果有就取出答案,如果没有就保存进数据库,并且在每道题答完的时候去取出choose文件的正确答案进行存储。

最后的大致效果就是这样的!! 

由于刚开始题目基本都要自己搜集,偶尔才有这样的数据库有的问题他就显示答案啦QAQ,速度基本就是手机上题目还没出来,电脑上的题目已经显示了。好了打字好累了,大家再见QAQ,c#源码地址 http://download.csdn.net/download/china_zhangdapao/10213948

在公司打的字,整个制作过程半天,写这篇文章30分钟, 可能比较粗糙,程序也就是考虑了基本的异常,大家多多关照,文章中肯定有好多错别字,毕竟我是错别字大王,大家将就看看嘻嘻嘻

史上最全最强Charles截取手机https协议数据包教程(附上利用此技术制作最近微信比较火的头脑王者辅助外挂)!的更多相关文章

  1. [转]史上最全最强SpringMVC详细示例实战教程

    原文:http://www.cnblogs.com/sunniest/p/4555801.html?utm_source=tuicool&utm_medium=referral SpringM ...

  2. 史上最全最强SpringMVC详细示例实战教程

    一.SpringMVC基础入门,创建一个HelloWorld程序 1.首先,导入SpringMVC需要的jar包. 2.添加Web.xml配置文件中关于SpringMVC的配置 1 2 3 4 5 6 ...

  3. 转:史上最全最强SpringMVC详细示例实战教程

    一.SpringMVC基础入门,创建一个HelloWorld程序 1.首先,导入SpringMVC需要的jar包. 2.添加Web.xml配置文件中关于SpringMVC的配置 <!--conf ...

  4. 史上最全最强SpringMVC详细示例实战教程【good】

    1)Spring MVC 在调用处理方法之前,在请求线程中自动的创建一个隐含的模型对象. 2)调用所有方法级的 标注了 @ModelAttribute 的方法,并将方法返回值添加到隐含的模型对象中. ...

  5. 史上最全的用Python操控手机APP攻略!建议收藏!

    ​最近经常看到用Python操作手机APP的项目,例如抖音.闲鱼之类的,看完后发现这些项目无一例外需要部署ADB环境.至于什么是ADB,很多大神都讲过,只是写得比较专业,我等菜鸟看完还是云里雾里. ​ ...

  6. Redis分布式锁 (图解-秒懂-史上最全)

    文章很长,而且持续更新,建议收藏起来,慢慢读! 高并发 发烧友社群:疯狂创客圈(总入口) 奉上以下珍贵的学习资源: 疯狂创客圈 经典图书 : 极致经典 + 社群大片好评 < Java 高并发 三 ...

  7. Zookeeper 分布式锁 (图解+秒懂+史上最全)

    文章很长,而且持续更新,建议收藏起来,慢慢读! 高并发 发烧友社群:疯狂创客圈(总入口) 奉上以下珍贵的学习资源: 疯狂创客圈 经典图书 : 极致经典 + 社群大片好评 < Java 高并发 三 ...

  8. Java基础面试题(史上最全、持续更新、吐血推荐)

    文章很长,建议收藏起来,慢慢读! 疯狂创客圈为小伙伴奉上以下珍贵的学习资源: 疯狂创客圈 经典图书 : <Netty Zookeeper Redis 高并发实战> 面试必备 + 大厂必备 ...

  9. 史上最全的CSS hack方式一览

    做前端多年,虽然不是经常需要hack,但是我们经常会遇到各浏览器表现不一致的情况.基于此,某些情况我们会极不情愿的使用这个不太友好的方式来达到大家要求的页面表现.我个人是不太推荐使用hack的,要知道 ...

随机推荐

  1. 谈谈对Python的感想

    写在前面 我用Python已经好几年了,最早学习用Python还是因为对人工神经网络感兴趣,python有个很好用的ANN库neurolab.本人其实也算初学者,充其量算入门了吧,写这篇一来回顾自己所 ...

  2. Libevent源码分析 (1) hello-world

    Libevent源码分析 (1) hello-world ⑨月份接触了久闻大名的libevent,当时想读读源码,可是由于事情比较多一直没有时间,现在手头的东西基本告一段落了,我准备读读libeven ...

  3. [数据结构]C语言二叉树的实现

    树和图是数据结构中比较麻烦的东西,里面涉及的概念比较多,也最有用, 就比如一般树广泛应用于人工智能的博弈上,而基于图的广度优先和深度优先搜索也广泛应用于人工智能寻路上面 首先我们要把树进行分类: &g ...

  4. 仿知乎app登录界面(Material Design设计框架拿来就用的TexnInputLayout)

    在我脑子里还没有Material Design这种概念,就我个人而言,PC端应用扁平化设计必须成为首选,手当其冲的两款即时通讯旺旺和QQ早就完成UI扁平化的更新,然而客户端扁平化的设计本身就存在天生的 ...

  5. C#中&与&&的区别

    c#&是什么意思? 看过一些文章,关于这个的简单而容易被忽略的语法,说的总有点瑕疵. 贴代码15秒之内应该能知道c#中一个&和两个&&的区别,开始计数了........ ...

  6. Golang 中的坑 一

    Golang 中的坑 短变量声明  Short variable declarations 考虑如下代码: package main import ( "errors" " ...

  7. C#窗口传值(CSDN实例)

    //非模式窗体  相较独立From qform=new Form();       qform.Show(); //模式窗体  子依赖父Form qform=new Form();qform.Show ...

  8. Bash shell编程的语法知识点(1)

    Bash shell脚本编程知识点如下(初学,不全,欢迎讨论补充): shell简介 脚本的简单介绍 变量和引用 算术运算 交互式编程 选择判断 条件测试 循环 函数 shell简介 shell是一种 ...

  9. Win10 MySQL-python

    在Windows 下调试 Python 还是挺麻烦的.通过PyCharm 来安装个MySQL-python 的库都搞了大半天.分别尝试 1.2.3,1.2.4和1.2.5都有不同的错误.需要解决的问题 ...

  10. Python 数据科学系列 の Numpy、Series 和 DataFrame介绍

    本課主題 Numpy 的介绍和操作实战 Series 的介绍和操作实战 DataFrame 的介绍和操作实战 Numpy 的介绍和操作实战 numpy 是 Python 在数据计算领域里很常用的模块 ...