微信小程序如何反編譯,如何獲取線上任何微信小程序源碼

原文地址:https://www.yii666.com/learning/developers/19.html

準備工作


  1. 下載並安裝 nodejs,本次版本爲 v6.10.0

  2. 下載 反編譯腳本 下載地址:https://github.com/qwerty472123/wxappUnpacker

  3. 安裝安卓模擬器,夜神模擬器

  4. 下載 RE管理器

  5. 桌面新建文件夾 wxpack 用戶本次說明用

  6. 本次案例使用命令行工具 Git,可自行用自己喜歡的命令行工具,如:cmd

  7. 便捷下載地址:https://pan.baidu.com/s/10DNFx0Vq0iivsZjdlJrjrA  提取碼:88lb

 

第一步


通過命令工具進入到新建文件 wxpack,如下圖所示,並附帶這次案例的軟件版本

微信小程序如何反編譯,獲取線上任何微信小程序源碼-1

檢測模擬器是否已經開啓 ROOT

微信小程序如何反編譯,獲取線上任何微信小程序源碼-2

安裝 RE管理器 

image.png

至此,所需要的東西已經安裝完了。

 

 

第二步


登陸微信後,打開小程序,在以下路徑會生成  .wxapkg 文件

RE管理器 路徑爲: /data/data/com.tencent.mm/MicroMsg/appbrand/{{32位的文件夾}}/,如下圖所示:

image.png

然後我們返回上一層目錄,把 pkg 目錄打包,併發送到我們的電腦。

image.png

並解壓到以下目錄:

 

 

第三步,反編譯開始


把 反編譯腳本 放進創建的文件夾 wxpack 裏面:

image.png

接着運行以下命令:

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

開始反編譯,執行:

node ./wuWxapkg.js ./data/_1123949441_213.wxapkg 【錯誤的】,請看注意內容
node ./wuWxapkg.js ./data/_547556184_15.wxapkg

注:

1、微信小程序的包和依賴包的後綴都是.wxapkg,真正的小程序包大小1M左右,而依賴包大小2、3M甚至更多。

2、不通的命令行工具,可能斜槓的方式不一樣

3、如果出現錯誤   Error: Cannot find module 'escodegen' ,請執行以下代碼後,再次運行:

npm i --save-dev escodegen

4、繼續運行還是出現錯誤  Error: This package is unrecognizable.

    原因:

     微信小程序的包和依賴包的後綴都是.wxapkg,真正的小程序包大小1M左右,而依賴包大小2、3M甚至更多。反編譯.wxapkg依賴包會報錯: Error: This Package is unrecognizable, please decrypted every type of file by hand.反編譯錯誤的包返回結果:鏈接:https://www.jianshu.com/p/511925d51b1e

 

正確源碼包的返回結果:

image.png

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章