androidAsync fridaManager 实现某宝 sgmain 70102 rpc 远程调用
僅供學(xué)習(xí)研究 。請勿用于非法用途,本人將不承擔(dān)任何法律責(zé)任。
前言
使用 AndroidAsync + FridaManager 實現(xiàn) frida 腳本持久化 rpc 遠程調(diào)用
 AndroidAsync 使用鏈接
 FridaManager 安裝教程
 最后實現(xiàn)某寶的 sgmain 70102 調(diào)用 taobao version == 10.2.5
安裝 fridaManager
下載百度網(wǎng)盤鏈接里的文件 riru-fridamanager-1.0-release.zip | FridaManage.apk
 總結(jié)安裝就是
- 1、使用 Magisk 安裝 riru 模塊
- 2、使用 Magisk 從本地安裝 riru-fridamanager-1.0-release.zip
- 3、安裝 FridaManage.apk
最后重啟手機,完事
編譯 AndroidAsync
這個是一個 android 項目,需要打包成 jar 包,在轉(zhuǎn)成 dex 文件,frida 里才能很方便的使用
 博主 clone github 項目,編譯一直失敗,遇到各種問題最后也是沒有解決。
 最后是偷了個懶使用 android 項目,通過依賴去下載 AndroidAsync jar 包
 
這里添加依賴
重新加載,同步下配置文件,完成后打來這個目錄
 
找到依賴包,復(fù)制出里面的 classes.jar 文件
 使用 Android Sdk -> dx 命令,轉(zhuǎn)換
 這條命令在 $Android/sdk/build-tools/${sdk-version}/dx
 
執(zhí)行 dx --min-sdk-version=30 --dex --output dex文件路徑 classes.jar文件路徑
 完成后就可以看到生成了 androidAsync.dex 文件,執(zhí)行 adb push androidAsync.dex /data/local/tmp
frida 腳本編寫
function main() {// 加載 dex 文件Java.openClassFile('/data/local/tmp/androidAsync-2.2.1.dex').load();const HttpServerRequestCallback = Java.use('com.koushikdutta.async.http.server.HttpServerRequestCallback');// 構(gòu)建一個默認請求const RequestTestCallback = Java.registerClass({name: "RequestTestCallback",implements: [HttpServerRequestCallback],methods: {onRequest: function (request, response) {// 主動調(diào)用代碼直接寫這里response.send(JSON.stringify({"code": 0,"message": " 服務(wù)已經(jīng)注冊成功, 默認端口8181"}));}}});try {const AsyncHttpServer = Java.use('com.koushikdutta.async.http.server.AsyncHttpServer');const androidAsync = AsyncHttpServer.$new();// 新增路由androidAsync.get('/', RequestTestCallback.$new());androidAsync.listen(8181);console.log('reg webServer Ok');} catch (e) {console.error('reg webServer Error!!!, e:' + e);} }Java.perform(function () {const Application = Java.use('android.app.Application');Application.attach.implementation = function () {main();this.attach.apply(this, arguments);} });以上就是一個 androidAsync Demo 代碼,保存先使用 frida -U -f com.example.appdemo -l a.js --no-pause 啟動 frida 腳本
 
執(zhí)行后,輸出了服務(wù)啟動成功的 log
 
然后請求 手機 ip:8181 端口,正常返回結(jié)果,到這環(huán)境就搭建成功了
call sgmain 70102
參照上面的 RequestTestCallback 類,再添加一個
 
上圖,添加了新增了一個 post 請求
 執(zhí)行 adb push a.js /sdcard/fridascript 把腳本,push 到手機里,稍后通過 fridaManager 持久化
frida manager
左邊選中目標 app 右邊選擇 frida 腳本
 選擇完成后,重啟手機,打開淘寶 app
 
打開后,先通過 adb shell 執(zhí)行 curl http://127.0.0.1:8181/ 查看,是否成功
 
在寫個 requests.post 請求,結(jié)果正常返回結(jié)果
更多精彩內(nèi)容,源碼文件下載等,原文鏈接,博主個人站點:http://www.qinless.com/134
總結(jié)
以上是生活随笔為你收集整理的androidAsync fridaManager 实现某宝 sgmain 70102 rpc 远程调用的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
 
                            
                        - 上一篇: 某宝详情V2
- 下一篇: CSDN学习神器——CSDN浏览器助手测
