溫馨提示×

溫馨提示×

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

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

MSC-2015移動安全挑戰賽 第二題

發布時間:2020-05-28 08:15:28 來源:網絡 閱讀:1357 作者:strawdog 欄目:移動開發

此題apk和so都沒有加殼,但是so里面的一個關鍵函數jolin是加密的,在so加載時解密。并且so加入了反調試技術。

由于我學習安卓的so調試是從比賽前3天開始的,也就會一個最最基本的。無法對抗反調試,一度想放棄這題。不過后來發現,這個反調試要到JNI_Onload函數退出后才觸發。所以在JNI_Onload入口處下斷點,添加watch,在4450這個地址(就是wojiushidaan這個字符串保存的地方)。F8一直走,看到這個地址的內容變化,就是答案了。

MSC-2015移動安全挑戰賽 第二題

securityCheck函數有價值的就是while循環,很明顯就是用戶輸入的字符串和628c這個間接應用地址上的字符串比較。(實際地址在4450)

MSC-2015移動安全挑戰賽 第二題

關鍵函數,如果F7進去,可以發現jolin解密后的代碼,這個函數用來解密出4450處的答案。

MSC-2015移動安全挑戰賽 第二題

hex view窗口可以看到4450地址內容的變化。

這題高手們有patch securityCheck函數的,利用__android_log_print輸出4450的內容。(這個是我需要繼續學習的——patch so)

還有是允許后dump出so,4450的地方就是答案了。


能做出這個題目純屬運氣,因為反調試設置的要等到Onload退出才觸發異常,而so的解碼已經在Onload里面完成了。只需要正確分析出securityCheck函數用于比較的字符串存放的地方。根本需要去關心解密函數是如何被解密出來的。


期待哪位大牛能詳細指點一下android的so里面所用到的反調試技術。

附件:http://down.51cto.com/data/2365374
向AI問一下細節

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

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女