逆向专栏

贝店福利里面的萌宠游戏逆向

2019-06-23  本文已影响0人  超威蓝猫l

在android下的包路径为/data/data/com.tencent.mm/MicroMsg/{UserId}/appbrand/pkg/

如果包较多 可以先删除 再下载 排个序即可

https://github.com/qwerty472123/wxappUnpacker

然后在这个页面解包

需要先安装node 并且安装如下module

npm install esprima -g
npm install css-tree -g
npm install cssbeautify -g
npm install vm2 -g
npm install uglify-es -g
npm install js-beautify -g
npm install escodegen -g

设置代理

npm config set proxy=http://127.0.0.1:8087
npm config set registry=http://registry.npmjs.org
npm config set https-proxy http://server:port

运行反编译

node wuWxapkg.js C:\Users\xxx\Desktop\unpacker\ sft.wxapkg

出现vd_version_info is not defined
wuWxss.jss找到这个函数,替换成这个代码试试

function runOnce() {
        for (let name in runList) {
            // console.log(name, runList[name]);
            var start = `var window = window || {}; var __pageFrameStartTime__ = Date.now();    var __webviewId__;  var __wxAppCode__={};   var __mainPageFrameReady__ = function(){};  var __WXML_GLOBAL__={entrys:{},defines:{},modules:{},ops:[],wxs_nf_init:undefined,total_ops:0};     var __vd_version_info__=__vd_version_info__||{};     
            
            $gwx=function(path,global){
                if(typeof global === 'undefined') global={};if(typeof __WXML_GLOBAL__ === 'undefined') {__WXML_GLOBAL__={};
                }__WXML_GLOBAL__.modules = __WXML_GLOBAL__.modules || {};
            }`;
            runVM(name, start + " \r\n" + runList[name]);
        }
    }

然后导入到微信开发者平台即可
在右上角的详情里面可以不校验合法域名 webview域名 tls域名

如果要添加 点击右上角测试号 然后登陆进去添加即可
添加成功后 在ide右上角详情 域名信息中刷新一下即可

后面发现css出不来 换成下面这个工具解包这个就行
https://github.com/gudqs7/wxappUnpacker

发现不知道怎么动态改js代码,解包小程序也只能看看里面的逻辑
后来只能抓包

但是在android7.0以上,app可以设置只信任系统证书,所以在由root的前提下,我们将证书导入到系统目录下
证书hash值是sha1的值
系统证书的目录是:/system/etc/security/cacerts/
每个证书的命名规则为:<Certificate_Hash>.<Number>
证书的hash值可以由命令计算出来,在终端输入openssl x509 -subject_hash_old -in <Certificate_File>
但是我发现在windows8.1上要用openssl x509 -subject_hash -in <Certificate_File>这个命令
而且我发现只有charles可以用

最后发现,本地没有做什么校验,都是服务端做的。所以没能做啥加快游戏进程

上一篇 下一篇

猜你喜欢

热点阅读