逆向工程 實(shí)踐篇

<div align =center>Android逆向工程 實(shí)踐篇</div>

上篇給大家介紹的是基礎(chǔ)+小Demo實(shí)踐. 如果沒有看過的同學(xué)可以進(jìn)去看看.(<a href="http://www.lxweimin.com/p/b475a621abae">逆向工程 初篇</a>)<p>
本篇主要給大家介紹如何反編譯后修改源碼, 并打包運(yùn)行在手機(jī)上.

先介紹下本篇文章用到的工具和資源.

1: Android Killer 1.3.1.0 (工具)

2: crackme.apk

還沒有破解之前會(huì)提示隨意輸入用戶名密碼會(huì)提示下面的信息.



下面我們來(lái)打開apk, 看看源碼是怎么回事.

我先用工具(Android Killer) 打開creckme.apk



這個(gè)是項(xiàng)目概要. 我們主要看的就是MainActivity 這個(gè)類, 其它的不看也沒什么關(guān)系. 如果有耐心和興趣的,朋友可以去看看MainActivity里面具體寫了什么, 判斷機(jī)制是什么.

破解步驟:

1: 點(diǎn)擊注冊(cè)按鈕后,彈出的toast 信息,這里可以分析出來(lái),是什么條件觸發(fā),使程序彈出toas. [關(guān)鍵詞搜索]

2: 這個(gè)程序,就上面那一步已經(jīng)足夠破解了.

<h3> 下面打開MainActivity看看具體邏輯.</h3>

如果看不懂smali可以使用



下面我們找到程序入口 onCread 方法. 為什么要早這個(gè)入口呢? 我們要在這里找到初始化控件的函數(shù),對(duì)于這個(gè)程序來(lái)說(shuō), 只有一個(gè)Buttong(按鈕)比較容易找到,我們可以在onCread里面找到Button的監(jiān)聽(setOnClickListener)




中間是有幾句代碼沒有截圖.

接下來(lái)是重點(diǎn), 大家看到 我前面提到了的方法, setOnClickListener 沒有?? 這里就是一個(gè)點(diǎn)擊事件, 但是這里沒有發(fā)現(xiàn)Toast 相關(guān)的信息. 這個(gè)MainActivity.smali都沒有發(fā)現(xiàn). 難道搞錯(cuò)了??. 同志,別灰心, 看看項(xiàng)目列表,是不是還有一個(gè)MainActivity$1.smali, 這個(gè)是一個(gè)內(nèi)部類,我們打開這個(gè)smali可以看到有一個(gè)onClick方法, 這里就是在點(diǎn)擊onClick后,觸發(fā)的地方.那么我們要具體的看看里面的邏輯.



getText()方法代表是得到我們輸入的內(nèi)容. trim()方法代表去除多余的空格.


if-nez v0, :cond_0 條件判斷語(yǔ)句, 當(dāng)滿足某些條件之后會(huì)做什么.

const v0, 0x1 定義一個(gè)整形4字節(jié)的局部變量v0 它的值是1. 假如條件瞞足,也就是v0!=0 會(huì)跳轉(zhuǎn)到 :cond_0 執(zhí)行另一段代碼. 假如我們修改一下v0 的值,那么他就不會(huì)跳轉(zhuǎn)到 :cond_0的里面. 也就是破解成功.const v0, 0x0 這樣就可以讓程序彈出 注冊(cè)成功的Toast.
程序到這里已經(jīng)破解完成了. 感覺步驟很繁瑣...

下面教大家一個(gè)簡(jiǎn)單一點(diǎn)的方法.一分鐘左右就可以搞定.

大家看到第一張圖片, 程序提示: 無(wú)效用戶名或注冊(cè)碼 這個(gè)是最直接的破解信息.我們可以在程序里面搜索下這個(gè)關(guān)鍵詞.<BR>



<h5>*搜索范圍記得換成整個(gè)項(xiàng)目</h5>
文本轉(zhuǎn)Unicode 后如果搜索不到,就轉(zhuǎn)回來(lái)搜索.




上面是我搜索的結(jié)果. 下一步搜索下 0x7f05000b 這個(gè)是unsuccessed的id,程序會(huì)通過這個(gè)id 來(lái)找到[無(wú)效用戶名或注冊(cè)碼]字符串.


我用箭頭標(biāo)出來(lái)的大家還熟悉嗎??? 就是上面我們改過的地方.這么容易就找到了.



<a >工具下載地址</a>

如果沒有找到,就自己去下載把. 我上傳了csdn, 沒有那么 快顯示出來(lái)的.
鏈接: http://pan.baidu.com/s/1hsunUcc 密碼: rfbn

<div align =center>大家新年快樂. 早日脫單!!</div>

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

推薦閱讀更多精彩內(nèi)容