免責聲明
以下內容僅用於逆向學習和技術驗證
硬件准備
參考:https://github.com/Youlor/Youpk
目前 Youpk 只支持 pixel 1代。所以必須需要 pixel 1代手機,而且需要刷入對應的系統。

這個淘寶就能解決,感謝萬能的淘寶。
使用 ADB鏈接 pixel 手機
參考:
Mac ADB 使用
使用 adb 安裝輕奢 APP
adb install qingshe.apk
使用Youpk 脫殼
- 配置包名
- 啟動 APP
- 從手機中提取數據
- 使用 dex2jar 導出jar 包
- 使用 jd-gui 查看 jar 包
配置包名
使用 adb 連接手機后輸入以下命令生產配置文件
unpacker.config
adb shell
"echo com.unclegroup.app >> /data/local/tmp/unpacker.config"
com.unclegroup.app 就是輕奢的包名。
配置后,可以在shell 中看到。

啟動 APP
配置完成后,在 P1 手機上正常啟動 輕奢app 和平常一樣。只需要等待 10s 以上。備注:有些 app 可能會散退。不過不影響。

從手機中提取數據
查看是否已經脫殼了。
在路徑:/data/data/com.unclegroup.app/unpacker com.unclegroup.app 是之前配置的包名。

下面會生成三個文件。
進入 dex 文件夾就是下面的內容。脫殼后的 dex 文件。

_data_app_com.unclegroup.app-1_base.apk_6899100.dex
_data_data_com.unclegroup.app_.jiagu_classes.dex_5981752.dex
_data_data_com.unclegroup.app_.jiagu_classes.dex_classes2.dex_6765160.dex
_data_data_com.unclegroup.app_.jiagu_classes.dex_classes3.dex_413272.dex
一般帶有 base.apk 的就是殼代碼。
這個 app 使用 360 加固的。解密后就可以看到 360 的內容。
手機中提取數據
使用 adb 從 手機中提取代碼。
我這里把整個 unpacker 文件夾都提取到 mac 中。
# 手機中的路徑 mac 中的路徑
adb pull /data/data/com.unclegroup.app/unpacker/ unpacker
使用 dex2jar 導出 jar 包
dex2jar 安裝請參考
frida 和 dexdump 脫殼 app

./d2j-dex2jar.sh _data_data_com.unclegroup.app_.jiagu_classes.dex_classes2.dex_6765160.dex
將 上面的四個 dex 復制到 dex2jar 文件夾下面。
然后使用命令進行轉換,轉換后得到 jar 文件。
使用 jd-gui 查看 jar 包
上面說過,輕奢是使用 360 加固的。下面進行驗證。
使用 jd-gui 打開轉換后的 _data_app_com.unclegroup.app-1_base.apk_6899100-dex2jar.jar 文件。

真正的 APP 源碼在 6765160 這個 jar 文件中

脫殼后拿到源碼可以干啥呢?
- 使用 hook 破解 VIP,免費看各個小姐姐的微信。
- 這個 APP 是必須要充值才能給小姐姐發消息的,脫殼后,拿到源碼就可以模擬出這個操作了
- 這個 app 請求用戶列表還有用戶信息,是有簽名算法的。有源碼之后,輕松就能得到 md5 的算法了。
- 其他 等等。
其他參考:
破解某交(y)友(p)app的VIP&&半自動im機器人
https://cloud.tencent.com/developer/article/1671501
Youpk 愛加密脫殼 和 梆梆脫殼實戰
https://www.jianshu.com/p/07cbe154879b