溫馨提示×

溫馨提示×

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

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

MSC-2015移動安全挑戰(zhàn)賽 第一題

發(fā)布時間:2020-05-20 10:11:13 來源:網(wǎng)絡(luò) 閱讀:1034 作者:strawdog 欄目:安全技術(shù)

這是最簡單的題目,都在java層。

反編譯后看關(guān)鍵源代碼:

MSC-2015移動安全挑戰(zhàn)賽 第一題

由于對android程序不熟悉,完全忽略了android.util.Log.i函數(shù)。后來看了大牛的writeup,才知道onClick函數(shù)里面的3個android.util.Log.i用輸出日志信息的方式告訴了密碼本、密碼,以及猜測的結(jié)果。

我用的是標準的分析方法。跟進access$0函數(shù)。

密碼生成規(guī)則是

MSC-2015移動安全挑戰(zhàn)賽 第一題

這個代碼的意思就是將用戶的輸入轉(zhuǎn)成字節(jié)數(shù)組p4,以p4的每一個字節(jié)為索引,在密碼本p3中找出對應(yīng)的字符。這里需要注意的是p3是utf8編碼,中文對應(yīng)3個字節(jié)(一個字符),而ascii對應(yīng)1個字節(jié)。

密碼本和題目設(shè)置的密碼(winhex提?。?/p>

MSC-2015移動安全挑戰(zhàn)賽 第一題逆推用戶的輸入就是找passwd的每一個字在密碼本中的索引,輸出索引對應(yīng)的ascii值就可以了。

由于本人的python處理中文編碼不過關(guān),所以老老實實在winhex里面3個字節(jié)3個字節(jié)的搜索,手工計算了。

MSC-2015移動安全挑戰(zhàn)賽 第一題

因為utf8中文字符3個字節(jié),所以winhex里面的偏移要除以3.



附件:http://down.51cto.com/data/2365363
向AI問一下細節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI