某手 v8.x 簽名計(jì)算方法(一) 先從抓包說起

一、目標(biāo)

某手早就搞過好幾次了,不過人家努力,幾天小版本,幾周大版本,一不留神就看不懂了,這不升級(jí)到 8.x 之后,包都抓不到了。藍(lán)瘦香菇。

TIP: 新鮮熱乎的 8.3.30.17506

二、步驟

先從okhttp3搞起

Charles就不用祭出來了,象征性的抓了幾個(gè)無關(guān)痛癢的數(shù)據(jù)。看不到熱門數(shù)據(jù)包不好玩。我們先從okhttp3入手,從jadx里看okhttp3還是沒有被放棄的。

使用okhttp3發(fā)送一個(gè)請(qǐng)求,大概如下兩步:

Call call = new OkHttpClient().newCall(new Request.Builder().build());
Response response=call.execute();

那我們就先hook newCall

var OkHttpClient = Java.use("okhttp3.OkHttpClient");
OkHttpClient.newCall.implementation = function (request) {
    var result = this.newCall(request);
    console.log(request.toString());
    return result;
};

太棒了,Request數(shù)據(jù)打印出來了, 那Response數(shù)據(jù)我也要,hook execute

Override // okhttp3.Call.Factory
    public Call newCall(C16082Request request) {
        return RealCall.newRealCall(this, request, false);
    }

從jadx的代碼里看 newCall 返回的是 RealCall對(duì)象,所以我們也要hook RealCall的execute

var OkHttpRealCall = Java.use("okhttp3.RealCall");
OkHttpRealCall.execute.implementation = function(){
        var result = this.execute();            
        console.log(result.toString());
        return result;
}       
rc1.png

通訊協(xié)議是 QUIC,怪不得Charles搞不定。不過這個(gè)抓包結(jié)果怎么看怎么不開心,發(fā)送過去的數(shù)據(jù)也看不到,接收回來的數(shù)據(jù)也看不到。脫了一半讓人更著急。

OkHttpLogger-Frida

開始介紹新朋友了, https://github.com/siyujie/OkHttpLogger-Frida 用了一堆神奇的方法達(dá)到了命令行版的Charles的效果。

首先將 okhttpfind.dex 拷貝到 /data/local/tmp/

然后 frida -U -l okhttp_poker.js -f com.example.demo --no-pause 就可以跑起來了。

rcall.png

這個(gè)效果還不錯(cuò),感覺又回到了Charles的美好時(shí)光。

過濾url

美好的時(shí)光總是短暫的,刷了一會(huì),App就提示網(wǎng)絡(luò)無法訪問。難道還有什么坑?

先把返回值數(shù)據(jù)的打印屏蔽掉。這怎么玩都不會(huì)提示了。奮飛懷疑,在取熱門數(shù)據(jù)數(shù)據(jù)包的時(shí)候,由于數(shù)據(jù)比較大,所以我們打印出來比較費(fèi)時(shí),可能就會(huì)導(dǎo)致訪問超時(shí)。

還好作者提供了一個(gè) filterUrl 函數(shù),可以指定打印你需要分析的url,這樣可以防止再產(chǎn)生超時(shí)的問題。

三、總結(jié)

打工人還是很苦逼呀,升級(jí)這么快,不搞點(diǎn)新花樣都沒法好好抓包了。

end.jpeg

不要和我談夢(mèng)想,我打工就是為了錢

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容