逆向某口腔醫院app 寫搶號的小程序 記錄一下具體流程

整個小項目下來,涉及了app反編譯,http協議,JavaScript,fiddler等等的基礎小知識

在接到這個任務之後,我首先熟悉了一下流程.發現他是http協議的

馬上就打開fiddler打開端口用模擬器監測一下

一波操作之後發現他的登錄完全沒有加密,直接輸入賬號密碼 POST一下就可以登錄進去返回賬號臨時ID

以爲項目就此大功告成

在獲取搶號數據的時候發現不是這樣

每個請求都帶着不規律的 noticeStr,sign在cookie中

timestamp一看就知道是時間戳

其他訪問也沒有返回這兩個參數,是忽然有的

然後就想到會不會是APP內部有加密函數

這時候打開了androidkiller找到了訪問的接口鏈接,但是無論如何也搜不到noticeStr,sign這些關鍵字,我甚至換了個反編譯工具,升級了版本,也無濟於事

後來我看回來fiddler,發現在每次點擊之前,都會打開一個html,裏面有一段js

明明白白地寫到了這兩個參數生成的具體流程(參數拆分->隨機生成關鍵字->排序->再來個他們自己寫的MD5)..是我把他想得太複雜了

這時候就有兩個方法,一個是直接用自己的語言裏面選個js解析庫解析,我用的是python,試過js2py之類的庫,解析就要按秒算,這樣不划算,那就要把js轉換到py語言,這時候py有個庫我要推薦一下,jiphy點進去有使用教程.

轉換之後大概修改了一下.期間遇到的坑就不說了(js跟py位運算有一點不一樣)

搞定之後就可以自己生成簽名了,置入cookie,獲取成功

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章