三个关键步骤让你以获取任何人QQ小流程源代码!插图

现阶段应用程序不全力支持播映音乐创作或音频,请在QQ或其它应用程序中播映都选C音乐创作:澄海 – 都选C三个关键步骤让你以获取任何人QQ小流程源代码!插图1三个关键步骤让你以获取任何人QQ小流程源代码!插图2

近在自学QQ小流程开发,三四个月自学留下来,很想两栖作战呵呵踩踩坑,只好品雅版了三个Lyft她们家的青桔电单车小流程的后端同时实现,操作过程不告而别,相差无几一周天数往后了,辨认出小流程的坑相比而言想像的要多的多!!在前述练手里,全然是Vellore的,看见咱上架的小流程的效用,纯靠推断,部份效用在挖空心思后能作出大体的同时实现,但很多技术细节,稳当全力以赴都未能作出。很想一窥源码,查阅到底,看一看小厂的后端天神们是怎样避免出现了小流程的各式各样残花的坑。

只好想不到以获取到小流程地示例,接着再对其展开LLVM还原成为源码,来做为自学参照。我腾讯了各式各样有关小流程地LLVM讲义,但觉得都不太适宜像我这种地算数阿宝,踩了挺多坑。在这儿把我再次精简好的,加速地以获取三个QQ小流程源码的形式纪录留下来。

1

单纯聊呵呵xxxxx.wxapkg

先来想想三个很单纯的问题,小流程的示例存放在哪

当然是在QQ的服务器上。

但在QQ服务器上,普通用户想要以获取到,肯定是十分困难的,有没有别的办法呢?

单纯思考呵呵我们使用小流程的场景会明白,当我们点开三个QQ小流程的时候,其实是QQ已经将它的从服务器上下载到了手机,接着再来运行的。

所以,虽然我们未能力从服务器上以获取到,但我们应该可以从手机本地找到到已经下载过的小流程示例

那么怎样才能在手机里找到小流程的示例包呢?

这儿只以安卓手机为例,毕竟穷逼不曾拥有过苹果手机

具体目录位置直接给出:

/data/data/com.tencent.mm/MicroMsg/{{一串32位的16进制字符串文件夹}}/appbrand/pkg/

在这个目录下,会辨认出一些xxxxxxx.wxapkg类型的文件,这些是QQ小流程的包

QQ小流程的格式是:.wxapkg

.wxapkg是三个二进制文件,有其自己的一套结构。

有关.wxapkg的详细内容可以参照lrdcq天神的博文:QQ小流程源码阅读笔记:http://lrdcq.com/me/read.php/66.htm

但这儿有个,想要进入到上面这个目录的话,用手机自带的文件管理器肯定是不行的,安卓或者iPhone都要要用到第三方的文件管理器,比如:RE文件管理器,并且安卓需要取得root权限,而苹果手机肯定是要越狱的,且iphone的越狱难度>>安卓以获取root,不管越狱还是root,这都太稳当,当然有能力的同学可以直接从手机上来操作,但这儿不推荐从真机上以获取。

2

准备材料

node.js运行环境

如果没有安装nodejs,请先安装呵呵

下载地址:nodejs.org/en/

LLVM的脚本

这儿提供三个Github上 qwerty472123 天神写的node.js版本的,当然也有其它版本的,这儿我只是单纯地用node.js版本举例

地址:github.com/qwerty472123/wxappUnpacker

安卓模拟器(要求自带root权限)

我使用的是夜神模拟器,用来以获取小流程示例

下载地址:www.yeshen.com

3

详细关键步骤:使用安卓模拟器以获取到.wxapkg文件

不用越狱,不用root,使用电脑端的安卓模拟器来以获取是三个非常单纯快捷且的以获取形式,具体关键步骤如下:

打开安装好的安卓模拟器,并在模拟器中安装QQ、QQ、RE管理器

QQ、QQ在模拟器自带的应用商店里搜索下载安装即可

RE管理器的下载地址:https://pan.baidu.com/s/1PPBx08rNutXxhlMMJbuTpQ

下载好后直接拖拽进打开的模拟器窗口会自动安装

设置呵呵模拟器

以我个人认为比较好用的夜神模拟器举例

首先到模拟器内部设置超级用户权限

三个关键步骤让你以获取任何人QQ小流程源代码!插图3三个关键步骤让你以获取任何人QQ小流程源代码!插图4

这些操作的目的都是为了能让RE管理器顺利的以获取到ROOT权限

接留下来在模拟器里打开QQ,接着在QQ中运行你想要以获取的下流程(这其实是让QQ把小流程的示例包从服务器下载到了本地了)

以我说的这款青桔电单车的小流程举例(希望Lyft的天神不会想打死我~)

在模拟器QQ中运行呵呵后,直接切回模拟器桌面运行RE应用程序来到目录:

/data/data/com.tencent.mm/MicroMsg/{{一串32位的16进制字符串文件夹}}/appbrand/pkg/

抵达了目的文件夹

三个关键步骤让你以获取任何人QQ小流程源代码!插图5

你会看见辨认出里面的一些.wxapkg后缀的文件,是它们没错啦,可以根据使用的天数来判断那个是你刚才从服务器下载过来的

一般小流程的文件不会太大,可以结合天数来判断,长按压缩所选文件,接着再将压缩好的包通过QQ发送到我的电脑

如果不展开压缩的话,是无法将这个文件通过QQ来发送的

三个关键步骤让你以获取任何人QQ小流程源代码!插图6

所以QQ的这个功能可以让我们很方便的拿到示例,而不必到电脑目录去找模拟器的文件目录。

解压。这种几步单纯操作,成功拿到了小流程的示例了。

4

使用LLVM脚本解包 wxapkg

到这儿你应该已经将LLVM脚本从github下载 或者 clone 到本地某个目录

打开nodejs命令窗口

cd 到你clone或者下载好的LLVM脚本目录下

在node命令窗口中依次安装如下依赖:

npm install esprima npm install css-tree npm install cssbeautify npm install vm2 npm install uglify-es

安装好依赖之后,是后一步了,LLVM .wxapkg 文件

在现阶段目录下输入

node wuWxapkg.js [-d] //files 就是你想要LLVM的文件名

例如:我有三个需要LLVM的文件_163200311_32.wxapkg已经解压到了D盘根目录下,那么输出命令

node .\wuWxapkg.js D:\_163200311_32.wxapkg

回车运行

三个关键步骤让你以获取任何人QQ小流程源代码!插图7

LLVM脚本能一步将.wxapkg 文件还原成为QQ开发者工具能够运行的示例,目录地址和你LLVM的文件地址是一样的

三个关键步骤让你以获取任何人QQ小流程源代码!插图8

接着在QQ开发者工具新增项目即可打开

三个关键步骤让你以获取任何人QQ小流程源代码!插图9三个关键步骤让你以获取任何人QQ小流程源代码!插图10

运行成功,源码以获取完成

5

以获取源码真的只需要两步

至此我们通过非常单纯的形式以获取到了三个想要的小流程示例,并对齐展开了LLVM还原成 以后想要再LLVM其它的小流程,非常加速,只需要两步即可完成

使用模拟器找到小流程.wxapkg文件

使用nodejs LLVM脚本将.wxapkg文件LLVM

使用此方法,绝大部份的小流程都能正常LLVM出,但也会有一些特殊的情况,具体可以查阅 qwerty472123 天神的readme文件

6

写在后面的话

.apk 之类的文件LLVM非常困难,而小流程竟可以如此轻松随意地被以获取到源码,根源在于小流程的开发团队并没有对小流程的执行文件展开有效的保护,也是加密,所以我们才能使用别人写好的脚本直接展开LLVM,其操作过程类似于解压。

前述上,小流程只是很单纯的将图片、js和json文件压在一起,而压制的操作过程是Wxml -> Html、 Wxml -> JS、Wxss -> Css,转换后文件二进制格式跟后缀名为wx二进制格式全然一致。

上架的源码能如此单纯的被以获取到,不得不说小流程的源码安全存在很大的隐患,这一点很多开发者应该也知道,所以辨认出很多小流程会将重要的js逻辑代码柔在三个js文件中,这种,即使被以获取了源码,也不是很容易读懂,但任然避免不了被窥视的问题。 小流程做为QQ生态内的新生力量,不仅被官方,也被很多开发者和内容创业者寄予厚望,处于对代码的安全性的考虑,这个漏洞迟早有会被修复(封掉)的。

所以这种这儿介绍的以获取小流程源码的方法,应该是不会太长久的。

作者:行无忌链接:https://juejin.im/post/5b0e431f51882515497d979f来源:掘金

作者个人主页: hx-dl.github.io

著作权归作者所有,转载请联系作者获得授权。

-END-

往期回顾

让你加速搞定机器自学的知识卡片!(一)

有了这十五款编程游戏,谁都可以学编程!(建议收藏)

干货 | 创业公司绝对不会告诉你她们在用的工具(合集)

几分钟理解卷积神经网络(二):神经网络的训练

几分钟理解卷积神经网络(一):空间变换

机器自学中的数学知识(二):微积分

机器自学中的数学知识(一):线性代数

手把手教你搭建谷歌TensorFlow深度自学开发环境!

零基础学爬虫(四):不规则分页的抓取和反爬虫应对方法

零基础学爬虫(三):抓取网页的多个元素

零基础学爬虫(二):几分钟完成你的个爬虫流程!

零基础学爬虫(一):不用编程抓取B站弹幕信息

QQ小流程:辰语网购助手

以获取更多编程自学干货,请关注我们的公众号辰语流程员自学笔记!

三个关键步骤让你以获取任何人QQ小流程源代码!插图11

作者 nasiapp

在线客服
官方客服
我们将24小时内回复。
12:01
您好,有任何疑问请与我们联系!

选择聊天工具: