前言
轉(zhuǎn)自:https://segmentfault.com/a/1190000042460135
本文章分享一下最近研究閑魚app商品數(shù)據(jù)采集贯被。
技術(shù)棧
- Python
- Frida
- JADX
- Objection
- Android Studio
思路
- 使用Android Studio創(chuàng)建x86模擬器并運(yùn)行麻养,安裝閑魚和frida
- 使用Objection hook URL類卵贱,打印調(diào)用棧分析出關(guān)鍵函數(shù)
- 使用JADX打開APK分析關(guān)鍵函數(shù)的參數(shù)
- 使用firda構(gòu)造參數(shù)調(diào)用關(guān)鍵函數(shù)
- python獲取來自frida腳本的回調(diào)寫入es數(shù)據(jù)庫卦尊,按照小時分片
- 暴露接口實現(xiàn)任意關(guān)鍵詞的實時查詢
效果
可以看出閑魚每秒大概有30-40條新數(shù)據(jù)產(chǎn)生,我們的請求速度為每5s一次,刷新速度甚至低于人工操作app時候的頻率,不會對服務(wù)器造成任何影響,我們把他們寫入我們自己的數(shù)據(jù)庫离钝,便可以實現(xiàn)實時分析。
總結(jié)
- 通過這次實驗褪储,我學(xué)會了使用frida去獲取app的數(shù)據(jù)卵渴,不需要破壞app本身的任何東西,也不需要進(jìn)行http抓包鲤竹,直接hook函數(shù)即可實現(xiàn)浪读,非常友好
- 從技術(shù)角度講,這樣的思路可以搞定一切app辛藻。