某手app,sig加密參數

使用fiddler對某手app進行抓包,抓取到的請求結果如下:

其中,sig爲某手app的簽名校驗,使用jadx全局搜索sig,只發現一處調用。

使用xposed進行hook查看方法調用,發現map是請求url的參數, map2爲post請求參數。

a.b方法代碼爲:

sig加密邏輯大致如下:

1、把url中的參數放入map1中;
2、把表單中的參數放入map2中;
3、把map1和map2中的元素以key=value的形式放入arraylist中;

4、對arraylist進行排序;
5、把arraylist中的元素按順序拼接成一個字符串str;
6、把str轉成bytearray;
7、調用CPU.getClock(),傳入str計算簽名;

CPU.getClock()爲native層方法,使用ida進行加載,結果如下:

看了下sub_15bc的函數特徵,發現是md5加密。 至於salt值,開始想的是動態調試,但so中有反調試,搞了一會,頭疼。最後使用hook一下得到了salt值,salt值就不放了。

最後使用MD5(str + sign)生成的sig參數,使用jsoup進行請求,結果如下:

得到了想要的數據。

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