霸哥及MySign去除簽名驗證

一、霸哥 

1.使用jadx-gui反編譯源碼

 

2. 啓動閃退正常都是在啓動類中做了簽名校驗,我們直接在MainActivity的OnCreate中看源碼(通過Android Killer中可知MainActivity爲啓動類)

(1) 

 

(2) 

 

4.霸哥的代碼量不多,很容易看出是在哪裏做的簽名校驗,將這兩處比較可以的代碼在smali中給他註釋掉 

(1) 

(2) 

 

5.重寫打包簽名後,進行安裝,但還是會閃退,推測so層可能也有校驗 ,使用IDA打開so安裝包裏的so文件

6. 在方法列表中,很直白的,getSignHashCode這個方法名非常有可能是簽名校驗的方法,直接進入方法,並F5查看源碼

 

7.可以看到,此處校驗有一個退出的命令,那麼我們就想辦法不讓他退出

(1) 

 

(2) 

(3) 

 

(4) 

 

(5) 切換16進制編碼處同步

 

(6) 在16進制視圖中,將exit用 00 00 00 00給去掉

 

8.打包簽名重寫安裝,完成! 

 

二、MySign

1.同上一樣,在jadx-gui中打開apk

 

2.此時就是尋找可能是簽名校驗的代碼 

(1) 

(2) 

(3) 

(4) 

(5) 

3.在Android Killer中找到對應的smali代碼,將其註釋掉

(1) 

(2)

(3)

(4)

(5) 

 

完成 

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