中國(guó)移動(dòng)(10086)釣魚(yú)手機(jī)APP分析
0×01.釣魚(yú)短信
前幾天仿冒中國(guó)電信的釣魚(yú)程序,似乎風(fēng)風(fēng)火火,今天給大家分析一個(gè)中國(guó)移動(dòng)的釣魚(yú)程序。
首先通過(guò)冒充10086發(fā)送短信,引導(dǎo)進(jìn)入網(wǎng)站,進(jìn)去后除領(lǐng)取選項(xiàng)別的都不能點(diǎn),然后引導(dǎo)輸入關(guān)鍵信息,
頁(yè)面為用積分換取RMB的信息
(這張圖片來(lái)自吾愛(ài)破解)
此處選擇銀行卡,但可以填入任何錯(cuò)誤的信息,當(dāng)然很有可能部分用戶會(huì)填寫(xiě)真正的信息。
填寫(xiě)完儲(chǔ)蓄卡信息后,就會(huì)讓你下載apk,進(jìn)行激活。
#p#
0×02:安裝APK
在應(yīng)用中,無(wú)法刪除此軟件
在設(shè)備管理器里,可以看到軟件已經(jīng)激活了。
#p#
0×03:APP分析
1.首先看AndroidManifest.xml中定義了兩個(gè)receive:
1、***個(gè)用于監(jiān)聽(tīng)“android.app.action.DEVICE_ADMIN_ENABLED”,即監(jiān)聽(tīng)設(shè)備管理器激活狀況
2、第二個(gè)“android.provider.Telephony.SMS_RECEIVED”,即監(jiān)聽(tīng)收到的短信。
整個(gè)APK的結(jié)構(gòu)比較簡(jiǎn)單,只有兩個(gè)receive的程序
由于代碼不能用jd-gui打開(kāi),只能看smali了,MainActivity中沒(méi)有太多內(nèi)容,主要定義了手機(jī)號(hào)。
2. 監(jiān)聽(tīng)“android.app.action.DEVICE_ADMIN_ENABLED”的是FssAdmin.smali,其中存在兩個(gè)函數(shù)onDisabled和onEnabled
onDisabled函數(shù)的作用是“當(dāng)從設(shè)備管理器里面把單選框勾除時(shí),發(fā)送短信提示:軟件被取消激活;服務(wù)終止!”
onEnabled函數(shù)的作用是“當(dāng)從設(shè)備管理器里面勾上單選框時(shí),短信提示:
軟件打開(kāi)并激活成功;服務(wù)開(kāi)始!到期時(shí)間2015-10-1 00:00:00”
3.監(jiān)聽(tīng)“android.provider.Telephony.SMS_RECEIVED”的代碼是SmsReceive.smali,
關(guān)鍵代碼和注解如下
當(dāng)然還使用了abortBroadcast()來(lái)阻斷手機(jī)接收短信,因?yàn)樵贏ndroidManifes.xml中定義了程序的優(yōu)先級(jí)是1000,所以終止后,手機(jī)是不會(huì)收到短信的。
最終就是將短信發(fā)送出去了
現(xiàn)在,我們梳理下次釣魚(yú)程序的流程:
發(fā)送釣魚(yú)信息誘使手機(jī)用戶訪問(wèn)釣魚(yú)網(wǎng)站--->部分用戶貪便宜,填寫(xiě)了真正的銀行卡信息--->APK劫持發(fā)送到用戶手機(jī)上的短信--->黑客此時(shí)已經(jīng)擁有了賬號(hào)、密碼和手機(jī)驗(yàn)證碼,從而順利登錄網(wǎng)站。
總結(jié):地球太黑暗,到處都是黑客。大家保重!