亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Python如何逆向抓取APP數據

發布時間:2021-10-28 17:38:53 來源:億速云 閱讀:292 作者:iii 欄目:編程語言

本篇內容介紹了“Python如何逆向抓取APP數據”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!

所需設備和環境:

  • 設備:安卓手機

  • 抓包:

  • fiddler+xposed+JustTrustme

  • 查殼:ApkScan-PKID

  • 脫殼:frida-DEXDump

  • 反編譯:jadx-gui

  • hook:frida

抓包

手機安裝app,設置好代理,打開 fiddler 先來抓個包,發現這個 app 做了證書驗證,fiddler 開啟之后 app提示連接不到服務器

Python如何逆向抓取APP數據

那就是 app 做了 SSL pinning 證書驗證,解決這種問題一般都是安裝 xposed 框架,里面有一個 JustTrustme  模塊,它的原理就是hook,直接繞過證書驗證類,安裝方法大家百度吧。

之后再打開app,可以看到成功抓到了包:

Python如何逆向抓取APP數據

先簡單分析一下,可以看到請求體中 formdata 是密文,響應內容也是密文,這個請求和響應中有用信息非常少,甚至都不知道在 jadx-gui  里怎么搜索,請求體中 formdata 是以兩個等號結尾的,應該是個 base64 編碼,其他一概不知。。。

脫殼反編譯

那先來反編譯,在這之前,通常是先用查殼工具檢查一下 app 是否加固,打開 ApkScan-PKID ,把 app 拖入:

Python如何逆向抓取APP數據

可以看到這個 app 使用了 360 加固,真是層層設限啊!!這里使用frida-DEXDump來脫殼,可以到 github 上下載  frida-DEXDump 的源代碼,完成之后打開項目所在文件夾,在當前位置打開命令行運行以下命令:

python main.py

等待脫殼完成,可以看到當前項目中生成了一個對應文件夾,里面有很多dex文件:

Python如何逆向抓取APP數據

下面用 jadx-gui 打開 dex 文件,一般先從最大的文件開始依次搜索關鍵字,我們知道 java 中使用 base64 是有  BASE64Encoder 關鍵字的,因為抓包得到的信息非常少,在這里就只能搜索這個關鍵字了,搜到第四個dex中,得到了疑似加密處:

Python如何逆向抓取APP數據

可以看到是使用了一個 aes 加密,密鑰是固定的字符串。

Frida Hook

Java不太熟,分析不來,直接使用 frida 來寫一段 hook 代碼看一看 encrypt 函數入參和出參的內容:

Python如何逆向抓取APP數據

同時來抓包對比:

Python如何逆向抓取APP數據
Python如何逆向抓取APP數據

就得到了這里的請求 data 入參數據:

  • pageIndex:當前頁碼

  • pageSize:當前頁對應的數據條數

typeId 和 source 是固定的, 接下來再來 hook decrypt 函數,對比抓包和 hook 結果:

Python如何逆向抓取APP數據
Python如何逆向抓取APP數據

結果是一樣的,至此,我們逆向分析就完成了。

總結一下請求和響應過程,就是請求體中的 data 經過 encrypt 函數加密傳參,改變 pageIndex 就可以得到每頁數據,響應是經過  decrypt 函數加密顯示,那我們只需要在 python 中實現這個 aes 加密解密過程就行了,從反編譯的 java  代碼中可以看出密鑰是固定的:wxtdefgabcdawn12,沒有 iv 偏移。

請求

直接上代碼:

Python如何逆向抓取APP數據

運行代碼,成功拿到數據:

Python如何逆向抓取APP數據

“Python如何逆向抓取APP數據”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

靖江市| 农安县| 商城县| 治县。| 左贡县| 玛多县| 江津市| 甘孜县| 南城县| 庆城县| 灵川县| 镇坪县| 辉县市| 新乐市| 沂水县| 东乡| 利辛县| 衡阳县| 道真| 富锦市| 秭归县| 神木县| 乃东县| 玉门市| 虎林市| 兴城市| 双城市| 莲花县| 长春市| 铁力市| 安平县| 呼图壁县| 天镇县| 连山| 永福县| 公安县| 五家渠市| 衡东县| 汝阳县| 洛阳市| 堆龙德庆县|