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

最近微信朋友圈刚刚被跳一跳血洗,新一轮的头脑王者又是给了我们一场风暴,之前的跳一跳外挂同事们也很满意(需要的评论),所以同事们这次又来坑我,看我没事做,让我制作一个头脑王者的外挂,我当时就在想这还不简单吗,直接获取分析发送过来的数据包,在伪造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. 安装Linux桌面后无法显示登录桌面

    安装完图形后无法显示图形界面,只有命令行模式界面 . 猜测原因可能跟电脑位有关,在BIOS中开启虚拟化技术, 电脑开启设置F2 /Security/Virtualization, 选择Enable. ...

  2. Nginx (二) Nginx的反向代理负载均衡以及日志切割

    Nginx是一个高并发,高性能的服务器,可以进行反向代理以及网站的负载均衡.这些功能的运用都在配置文件中,也就是Nginx安装目录下的conf/nginx.conf. nginx.conf 1. 先来 ...

  3. MySQL 单实例编译安装 以及多实例安装简介

    这是基本的安装教程,与牛逼的大神无关,或许是牛逼大神不用看就会安装吧. CentOS 6.5 Final  x86_64 一.预安装软件包 1.开发包组合安装 yum groupinstall &qu ...

  4. SpringBoot初步

    1.创建maven 项目 quickstart类型 2.pom.xml <project xmlns="http://maven.apache.org/POM/4.0.0" ...

  5. Handwritten Parsers & Lexers in Go (翻译)

    用go实现Parsers & Lexers 在当今网络应用和REST API的时代,编写解析器似乎是一种垂死的艺术.你可能会认为编写解析器是一个复杂的工作,只保留给编程语言设计师,但我想消除这 ...

  6. C# new关键字和对象类型转换(双括号、is操作符、as操作符)

    一.new关键字 CLR要求所有的对象都通过new来创建,代码如下: Object obj=new Object(); 以下是new操作符做的事情 1.计算类型及其所有基类型(一直到System.Ob ...

  7. mysql 的 fiter push down 优化

    出处:黑洞中的奇点 的博客 http://www.cnblogs.com/kelvin19840813/ 您的支持是对博主最大的鼓励,感谢您的认真阅读.本文版权归作者所有,欢迎转载,但请保留该声明. ...

  8. python实现散列表的链表法

    在散列中,链接法是一种最简单的碰撞解决技术,这种方法的原理就是把散列到同一槽中的所有元素 都放在一个链表中. 链接法有两个定理,定理一: 在简单一致散列的假设下,一次不成功查找的期望时间为O(1 + ...

  9. Spark入门,概述,部署,以及学习(Spark是一种快速、通用、可扩展的大数据分析引擎)

    1:Spark的官方网址:http://spark.apache.org/ Spark生态系统已经发展成为一个包含多个子项目的集合,其中包含SparkSQL.Spark Streaming.Graph ...

  10. jQuery Mobile Slider 禁用点击事件

    阿子原创,转载请注明出处. 在使用jQuery Mobile Slider时,发现在页面上下拖动时,很容易不小心触发Slider的点击事件,从而造成误操作.为此需要禁用Slider的点击事件. 官方A ...